From b66bc18349140b0a3e34fac207819c57c25a1cbb Mon Sep 17 00:00:00 2001 From: Tim Rozet Date: Mon, 13 Nov 2017 16:10:36 -0500 Subject: Migrates Apex to Pike JIRA: APEX-544 Change-Id: Ibee2068e782da75268ed76beb36ccb5dcd1847d6 Signed-off-by: Tim Rozet --- build/opnfv-environment.yaml | 40 +++--- build/overcloud-full.sh | 31 +---- .../puppet-neutron-ml2-ip-version-fix.patch | 28 ---- build/patches/tacker-vnffg-input-params.patch | 141 --------------------- build/rpm_specs/opnfv-apex-release.spec | 6 +- build/undercloud.sh | 3 - build/variables.sh | 2 +- 7 files changed, 36 insertions(+), 215 deletions(-) delete mode 100644 build/patches/puppet-neutron-ml2-ip-version-fix.patch delete mode 100644 build/patches/tacker-vnffg-input-params.patch (limited to 'build') diff --git a/build/opnfv-environment.yaml b/build/opnfv-environment.yaml index 70243a56..4ef6ef85 100644 --- a/build/opnfv-environment.yaml +++ b/build/opnfv-environment.yaml @@ -68,8 +68,18 @@ parameter_defaults: # value updated via lib/overcloud-deploy-functions.sh # opendaylight::vpp_routing_node: overcloud-novacompute-0.opnfvlf.org ControllerServices: - - OS::TripleO::Services::Sshd + - OS::TripleO::Services::AodhApi + - OS::TripleO::Services::AodhEvaluator + - OS::TripleO::Services::AodhListener + - OS::TripleO::Services::AodhNotifier + - OS::TripleO::Services::AuditD + - OS::TripleO::Services::BarbicanApi - OS::TripleO::Services::CACerts + - OS::TripleO::Services::CeilometerAgentCentral + - OS::TripleO::Services::CeilometerAgentNotification + - OS::TripleO::Services::CeilometerApi + - OS::TripleO::Services::CeilometerCollector + - OS::TripleO::Services::CeilometerExpirer - OS::TripleO::Services::CephMon - OS::TripleO::Services::CephOSD - OS::TripleO::Services::CephExternal @@ -78,6 +88,7 @@ parameter_defaults: - OS::TripleO::Services::CinderBackup - OS::TripleO::Services::CinderScheduler - OS::TripleO::Services::CinderVolume + - OS::TripleO::Services::Docker - OS::TripleO::Services::Kernel - OS::TripleO::Services::Keystone - OS::TripleO::Services::GlanceApi @@ -93,7 +104,7 @@ parameter_defaults: - OS::TripleO::Services::NeutronApi - OS::TripleO::Services::NeutronCorePlugin - OS::TripleO::Services::NeutronOvsAgent - - OS::TripleO::Services::NeutronSfcApi +# - OS::TripleO::Services::NeutronSfcApi - OS::TripleO::Services::RabbitMQ - OS::TripleO::Services::HAproxy - OS::TripleO::Services::Keepalived @@ -110,12 +121,8 @@ parameter_defaults: - OS::TripleO::Services::NovaVncProxy - OS::TripleO::Services::Ntp - OS::TripleO::Services::Snmp + - OS::TripleO::Services::Sshd - OS::TripleO::Services::Timezone - - OS::TripleO::Services::CeilometerApi - - OS::TripleO::Services::CeilometerCollector - - OS::TripleO::Services::CeilometerExpirer - - OS::TripleO::Services::CeilometerAgentCentral - - OS::TripleO::Services::CeilometerAgentNotification - OS::TripleO::Services::Horizon - OS::TripleO::Services::GnocchiApi - OS::TripleO::Services::GnocchiMetricd @@ -126,10 +133,6 @@ parameter_defaults: - OS::TripleO::Services::ManilaBackendNetapp - OS::TripleO::Services::ManilaBackendCephFs - OS::TripleO::Services::ManilaShare - - OS::TripleO::Services::AodhApi - - OS::TripleO::Services::AodhEvaluator - - OS::TripleO::Services::AodhNotifier - - OS::TripleO::Services::AodhListener - OS::TripleO::Services::SaharaApi - OS::TripleO::Services::SaharaEngine - OS::TripleO::Services::IronicApi @@ -146,19 +149,24 @@ parameter_defaults: - OS::TripleO::Services::Etcd # - OS::TripleO::Services::Gluon - OS::TripleO::Services::Tacker - - OS::TripleO::Services::NeutronHoneycombAgent + #- OS::TripleO::Services::NeutronHoneycombAgent - OS::TripleO::Services::Congress - OS::TripleO::Services::NeutronVppAgent - OS::TripleO::Services::OVNDBs + - OS::TripleO::Services::OVNController + - OS::TripleO::Services::Tuned - OS::TripleO::Services::Vpp - OS::TripleO::Services::NeutronBgpVpnApi ComputeServices: + - OS::TripleO::Services::AuditD - OS::TripleO::Services::Sshd - - OS::TripleO::Services::Barometer + #- OS::TripleO::Services::Barometer - OS::TripleO::Services::CACerts - OS::TripleO::Services::CephClient - OS::TripleO::Services::CephOSD - OS::TripleO::Services::CephExternal + - OS::TripleO::Services::Collectd + - OS::TripleO::Services::Docker - OS::TripleO::Services::Timezone - OS::TripleO::Services::Ntp - OS::TripleO::Services::Snmp @@ -172,19 +180,21 @@ parameter_defaults: - OS::TripleO::Services::ComputeNeutronMetadataAgent - OS::TripleO::Services::TripleoPackages - OS::TripleO::Services::TripleoFirewall + - OS::TripleO::Services::Tuned - OS::TripleO::Services::NeutronSriovAgent - OS::TripleO::Services::OpenDaylightOvs # - OS::TripleO::Services::ONOSOvs - OS::TripleO::Services::SensuClient - OS::TripleO::Services::FluentdClient - - OS::TripleO::Services::NeutronHoneycombAgent + #- OS::TripleO::Services::NeutronHoneycombAgent - OS::TripleO::Services::NeutronVppAgent - OS::TripleO::Services::Vpp + - OS::TripleO::Services::OVNController resource_registry: # Services OS::TripleO::Services::SwiftStorage: OS::Heat::None - OS::TripleO::Services::SwiftRingBuilder: OS::Heat::None + #OS::TripleO::Services::SwiftRingBuilder: OS::Heat::None OS::TripleO::Services::SwiftProxy: OS::Heat::None # Extra Config OS::TripleO::ComputeExtraConfigPre: OS::Heat::None diff --git a/build/overcloud-full.sh b/build/overcloud-full.sh index 2fd6bc8f..098ab023 100755 --- a/build/overcloud-full.sh +++ b/build/overcloud-full.sh @@ -47,7 +47,6 @@ qemu-img resize overcloud-full_build.qcow2 +1500M # expand file system to max disk size # installing forked apex-puppet-tripleo # upload neutron port data plane status -# REMOVE Tacker VNFFG patch when moving to Pike LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \ --run-command "xfs_growfs /dev/sda" \ --upload ${BUILD_DIR}/apex-puppet-tripleo.tar.gz:/etc/puppet/modules \ @@ -67,29 +66,12 @@ LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \ --upload ${BUILD_ROOT}/patches/neutron_openstackclient_dps.patch:/usr/lib/python2.7/site-packages/ \ --upload ${BUILD_ROOT}/patches/puppet-neutron-add-sfc.patch:/usr/share/openstack-puppet/modules/neutron/ \ --upload ${BUILD_ROOT}/patches/congress-parallel-execution.patch:/usr/lib/python2.7/site-packages/ \ - --upload ${BUILD_ROOT}/patches/puppet-neutron-ml2-ip-version-fix.patch:/usr/share/openstack-puppet/modules/neutron/ \ - --run-command "cd /usr/share/openstack-puppet/modules/neutron && patch -p1 < puppet-neutron-ml2-ip-version-fix.patch" \ - --upload ${BUILD_ROOT}/patches/puppet-neutron-vpp-ml2-type_drivers-setting.patch:/usr/share/openstack-puppet/modules/neutron/ \ - --run-command "cd /usr/share/openstack-puppet/modules/neutron && patch -p1 < puppet-neutron-vpp-ml2-type_drivers-setting.patch" \ - --upload ${BUILD_ROOT}/patches/tacker-vnffg-input-params.patch:/usr/lib/python2.7/site-packages/ \ - --run-command "cd usr/lib/python2.7/site-packages/ && patch -p1 < tacker-vnffg-input-params.patch" \ - --upload ${BUILD_ROOT}/patches/puppet-neutron-add-external_network_bridge-option.patch:/usr/share/openstack-puppet/modules/neutron/ \ - --run-command "cd /usr/share/openstack-puppet/modules/neutron && patch -p1 < puppet-neutron-add-external_network_bridge-option.patch" \ -a overcloud-full_build.qcow2 +# --upload ${BUILD_ROOT}/patches/puppet-neutron-vpp-ml2-type_drivers-setting.patch:/usr/share/openstack-puppet/modules/neutron/ \ +# --run-command "cd /usr/share/openstack-puppet/modules/neutron && patch -p1 < puppet-neutron-vpp-ml2-type_drivers-setting.patch" \ +# --upload ${BUILD_ROOT}/patches/puppet-neutron-add-external_network_bridge-option.patch:/usr/share/openstack-puppet/modules/neutron/ \ +# --run-command "cd /usr/share/openstack-puppet/modules/neutron && patch -p1 < puppet-neutron-add-external_network_bridge-option.patch" \ -# apply neutron port data plane status patches -# https://specs.openstack.org/openstack/neutron-specs/specs/backlog/ocata/port-data-plane-status.html -# apply congress parallel execution patch -# Requirements from Doctor project -# TODO(cgoncalves): code merged in Pike dev cycle. drop from >= OpenStack Pike / > OPNFV Euphrates -LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \ - --run-command "cd /usr/lib/python2.7/site-packages/ && patch -p1 < neutron_lib_dps.patch " \ - --run-command "cd /usr/lib/python2.7/site-packages/ && patch -p1 < neutron_server_dps.patch" \ - --run-command "cd /usr/lib/python2.7/site-packages/ && patch -p1 < neutron_openstacksdk_dps.patch" \ - --run-command "cd /usr/lib/python2.7/site-packages/ && patch -p1 < neutron_openstackclient_dps.patch" \ - --run-command "cd /usr/share/openstack-puppet/modules/neutron && patch -p1 < puppet-neutron-add-sfc.patch" \ - --run-command "cd /usr/lib/python2.7/site-packages/ && patch -p1 < congress-parallel-execution.patch" \ - -a overcloud-full_build.qcow2 # Arch dependent on x86 if [ "$(uname -i)" == 'x86_64' ]; then @@ -142,7 +124,6 @@ populate_cache $kvmfornfv_uri_base/$kvmfornfv_kernel_rpm # git clone vsperf into the overcloud image # upload the rt_kvm kernel LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \ - --run-command "cd /etc/yum.repos.d && curl -O https://trunk.rdoproject.org/centos7-ocata/current-tripleo/delorean.repo" \ --run-command "mkdir /root/dpdk_rpms" \ $dpdk_pkg_str \ --upload ${BUILD_DIR}/puppet-fdio.tar.gz:/etc/puppet/modules \ @@ -159,14 +140,14 @@ LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \ --run-command "mkdir /root/ovs28" \ --run-command "yumdownloader --destdir=/root/ovs28 openvswitch*2.8* python-openvswitch-2.8*" \ --upload ${CACHE_DIR}/$kvmfornfv_kernel_rpm:/root/ \ - --install "http://mirror.centos.org/centos/7/cloud/x86_64/openstack-ocata/python2-networking-sfc-4.0.0-1.el7.noarch.rpm" \ --install python-etcd,puppet-etcd \ --install patch \ --install docker,kubelet,kubeadm,kubectl,kubernetes-cni \ -a overcloud-full_build.qcow2 # upload and install barometer packages - barometer_pkgs overcloud-full_build.qcow2 + # FIXME collectd pkgs conflict during upgrade to Pike + # barometer_pkgs overcloud-full_build.qcow2 fi # end x86_64 specific items diff --git a/build/patches/puppet-neutron-ml2-ip-version-fix.patch b/build/patches/puppet-neutron-ml2-ip-version-fix.patch deleted file mode 100644 index 3cbb3a8c..00000000 --- a/build/patches/puppet-neutron-ml2-ip-version-fix.patch +++ /dev/null @@ -1,28 +0,0 @@ -From e3e4a9cf57d5d7da6914b31527188eff7e290238 Mon Sep 17 00:00:00 2001 -From: Feng Pan -Date: Wed, 17 May 2017 11:39:31 -0400 -Subject: [PATCH] Make sure overlay_ip_version is treated as string - -puppet throws error if overlay_ip_version is passed in through hiera -as an integer. We should make sure this variable is treated as string -for the 'in' operator. - -Closes-Bug: #1691502 - -Change-Id: I1c034e8018c959672b106e2d57992cf93b945d8a -Signed-off-by: Feng Pan ---- - -diff --git a/manifests/plugins/ml2.pp b/manifests/plugins/ml2.pp -index d931e72..b943593 100644 ---- a/manifests/plugins/ml2.pp -+++ b/manifests/plugins/ml2.pp -@@ -171,7 +171,7 @@ - warning ('supported_pci_vendor_devs is deprecated, has no effect and will be removed in a future release.') - } - -- if !is_service_default($overlay_ip_version) and !($overlay_ip_version in [4, 6]) { -+ if !is_service_default($overlay_ip_version) and !("${overlay_ip_version}" in ['4', '6']) { - fail('Invalid IP version for overlay_ip_version') - } - diff --git a/build/patches/tacker-vnffg-input-params.patch b/build/patches/tacker-vnffg-input-params.patch deleted file mode 100644 index 0da36e6b..00000000 --- a/build/patches/tacker-vnffg-input-params.patch +++ /dev/null @@ -1,141 +0,0 @@ -From a0f1e680d81c7db66ae7a2a08c3d069901d0765a Mon Sep 17 00:00:00 2001 -From: Jimmy.Ye -Date: Thu, 30 Mar 2017 18:45:32 +0800 -Subject: [PATCH] fix create vnffg instance not support param input - - (1) update and add unit test yaml files - (2) update and add unit test fuctions - -We are cherry picking this to ocata because we need it for OPNFV. There was a -conflict in exceptions.py and db/utils.py. I left the new version because I -think it should work. I will test it and check - -Change-Id: I9c43eed0c16ac5a43130724f2eeebefce82c1277 -Closes-Bug: #1675672 ---- - -diff --git a/tacker/common/exceptions.py b/tacker/common/exceptions.py -index 76afae6..321940b 100644 ---- a/tacker/common/exceptions.py -+++ b/tacker/common/exceptions.py -@@ -271,5 +271,5 @@ - message = _("%(resource)s with name %(name)s already exists") - - --class InvalidParam(TackerException): -- message = _("Param values must be a dict type") -+class DuplicateEntity(TackerException): -+ message = _("%(_type)s already exist with given %(entry)s") -diff --git a/tacker/db/nfvo/vnffg_db.py b/tacker/db/nfvo/vnffg_db.py -index 290d6d5..fd16f0f 100644 ---- a/tacker/db/nfvo/vnffg_db.py -+++ b/tacker/db/nfvo/vnffg_db.py -@@ -18,6 +18,7 @@ - import uuid - - from oslo_log import log as logging -+from six import iteritems - from sqlalchemy import orm - from sqlalchemy.orm import exc as orm_exc - from tacker._i18n import _ -@@ -284,6 +285,40 @@ - self._make_chain_dict, - filters=filters, fields=fields) - -+ def _update_template_params(self, original, paramvalues, param_matched): -+ if 'get_input' not in str(original): -+ return -+ if isinstance(original, dict): -+ for key_, value in iteritems(original): -+ if isinstance(value, dict) and 'get_input' in value: -+ if value['get_input'] in paramvalues: -+ original[key_] = paramvalues[value['get_input']] -+ param_matched.setdefault(value['get_input'], 0) -+ param_matched[value['get_input']] += 1 -+ else: -+ raise nfvo.VnffgTemplateParamParsingException( -+ get_input=value['get_input']) -+ else: -+ self._update_template_params(value, -+ paramvalues, param_matched) -+ elif isinstance(original, list): -+ for element in original: -+ self._update_template_params(element, -+ paramvalues, param_matched) -+ -+ def _process_parameterized_template(self, dev_attrs, vnffgd_template): -+ param_vattrs_dict = dev_attrs.pop('param_values', None) -+ param_matched = {} -+ if isinstance(param_vattrs_dict, dict): -+ self._update_template_params(vnffgd_template, -+ param_vattrs_dict, param_matched) -+ else: -+ raise nfvo.VnffgParamValueFormatError( -+ param_value=param_vattrs_dict) -+ for param_key in param_vattrs_dict.keys(): -+ if param_matched.get(param_key) is None: -+ raise nfvo.VnffgParamValueNotUsed(param_key=param_key) -+ - # called internally, not by REST API - def _create_vnffg_pre(self, context, vnffg): - vnffg = vnffg['vnffg'] -@@ -298,6 +333,17 @@ - template_db = self._get_resource(context, VnffgTemplate, - template_id) - LOG.debug(_('vnffg template %s'), template_db) -+ -+ if vnffg.get('attributes') and \ -+ vnffg['attributes'].get('param_values'): -+ vnffg_param = vnffg['attributes'] -+ vnffgd_topology_template = \ -+ template_db.template['vnffgd']['topology_template'] -+ self._process_parameterized_template(vnffg_param, -+ vnffgd_topology_template) -+ template_db.template['vnffgd']['topology_template'] = \ -+ vnffgd_topology_template -+ - vnf_members = self._get_vnffg_property(template_db, - 'constituent_vnfs') - LOG.debug(_('Constituent VNFs: %s'), vnf_members) -diff --git a/tacker/extensions/nfvo.py b/tacker/extensions/nfvo.py -index 449db95..cf15dff 100644 ---- a/tacker/extensions/nfvo.py -+++ b/tacker/extensions/nfvo.py -@@ -130,8 +130,17 @@ - "creating/updating VNFFG.") - - --class VnffgVimMappingException(exceptions.TackerException): -- message = _("VNF Instance VNF %(vnf_id)s does not match VIM ID %(vim_id).") -+class VnffgParamValueFormatError(exceptions.TackerException): -+ message = _("Param values %(param_value)s is not in dict format.") -+ -+ -+class VnffgTemplateParamParsingException(exceptions.TackerException): -+ message = _("Failed to parse VNFFG Template due to " -+ "missing input param %(get_input)s.") -+ -+ -+class VnffgParamValueNotUsed(exceptions.TackerException): -+ message = _("Param input %(param_key)s not used.") - - - class VnffgPropertyNotFoundException(exceptions.NotFound): -diff --git a/tacker/nfvo/nfvo_plugin.py b/tacker/nfvo/nfvo_plugin.py -index 690ce90..6892842 100644 ---- a/tacker/nfvo/nfvo_plugin.py -+++ b/tacker/nfvo/nfvo_plugin.py -@@ -229,13 +229,6 @@ - - @log.log - def create_vnffg(self, context, vnffg): -- vnffg_attributes = vnffg['vnffg']['attributes'] -- if vnffg_attributes.get('param_values'): -- param = vnffg_attributes['param_values'] -- if isinstance(param, dict): -- vnffg_attributes['param_values'] = yaml.safe_dump(param) -- else: -- raise exceptions.InvalidParam() - vnffg_dict = super(NfvoPlugin, self)._create_vnffg_pre(context, vnffg) - nfp = super(NfvoPlugin, self).get_nfp(context, - vnffg_dict['forwarding_paths']) diff --git a/build/rpm_specs/opnfv-apex-release.spec b/build/rpm_specs/opnfv-apex-release.spec index 27040cf3..9660b83e 100644 --- a/build/rpm_specs/opnfv-apex-release.spec +++ b/build/rpm_specs/opnfv-apex-release.spec @@ -1,5 +1,5 @@ Name: opnfv-apex-release -Version: euphrates +Version: fraser Release: %{_release} Summary: RPM Release file @@ -9,7 +9,7 @@ URL: https://gerrit.opnfv.org/gerrit/apex.git Source0: opnfv-apex-release.tar.gz BuildArch: noarch -Requires: rdo-release = ocata epel-release libvirt-python +Requires: rdo-release = pike epel-release libvirt-python %description RPM Release file that provides a yum repo file to install OPNFV Apex @@ -28,6 +28,8 @@ install config/yum.repos.d/opnfv-apex.repo %{buildroot}%{_sysconfdir}/yum.repos. %{_sysconfdir}/yum.repos.d/opnfv-apex.repo %changelog +* Mon Nov 13 2017 Tim Rozet - 6.0-1 +- Version update for Fraser * Tue Apr 04 2017 Dan Radez - 5.0-1 - Version update for Euphrates * Wed Nov 23 2016 Dan Radez - 3.0-1 diff --git a/build/undercloud.sh b/build/undercloud.sh index 765267df..0cfb6737 100755 --- a/build/undercloud.sh +++ b/build/undercloud.sh @@ -34,15 +34,12 @@ populate_cache $calipso_uri_base/$calipso_script # enabling ceph OSDs to live on the controller # seeding configuration files specific to OPNFV # Add performance image scripts -# Override delorean repo with current tripleo (REMOVE when upgrading to Pike) LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \ --run-command "sed -i 's/^#UseDNS.*$/UseDNS no/' /etc/ssh/sshd_config" \ --run-command "sed -i 's/^GSSAPIAuthentication.*$/GSSAPIAuthentication no/' /etc/ssh/sshd_config" \ --upload ${BUILD_DIR}/apex-tripleo-heat-templates.tar.gz:/usr/share \ --install "openstack-utils" \ --install "ceph-common" \ - --install "http://mirror.centos.org/centos/7/cloud/x86_64/openstack-ocata/python2-networking-sfc-4.0.0-1.el7.noarch.rpm" \ - --run-command "cd /etc/yum.repos.d && curl -O https://trunk.rdoproject.org/centos7-ocata/current-tripleo/delorean.repo" \ --install openstack-nova-compute \ --install epel-release \ --install python34,python34-pip \ diff --git a/build/variables.sh b/build/variables.sh index 93c71957..e966e33e 100644 --- a/build/variables.sh +++ b/build/variables.sh @@ -20,7 +20,7 @@ BUILD_UTILS="$(dirname ${BUILD_ROOT})/apex/build_utils.py" # oom issues on some of the larger build steps VIRT_CUSTOMIZE="virt-customize -m 4096" -rdo_images_uri=${RDO_IMAGES_URI:-http://artifacts.opnfv.org/apex/euphrates/rdo} +rdo_images_uri=${RDO_IMAGES_URI:-https://images.rdoproject.org/pike/delorean/current-tripleo} onos_release_uri=https://downloads.onosproject.org/release/ onos_release_file=onos-1.8.4.tar.gz -- cgit 1.2.3-korg