diff options
Diffstat (limited to 'prototypes')
21 files changed, 229 insertions, 180 deletions
diff --git a/prototypes/bifrost/scripts/test-bifrost-deployment.sh b/prototypes/bifrost/scripts/bifrost-provision.sh index 83cf1cc1b..2814808f0 100755 --- a/prototypes/bifrost/scripts/test-bifrost-deployment.sh +++ b/prototypes/bifrost/scripts/bifrost-provision.sh @@ -7,42 +7,45 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## - set -eux set -o pipefail + export PYTHONUNBUFFERED=1 SCRIPT_HOME="$(cd "$(dirname "$0")" && pwd)" BIFROST_HOME=$SCRIPT_HOME/.. ANSIBLE_INSTALL_ROOT=${ANSIBLE_INSTALL_ROOT:-/opt/stack} +ANSIBLE_VERBOSITY=${ANSIBLE_VERBOSITY-"-vvvv"} ENABLE_VENV="false" USE_DHCP="false" USE_VENV="false" BUILD_IMAGE=true PROVISION_WAIT_TIMEOUT=${PROVISION_WAIT_TIMEOUT:-3600} -BAREMETAL_DATA_FILE=${BAREMETAL_DATA_FILE:-'/tmp/baremetal.json'} - -# Set defaults for ansible command-line options to drive the different -# tests. - -# NOTE(TheJulia/cinerama): The variables defined on the command line -# for the default and DHCP tests are to drive the use of Cirros as the -# deployed operating system, and as such sets the test user to cirros, -# and writes a debian style interfaces file out to the configuration -# drive as cirros does not support the network_info.json format file -# placed in the configuration drive. The "build image" test does not -# use cirros. - -TEST_VM_NUM_NODES=3 -export TEST_VM_NODE_NAMES="xcimaster controller00 compute00" -export VM_DOMAIN_TYPE="kvm" + +# Ensure the right inventory files is used based on branch +CURRENT_BIFROST_BRANCH=$(git rev-parse --abbrev-ref HEAD) +if [ $CURRENT_BIFROST_BRANCH = "master" ]; then + BAREMETAL_DATA_FILE=${BAREMETAL_DATA_FILE:-'/tmp/baremetal.json'} + INVENTORY_FILE_FORMAT="baremetal_json_file" +else + BAREMETAL_DATA_FILE=${BAREMETAL_DATA_FILE:-'/tmp/baremetal.csv'} + INVENTORY_FILE_FORMAT="baremetal_csv_file" +fi +export BIFROST_INVENTORY_SOURCE=$BAREMETAL_DATA_FILE + +# Default settings for VMs +export TEST_VM_NUM_NODES=${TEST_VM_NUM_NODES:-3} +export TEST_VM_NODE_NAMES=${TEST_VM_NODE_NAMES:-"xcimaster controller00 compute00"} +export VM_DOMAIN_TYPE=${VM_DOMAIN_TYPE:-kvm} export VM_CPU=${VM_CPU:-4} export VM_DISK=${VM_DISK:-100} +export VM_MEMORY_SIZE=${VM_MEMORY_SIZE:-8192} export VM_DISK_CACHE=${VM_DISK_CACHE:-unsafe} + +# Settings for bifrost TEST_PLAYBOOK="opnfv-virtual.yaml" USE_INSPECTOR=true USE_CIRROS=false TESTING_USER=root -VM_MEMORY_SIZE=${VM_MEMORY_SIZE:-8192} DOWNLOAD_IPA=true CREATE_IPA_IMAGE=false INSPECT_NODES=true @@ -50,27 +53,21 @@ INVENTORY_DHCP=false INVENTORY_DHCP_STATIC_IP=false WRITE_INTERFACES_FILE=true -# Set BIFROST_INVENTORY_SOURCE -export BIFROST_INVENTORY_SOURCE=/tmp/baremetal.json - -# settings for console access +# Settings for console access export DIB_DEV_USER_PWDLESS_SUDO=yes export DIB_DEV_USER_PASSWORD=devuser -# settings for distro: trusty/ubuntu-minimal, 7/centos7 +# Settings for distro: trusty/ubuntu-minimal, 7/centos7, 42.2/suse export DIB_OS_RELEASE=${DIB_OS_RELEASE:-trusty} export DIB_OS_ELEMENT=${DIB_OS_ELEMENT:-ubuntu-minimal} -# for centos 7: "vim,less,bridge-utils,iputils,rsyslog,curl" +# DIB OS packages export DIB_OS_PACKAGES=${DIB_OS_PACKAGES:-"vlan,vim,less,bridge-utils,language-pack-en,iputils-ping,rsyslog,curl"} # Additional dib elements export EXTRA_DIB_ELEMENTS=${EXTRA_DIB_ELEMENTS:-"openssh-server"} # Source Ansible -# NOTE(TheJulia): Ansible stable-1.9 source method tosses an error deep -# under the hood which -x will detect, so for this step, we need to suspend -# and then re-enable the feature. set +x +o nounset $SCRIPT_HOME/env-setup.sh source ${ANSIBLE_INSTALL_ROOT}/ansible/hacking/env-setup @@ -87,29 +84,29 @@ cd $BIFROST_HOME/playbooks # Syntax check of dynamic inventory test path for task in syntax-check list-tasks; do - ${ANSIBLE} -vvvv \ + ${ANSIBLE} ${ANSIBLE_VERBOSITY} \ -i inventory/localhost \ test-bifrost-create-vm.yaml \ --${task} - ${ANSIBLE} -vvvv \ + ${ANSIBLE} ${ANSIBLE_VERBOSITY} \ -i inventory/localhost \ ${TEST_PLAYBOOK} \ --${task} \ -e testing_user=${TESTING_USER} done -# Create the test VMS -${ANSIBLE} -vvvv \ +# Create the VMS +${ANSIBLE} ${ANSIBLE_VERBOSITY} \ -i inventory/localhost \ test-bifrost-create-vm.yaml \ -e test_vm_num_nodes=${TEST_VM_NUM_NODES} \ -e test_vm_memory_size=${VM_MEMORY_SIZE} \ -e enable_venv=${ENABLE_VENV} \ -e test_vm_domain_type=${VM_DOMAIN_TYPE} \ - -e baremetal_json_file=${BAREMETAL_DATA_FILE} + -e ${INVENTORY_FILE_FORMAT}=${BAREMETAL_DATA_FILE} -# Execute the installation and VM startup test. -${ANSIBLE} -vvvv \ +# Execute the installation and VM startup test +${ANSIBLE} ${ANSIBLE_VERBOSITY} \ -i inventory/bifrost_inventory.py \ ${TEST_PLAYBOOK} \ -e use_cirros=${USE_CIRROS} \ @@ -128,9 +125,9 @@ ${ANSIBLE} -vvvv \ EXITCODE=$? if [ $EXITCODE != 0 ]; then - echo "****************************" - echo "Test failed. See logs folder" - echo "****************************" + echo "************************************" + echo "Provisioning failed. See logs folder" + echo "************************************" fi exit $EXITCODE diff --git a/prototypes/bifrost/scripts/osa-bifrost-deployment.sh b/prototypes/bifrost/scripts/osa-bifrost-deployment.sh deleted file mode 100755 index fb66ae9e3..000000000 --- a/prototypes/bifrost/scripts/osa-bifrost-deployment.sh +++ /dev/null @@ -1,143 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2016 Ericsson AB and others. -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - -set -eux -set -o pipefail -export PYTHONUNBUFFERED=1 -SCRIPT_HOME="$(cd "$(dirname "$0")" && pwd)" -BIFROST_HOME=$SCRIPT_HOME/.. -ANSIBLE_INSTALL_ROOT=${ANSIBLE_INSTALL_ROOT:-/opt/stack} -ENABLE_VENV="false" -USE_DHCP="false" -USE_VENV="false" -BUILD_IMAGE=true -PROVISION_WAIT_TIMEOUT=${PROVISION_WAIT_TIMEOUT:-3600} - -# ensure the right inventory files is used based on branch -CURRENT_BIFROST_BRANCH=$(git rev-parse --abbrev-ref HEAD) -if [ $CURRENT_BIFROST_BRANCH = "master" ]; then - export BIFROST_INVENTORY_SOURCE=${BIFROST_INVENTORY_SOURCE:-'/tmp/baremetal.json'} -else - export BIFROST_INVENTORY_SOURCE=${BIFROST_INVENTORY_SOURCE:-'/tmp/baremetal.csv'} -fi - -# Set defaults for ansible command-line options to drive the different -# tests. - -# NOTE(TheJulia/cinerama): The variables defined on the command line -# for the default and DHCP tests are to drive the use of Cirros as the -# deployed operating system, and as such sets the test user to cirros, -# and writes a debian style interfaces file out to the configuration -# drive as cirros does not support the network_info.json format file -# placed in the configuration drive. The "build image" test does not -# use cirros. - -TEST_VM_NUM_NODES=6 -export TEST_VM_NODE_NAMES="xcimaster controller00 controller01 controller02 compute00 compute01" -export VM_DOMAIN_TYPE="kvm" -# 8 vCPU, 60 GB HDD are minimum equipment -export VM_CPU=${VM_CPU:-8} -export VM_DISK=${VM_DISK:-100} -export VM_DISK_CACHE=${VM_DISK_CACHE:-unsafe} -TEST_PLAYBOOK="opnfv-virtual.yaml" -USE_INSPECTOR=true -USE_CIRROS=false -TESTING_USER=root -# seting the memory to 16 GB to make more easily success -# 8 GB RAM is minimum equipment, but it work with at least 12 GB. -VM_MEMORY_SIZE=${VM_MEMORY_SIZE:-16384} -DOWNLOAD_IPA=true -CREATE_IPA_IMAGE=false -INSPECT_NODES=true -INVENTORY_DHCP=false -INVENTORY_DHCP_STATIC_IP=false -WRITE_INTERFACES_FILE=true - - -# settings for console access -export DIB_DEV_USER_PWDLESS_SUDO=yes -export DIB_DEV_USER_PASSWORD=devuser - -# settings for distro: trusty/ubuntu-minimal, 7/centos7 -export DIB_OS_RELEASE=${DIB_OS_RELEASE:-xenial} -export DIB_OS_ELEMENT=${DIB_OS_ELEMENT:-ubuntu-minimal} - -# for centos 7: "vim,less,bridge-utils,iputils,rsyslog,curl" -export DIB_OS_PACKAGES=${DIB_OS_PACKAGES:-"vlan,vim,less,bridge-utils,sudo,language-pack-en,iputils-ping,rsyslog,curl,python,debootstrap,ifenslave,ifenslave-2.6,lsof,lvm2,tcpdump,nfs-kernel-server,chrony"} - -# Additional dib elements -export EXTRA_DIB_ELEMENTS=${EXTRA_DIB_ELEMENTS:-"openssh-server"} - -# Source Ansible -# NOTE(TheJulia): Ansible stable-1.9 source method tosses an error deep -# under the hood which -x will detect, so for this step, we need to suspend -# and then re-enable the feature. -set +x +o nounset -$SCRIPT_HOME/env-setup.sh -source ${ANSIBLE_INSTALL_ROOT}/ansible/hacking/env-setup -ANSIBLE=$(which ansible-playbook) -set -x -o nounset - -logs_on_exit() { - $SCRIPT_HOME/collect-test-info.sh -} -trap logs_on_exit EXIT - -# Change working directory -cd $BIFROST_HOME/playbooks - -# Syntax check of dynamic inventory test path -for task in syntax-check list-tasks; do - ${ANSIBLE} \ - -i inventory/localhost \ - test-bifrost-create-vm.yaml \ - --${task} - ${ANSIBLE} \ - -i inventory/localhost \ - ${TEST_PLAYBOOK} \ - --${task} \ - -e testing_user=${TESTING_USER} -done - -# Create the test VMS -${ANSIBLE} \ - -i inventory/localhost \ - test-bifrost-create-vm.yaml \ - -e test_vm_num_nodes=${TEST_VM_NUM_NODES} \ - -e test_vm_memory_size=${VM_MEMORY_SIZE} \ - -e enable_venv=${ENABLE_VENV} \ - -e test_vm_domain_type=${VM_DOMAIN_TYPE} - -# Execute the installation and VM startup test. -${ANSIBLE} \ - -i inventory/bifrost_inventory.py \ - ${TEST_PLAYBOOK} \ - -e use_cirros=${USE_CIRROS} \ - -e testing_user=${TESTING_USER} \ - -e test_vm_num_nodes=${TEST_VM_NUM_NODES} \ - -e inventory_dhcp=${INVENTORY_DHCP} \ - -e inventory_dhcp_static_ip=${INVENTORY_DHCP_STATIC_IP} \ - -e enable_venv=${ENABLE_VENV} \ - -e enable_inspector=${USE_INSPECTOR} \ - -e inspect_nodes=${INSPECT_NODES} \ - -e download_ipa=${DOWNLOAD_IPA} \ - -e create_ipa_image=${CREATE_IPA_IMAGE} \ - -e write_interfaces_file=${WRITE_INTERFACES_FILE} \ - -e ipv4_gateway=192.168.122.1 \ - -e wait_timeout=${PROVISION_WAIT_TIMEOUT} -EXITCODE=$? - -if [ $EXITCODE != 0 ]; then - echo "****************************" - echo "Test failed. See logs folder" - echo "****************************" -fi - -exit $EXITCODE diff --git a/prototypes/xci/config/pinned-versions b/prototypes/xci/config/pinned-versions new file mode 100755 index 000000000..c81fcc36b --- /dev/null +++ b/prototypes/xci/config/pinned-versions @@ -0,0 +1,26 @@ +#------------------------------------------------------------------------------- +# Pinned Component Versions +#------------------------------------------------------------------------------- +# You are free to override these versions in user-vars to experiment with +# different branches or with different commits but be aware that things might +# not work as expected. +# +# It is important to be consistent between branches you use for OpenStack +# projects OPNFV XCI uses. +# +# Examples: +# export OPENSTACK_BIFROST_VERSION="stable/ocata" +# export OPENSTACK_OSA_VERSION="stable/ocata" +# or +# export OPENSTACK_BIFROST_VERSION="master" +# export OPENSTACK_OSA_VERSION="master" +# or +# export OPENSTACK_BIFROST_VERSION="a87f7ce6c8725b3bbffec7b2efa1e466796848a9" +# export OPENSTACK_OSA_VERSION="4713cf45e11b4ebca9fbed25d1389854602213d8" +#------------------------------------------------------------------------------- +# use releng from master until the development work with the sandbox is complete +export OPNFV_RELENG_VERSION="master" +# HEAD of "stable/ocata" as of 24.03.2017 - verified by OPNFV CI +export OPENSTACK_BIFROST_VERSION="a87f7ce6c8725b3bbffec7b2efa1e466796848a9" +# HEAD of "stable/ocata" as of 24.03.2017 - verified by OPNFV CI +export OPENSTACK_OSA_VERSION="4713cf45e11b4ebca9fbed25d1389854602213d8" diff --git a/prototypes/xci/config/user-vars b/prototypes/xci/config/user-vars new file mode 100755 index 000000000..bb2bfe1d3 --- /dev/null +++ b/prototypes/xci/config/user-vars @@ -0,0 +1,44 @@ +#------------------------------------------------------------------------------- +# Set Paths to where git repositories of XCI Components will be cloned +#------------------------------------------------------------------------------- +# OPNFV XCI Sandbox is not verified to be used as non-root user as of yet so +# changing these paths might break things. +#------------------------------------------------------------------------------- +export OPNFV_RELENG_PATH=/opt/releng +export OPENSTACK_BIFROST_PATH=/opt/bifrost +export OPENSTACK_OSA_PATH=/opt/openstack-ansible + +#------------------------------------------------------------------------------- +# Set Deployment Flavor +#------------------------------------------------------------------------------- +# OPNFV XCI currently supports 4 different types of flavors: +# - all in one (aio) - xci-aio.sh: 1 VM which acts as controller and compute node +# - mini opnfv: 3 VMs, 1 xcimaster, 1 controller, and 1 compute nodes +# - noha: 4 VMs, 1 xcimaster, 1 controller, and 2 compute nodes +# - ha: 6 VMs, 1 xcimaster, 3 controllers, and 2 compute nodes +# +# Apart from having different number of nodes, CPU, RAM, and disk allocations +# also differ from each other. Please take a look at the env-vars files for +# each of these flavors. +# +# Examples: +# export XCI_FLAVOR="xci-aio" +# or +# export XCI_FLAVOR="xci-mini" +# or +# export XCI_FLAVOR="xci-noha" +# or +# export XCI_FLAVOR="xci-ha" +#------------------------------------------------------------------------------- +export XCI_FLAVOR=${XCI_FLAVOR:-xci-mini} + +#------------------------------------------------------------------------------- +# Configure some other stuff +#------------------------------------------------------------------------------- +# Set the verbosity for ansible +# +# Examples: +# ANSIBLE_VERBOSITY="-v" +# or +# ANSIBLE_VERBOSITY="-vvvv" +export ANSIBLE_VERBOSITY=${ANSIBLE_VERBOSITY:-""} diff --git a/prototypes/xci/file/configure-xci-aio.yml b/prototypes/xci/file/configure-xci-aio.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/configure-xci-aio.yml diff --git a/prototypes/xci/file/configure-xci-ha.yml b/prototypes/xci/file/configure-xci-ha.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/configure-xci-ha.yml diff --git a/prototypes/xci/file/configure-xci-mini.yml b/prototypes/xci/file/configure-xci-mini.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/configure-xci-mini.yml diff --git a/prototypes/xci/file/configure-xci-noha.yml b/prototypes/xci/file/configure-xci-noha.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/configure-xci-noha.yml diff --git a/prototypes/xci/file/xci-aio-inventory b/prototypes/xci/file/xci-aio-inventory new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/xci-aio-inventory diff --git a/prototypes/xci/file/xci-aio-vars.yml b/prototypes/xci/file/xci-aio-vars.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/xci-aio-vars.yml diff --git a/prototypes/xci/file/xci-ha-inventory b/prototypes/xci/file/xci-ha-inventory new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/xci-ha-inventory diff --git a/prototypes/xci/file/xci-ha-vars.yml b/prototypes/xci/file/xci-ha-vars.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/xci-ha-vars.yml diff --git a/prototypes/xci/file/xci-mini-inventory b/prototypes/xci/file/xci-mini-inventory new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/xci-mini-inventory diff --git a/prototypes/xci/file/xci-mini-vars.yml b/prototypes/xci/file/xci-mini-vars.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/xci-mini-vars.yml diff --git a/prototypes/xci/file/xci-noha-inventory b/prototypes/xci/file/xci-noha-inventory new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/xci-noha-inventory diff --git a/prototypes/xci/file/xci-noha-vars.yml b/prototypes/xci/file/xci-noha-vars.yml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/prototypes/xci/file/xci-noha-vars.yml diff --git a/prototypes/xci/flavors/xci-aio.sh b/prototypes/xci/flavors/xci-aio.sh new file mode 100644 index 000000000..9f9ea1be6 --- /dev/null +++ b/prototypes/xci/flavors/xci-aio.sh @@ -0,0 +1,27 @@ +#------------------------------------------------------------------------------- +# XCI Flavor Configuration +#------------------------------------------------------------------------------- +# This is the configuration for xci-aio. +# +# You are free to modify parts of the configuration to fit into your environment. +# But before doing that, please ensure you checked other flavors to see if one +# them can be used instead, saving you some time. +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# Configure VM Nodes +#------------------------------------------------------------------------------- +export TEST_VM_NUM_NODES=1 +export TEST_VM_NODE_NAMES=xciaio +export VM_DOMAIN_TYPE=kvm +export VM_CPU=8 +export VM_DISK=80 +export VM_MEMORY_SIZE=12288 +export VM_DISK_CACHE=unsafe + +#------------------------------------------------------------------------------- +# Ansible Files for the Flavor +#------------------------------------------------------------------------------- +XCI_ANSIBLE_PLAYBOOK=$OPNFV_RELENG_PATH/prototypes/xci/file/configure-xci-aio.yml +XCI_ANSIBLE_INVENTORY=$OPNFV_RELENG_PATH/prototypes/xci/file/xci-aio-inventory +XCI_ANSIBLE_VARS=$OPNFV_RELENG_PATH/prototypes/xci/file/xci-aio-vars.yml diff --git a/prototypes/xci/flavors/xci-ha.sh b/prototypes/xci/flavors/xci-ha.sh new file mode 100644 index 000000000..442432fea --- /dev/null +++ b/prototypes/xci/flavors/xci-ha.sh @@ -0,0 +1,27 @@ +#------------------------------------------------------------------------------- +# XCI Flavor Configuration +#------------------------------------------------------------------------------- +# This is the configuration for xci-aio. +# +# You are free to modify parts of the configuration to fit into your environment. +# But before doing that, please ensure you checked other flavors to see if one +# them can be used instead, saving you some time. +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# Configure VM Nodes +#------------------------------------------------------------------------------- +export TEST_VM_NUM_NODES=6 +export TEST_VM_NODE_NAMES="xcimaster controller00 controller01 controller02 compute00 compute01" +export VM_DOMAIN_TYPE=kvm +export VM_CPU=8 +export VM_DISK=100 +export VM_MEMORY_SIZE=16384 +export VM_DISK_CACHE=unsafe + +#------------------------------------------------------------------------------- +# Ansible Files for the Flavor +#------------------------------------------------------------------------------- +XCI_ANSIBLE_PLAYBOOK=$OPNFV_RELENG_PATH/prototypes/xci/file/configure-xci-ha.yml +XCI_ANSIBLE_INVENTORY=$OPNFV_RELENG_PATH/prototypes/xci/file/xci-ha-inventory +XCI_ANSIBLE_VARS=$OPNFV_RELENG_PATH/prototypes/xci/file/xci-ha-vars.yml diff --git a/prototypes/xci/flavors/xci-mini.sh b/prototypes/xci/flavors/xci-mini.sh new file mode 100644 index 000000000..11048f6be --- /dev/null +++ b/prototypes/xci/flavors/xci-mini.sh @@ -0,0 +1,27 @@ +#------------------------------------------------------------------------------- +# XCI Flavor Configuration +#------------------------------------------------------------------------------- +# This is the configuration for xci-aio. +# +# You are free to modify parts of the configuration to fit into your environment. +# But before doing that, please ensure you checked other flavors to see if one +# them can be used instead, saving you some time. +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# Configure VM Nodes +#------------------------------------------------------------------------------- +export TEST_VM_NUM_NODES=3 +export TEST_VM_NODE_NAMES="xcimaster controller00 compute00" +export VM_DOMAIN_TYPE=kvm +export VM_CPU=8 +export VM_DISK=100 +export VM_MEMORY_SIZE=12288 +export VM_DISK_CACHE=unsafe + +#------------------------------------------------------------------------------- +# Ansible Files for the Flavor +#------------------------------------------------------------------------------- +XCI_ANSIBLE_PLAYBOOK=$OPNFV_RELENG_PATH/prototypes/xci/file/configure-xci-mini.yml +XCI_ANSIBLE_INVENTORY=$OPNFV_RELENG_PATH/prototypes/xci/file/xci-mini-inventory +XCI_ANSIBLE_VARS=$OPNFV_RELENG_PATH/prototypes/xci/file/xci-mini-vars.yml diff --git a/prototypes/xci/flavors/xci-noha.sh b/prototypes/xci/flavors/xci-noha.sh new file mode 100644 index 000000000..6a83f9962 --- /dev/null +++ b/prototypes/xci/flavors/xci-noha.sh @@ -0,0 +1,27 @@ +#------------------------------------------------------------------------------- +# XCI Flavor Configuration +#------------------------------------------------------------------------------- +# This is the configuration for xci-aio. +# +# You are free to modify parts of the configuration to fit into your environment. +# But before doing that, please ensure you checked other flavors to see if one +# them can be used instead, saving you some time. +#------------------------------------------------------------------------------- + +#------------------------------------------------------------------------------- +# Configure VM Nodes +#------------------------------------------------------------------------------- +export TEST_VM_NUM_NODES=4 +export TEST_VM_NODE_NAMES="xcimaster controller00 compute00 compute01" +export VM_DOMAIN_TYPE=kvm +export VM_CPU=8 +export VM_DISK=100 +export VM_MEMORY_SIZE=12288 +export VM_DISK_CACHE=unsafe + +#------------------------------------------------------------------------------- +# Ansible Files for the Flavor +#------------------------------------------------------------------------------- +XCI_ANSIBLE_PLAYBOOK=$OPNFV_RELENG_PATH/prototypes/xci/file/configure-xci-mini.yml +XCI_ANSIBLE_INVENTORY=$OPNFV_RELENG_PATH/prototypes/xci/file/xci-mini-inventory +XCI_ANSIBLE_VARS=$OPNFV_RELENG_PATH/prototypes/xci/file/xci-mini-vars.yml diff --git a/prototypes/xci/xci-deploy.sh b/prototypes/xci/xci-deploy.sh new file mode 100755 index 000000000..34149f22f --- /dev/null +++ b/prototypes/xci/xci-deploy.sh @@ -0,0 +1,17 @@ +#!/bin/bash +set -o errexit +set -o nounset +set -o pipefail +set -o xtrace + +# find where are we +XCI_PATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +# source pinned versions +source $XCI_PATH/config/pinned-versions + +# source user vars +source $XCI_PATH/config/user-vars + +# source flavor configuration +source $XCI_PATH/flavors/$XCI_FLAVOR.sh |