From de26589a32a3a522cbeb52c1f82ec7e4f000cff3 Mon Sep 17 00:00:00 2001 From: Tim Rozet Date: Mon, 5 Dec 2016 14:55:44 -0500 Subject: Adds stripped down ODL CSIT deployment Introduces new (hidden) cli option to change composable env config. This parameter then will use the provided file, for example, csit-environment.yaml instead of the typical opnfv-environment.yaml. The effect is using less services required for ODL CSIT snapshots. Note: this will not work with perf options, but those are not required currently for ODL CSIT. CSIT also does not need ceph, so providing a new deploy option to allow disabling it. JIRA: APEX-362 Change-Id: If3833b1acceeb23ef9e12c90df6cc9607bd8c724 Signed-off-by: Tim Rozet --- build/csit-environment.yaml | 79 ++++++++++++++++++++++++++++++++++ build/undercloud.sh | 1 + ci/deploy.sh | 6 +++ config/deploy/os-odl_l3-csit-noha.yaml | 12 ++++++ lib/overcloud-deploy-functions.sh | 18 ++++---- lib/python/apex/deploy_settings.py | 3 +- lib/undercloud-functions.sh | 2 +- 7 files changed, 111 insertions(+), 10 deletions(-) create mode 100644 build/csit-environment.yaml create mode 100644 config/deploy/os-odl_l3-csit-noha.yaml diff --git a/build/csit-environment.yaml b/build/csit-environment.yaml new file mode 100644 index 00000000..0225cb24 --- /dev/null +++ b/build/csit-environment.yaml @@ -0,0 +1,79 @@ +#Environment file used to list common parameters required for all deployment +#types + +parameters: +# CloudDomain: + +parameter_defaults: + CeilometerStoreEvents: true + NeutronEnableForceMetadata: true + NeutronEnableDHCPMetadata: true + NeutronEnableIsolatedMetadata: true + OvercloudControlFlavor: control + OvercloudComputeFlavor: compute + controllerImage: overcloud-full + ExtraConfig: + tripleo::ringbuilder::build_ring: False + nova::nova_public_key: + type: 'ssh-rsa' + replace_public_key: + nova::nova_private_key: + type: 'ssh-rsa' + replace_private_key: + nova::policy::policies: + nova-os_compute_api:servers:show:host_status: + key: 'os_compute_api:servers:show:host_status' + value: 'rule:admin_or_owner' + ControllerServices: + - OS::TripleO::Services::CACerts + - OS::TripleO::Services::CinderApi + - OS::TripleO::Services::CinderBackup + - OS::TripleO::Services::CinderScheduler + - OS::TripleO::Services::CinderVolume + - OS::TripleO::Services::Core + - OS::TripleO::Services::Kernel + - OS::TripleO::Services::Keystone + - OS::TripleO::Services::GlanceApi + - OS::TripleO::Services::GlanceRegistry + - OS::TripleO::Services::MySQL + - OS::TripleO::Services::NeutronDhcpAgent + - OS::TripleO::Services::NeutronMetadataAgent + - OS::TripleO::Services::NeutronApi + - OS::TripleO::Services::NeutronCorePlugin + - OS::TripleO::Services::RabbitMQ + - OS::TripleO::Services::HAproxy + - OS::TripleO::Services::Keepalived + - OS::TripleO::Services::Memcached + - OS::TripleO::Services::Pacemaker + - OS::TripleO::Services::Redis + - OS::TripleO::Services::NovaConductor + - OS::TripleO::Services::MongoDb + - OS::TripleO::Services::NovaApi + - OS::TripleO::Services::NovaMetadata + - OS::TripleO::Services::NovaScheduler + - OS::TripleO::Services::NovaConsoleauth + - OS::TripleO::Services::NovaVncProxy + - OS::TripleO::Services::Ntp + - OS::TripleO::Services::Snmp + - OS::TripleO::Services::Timezone + - OS::TripleO::Services::Horizon + - OS::TripleO::Services::TripleoPackages + - OS::TripleO::Services::TripleoFirewall + - OS::TripleO::Services::OpenDaylightApi + - OS::TripleO::Services::OpenDaylightOvs + - OS::TripleO::Services::VipHosts + ComputeServices: + - OS::TripleO::Services::CACerts + - OS::TripleO::Services::Timezone + - OS::TripleO::Services::Ntp + - OS::TripleO::Services::Snmp + - OS::TripleO::Services::NovaCompute + - OS::TripleO::Services::NovaLibvirt + - OS::TripleO::Services::Kernel + - OS::TripleO::Services::ComputeNeutronCorePlugin + - OS::TripleO::Services::ComputeNeutronMetadataAgent + - OS::TripleO::Services::TripleoPackages + - OS::TripleO::Services::TripleoFirewall + - OS::TripleO::Services::NeutronSriovAgent + - OS::TripleO::Services::OpenDaylightOvs + - OS::TripleO::Services::VipHosts diff --git a/build/undercloud.sh b/build/undercloud.sh index b830f312..adf08eaf 100755 --- a/build/undercloud.sh +++ b/build/undercloud.sh @@ -51,6 +51,7 @@ LIBGUESTFS_BACKEND=direct virt-customize \ --run-command "yum update -y openwsman*" \ --run-command "cp /usr/share/instack-undercloud/undercloud.conf.sample /home/stack/undercloud.conf && chown stack:stack /home/stack/undercloud.conf" \ --upload ${BUILD_ROOT}/opnfv-environment.yaml:/home/stack/ \ + --upload ${BUILD_ROOT}/csit-environment.yaml:/home/stack/ \ --upload ${BUILD_ROOT}/virtual-environment.yaml:/home/stack/ \ --install "python2-congressclient" \ --run-command "sed -i '/SERVICE_LIST/a\\ \x27congress\x27: {\x27password_field\x27: \x27OVERCLOUD_CONGRESS_PASSWORD\x27},' /usr/lib/python2.7/site-packages/tripleoclient/constants.py" \ diff --git a/ci/deploy.sh b/ci/deploy.sh index f09529a7..fde62907 100755 --- a/ci/deploy.sh +++ b/ci/deploy.sh @@ -44,6 +44,7 @@ CONFIG=${CONFIG:-'/var/opt/opnfv'} RESOURCES=${RESOURCES:-"$CONFIG/images"} LIB=${LIB:-"$CONFIG/lib"} OPNFV_NETWORK_TYPES="admin tenant external storage api" +ENV_FILE="opnfv-environment.yaml" VM_CPUS=4 VM_RAM=8 @@ -120,6 +121,11 @@ parse_cmdline() { echo "Network Settings Configuration file: $2" shift 2 ;; + -e|--environment-file) + ENV_FILE=$2 + echo "Base OOO Environment file: $2" + shift 2 + ;; -p|--ping-site) ping_site=$2 echo "Using $2 as the ping site" diff --git a/config/deploy/os-odl_l3-csit-noha.yaml b/config/deploy/os-odl_l3-csit-noha.yaml new file mode 100644 index 00000000..ad61e26b --- /dev/null +++ b/config/deploy/os-odl_l3-csit-noha.yaml @@ -0,0 +1,12 @@ +global_params: + ha_enabled: false + +deploy_options: + sdn_controller: opendaylight + odl_version: boron + sdn_l3: true + tacker: false + congress: false + sfc: false + vpn: false + ceph: false diff --git a/lib/overcloud-deploy-functions.sh b/lib/overcloud-deploy-functions.sh index c8367c9f..169640fe 100755 --- a/lib/overcloud-deploy-functions.sh +++ b/lib/overcloud-deploy-functions.sh @@ -214,8 +214,10 @@ EOI DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/numa.yaml" fi - # make sure ceph is installed - DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml" + # check if ceph should be enabled + if [ "${deploy_options_array['ceph']}" == 'True' ]; then + DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml" + fi #DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml" DEPLOY_OPTIONS+=" -e network-environment.yaml" @@ -257,22 +259,22 @@ EOI DEPLOY_OPTIONS+=" -e virtual-environment.yaml" fi - DEPLOY_OPTIONS+=" -e opnfv-environment.yaml" + DEPLOY_OPTIONS+=" -e ${ENV_FILE}" echo -e "${blue}INFO: Deploy options set:\n${DEPLOY_OPTIONS}${reset}" ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" <