diff options
Diffstat (limited to 'ci')
-rw-r--r-- | ci/PR_revision.log | 1 | ||||
-rwxr-xr-x | ci/build.sh | 4 | ||||
-rwxr-xr-x | ci/deploy.sh | 34 |
3 files changed, 36 insertions, 3 deletions
diff --git a/ci/PR_revision.log b/ci/PR_revision.log index ea30648a..2dcbe81c 100644 --- a/ci/PR_revision.log +++ b/ci/PR_revision.log @@ -8,3 +8,4 @@ 23,Fix odl env files 25,Force metadata on all scenarios 26,Fixes ODL ML2 IP +30,Adds OVS DPDK config diff --git a/ci/build.sh b/ci/build.sh index dd9f9fd1..fd079c91 100755 --- a/ci/build.sh +++ b/ci/build.sh @@ -113,7 +113,9 @@ fi # Conditionally execute RPM build checks if the specs change and target is not rpm or iso if [[ "$MAKE_TARGETS" == "images" ]]; then commit_file_list=$(git show --pretty="format:" --name-only) - if [[ $commit_file_list == *build/Makefile* ]]; then + if git show -s | grep "force-build-rpms"; then + MAKE_TARGETS+=" rpms" + elif [[ $commit_file_list == *build/Makefile* ]]; then # Makefile forces all rpms to be checked MAKE_TARGETS+=" rpms-check" else diff --git a/ci/deploy.sh b/ci/deploy.sh index 05e2fa2b..6a5495c4 100755 --- a/ci/deploy.sh +++ b/ci/deploy.sh @@ -143,6 +143,17 @@ parse_deploy_settings() { echo -e "${red}ERROR: Failed to parse deploy settings file $DEPLOY_SETTINGS_FILE ${reset}" exit 1 fi + + if [ "${deploy_options_array['dataplane']}" == 'ovs_dpdk' ]; then + if [ "$net_isolation_enabled" == "FALSE" ]; then + echo -e "${red}ERROR: flat network is not supported with ovs-dpdk ${reset}" + exit 1 + fi + if [[ ! $enabled_network_list =~ "private_network" ]]; then + echo -e "${red}ERROR: tenant network is not enabled for ovs-dpdk ${reset}" + exit 1 + fi + fi } ##parses baremetal yaml settings into compatible json @@ -648,12 +659,18 @@ function configure_undercloud { ext_net_type=br-ex fi + if [ "${deploy_options_array['dataplane']}" == 'ovs_dpdk' ]; then + ovs_dpdk_bridge='br-phy' + else + ovs_dpdk_bridge='' + fi + if ! controller_nic_template=$(python3.4 -B $LIB/python/apex-python-utils.py nic-template -t $CONFIG/nics-controller.yaml.jinja2 -n "$enabled_network_list" -e $ext_net_type -af $ip_addr_family); then echo -e "${red}ERROR: Failed to generate controller NIC heat template ${reset}" exit 1 fi - if ! compute_nic_template=$(python3.4 -B $LIB/python/apex-python-utils.py nic-template -t $CONFIG/nics-compute.yaml.jinja2 -n "$enabled_network_list" -e $ext_net_type -af $ip_addr_family); then + if ! compute_nic_template=$(python3.4 -B $LIB/python/apex-python-utils.py nic-template -t $CONFIG/nics-compute.yaml.jinja2 -n "$enabled_network_list" -e $ext_net_type -af $ip_addr_family -d "$ovs_dpdk_bridge"); then echo -e "${red}ERROR: Failed to generate compute NIC heat template ${reset}" exit 1 fi @@ -774,6 +791,8 @@ function undercloud_prep_overcloud_deploy { DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/opendaylight_sfc.yaml" elif [ "${deploy_options_array['vpn']}" == 'True' ]; then DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/opendaylight_sdnvpn.yaml" + elif [ "${deploy_options_array['vpp']}" == 'True' ]; then + DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/opendaylight_fdio.yaml" else DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/opendaylight.yaml" fi @@ -975,7 +994,11 @@ openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boo openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="control" control openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="compute" compute echo "Configuring nameserver on ctlplane network" -neutron subnet-update \$(neutron subnet-list | grep -v id | grep -v \\\\-\\\\- | awk {'print \$2'}) --dns-nameserver 8.8.8.8 +dns_server_ext='' +for dns_server in ${dns_servers}; do + dns_server_ext="\${dns_server_ext} --dns-nameserver \${dns_server}" +done +neutron subnet-update \$(neutron subnet-list | grep -Ev "id|tenant|external|storage" | grep -v \\\\-\\\\- | awk {'print \$2'}) \${dns_server_ext} echo "Executing overcloud deployment, this should run for an extended period without output." sleep 60 #wait for Hypervisor stats to check-in to nova # save deploy command so it can be used for debugging @@ -1044,11 +1067,18 @@ echo "Configuring Neutron external network" neutron net-create external --router:external=True --tenant-id \$(openstack project show service | grep id | awk '{ print \$4 }') neutron subnet-create --name external-net --tenant-id \$(openstack project show service | grep id | awk '{ print \$4 }') --disable-dhcp external --gateway ${public_network_gateway} --allocation-pool start=${public_network_floating_ip_range%%,*},end=${public_network_floating_ip_range##*,} ${public_network_cidr} +echo "Removing sahara endpoint and service" +sahara_service_id=\$(openstack service list | grep sahara | cut -d ' ' -f 2) +sahara_endpoint_id=\$(openstack endpoint list | grep sahara | cut -d ' ' -f 2) +openstack endpoint delete \$sahara_endpoint_id +openstack service delete \$sahara_service_id + echo "Removing swift endpoint and service" swift_service_id=\$(openstack service list | grep swift | cut -d ' ' -f 2) swift_endpoint_id=\$(openstack endpoint list | grep swift | cut -d ' ' -f 2) openstack endpoint delete \$swift_endpoint_id openstack service delete \$swift_service_id + EOI echo -e "${blue}INFO: Checking if OVS bridges have IP addresses...${reset}" |