diff options
author | Tim Rozet <trozet@redhat.com> | 2017-11-13 16:10:36 -0500 |
---|---|---|
committer | Tim Rozet <trozet@redhat.com> | 2017-11-16 14:51:16 -0500 |
commit | b66bc18349140b0a3e34fac207819c57c25a1cbb (patch) | |
tree | 6d63e597faf292c21e9dca4f4d93cd02ea299573 | |
parent | e1c2217d0310a3fec511f34b36e8391aa83eac01 (diff) |
Migrates Apex to Pike
JIRA: APEX-544
Change-Id: Ibee2068e782da75268ed76beb36ccb5dcd1847d6
Signed-off-by: Tim Rozet <trozet@redhat.com>
-rw-r--r-- | apex/common/constants.py | 4 | ||||
-rw-r--r-- | apex/tests/test_apex_deploy.py | 6 | ||||
-rw-r--r-- | apex/tests/test_apex_ip_utils.py | 2 | ||||
-rw-r--r-- | apex/tests/test_apex_network_environment.py | 13 | ||||
-rw-r--r-- | build/opnfv-environment.yaml | 40 | ||||
-rwxr-xr-x | build/overcloud-full.sh | 31 | ||||
-rw-r--r-- | build/patches/puppet-neutron-ml2-ip-version-fix.patch | 28 | ||||
-rw-r--r-- | build/patches/tacker-vnffg-input-params.patch | 141 | ||||
-rw-r--r-- | build/rpm_specs/opnfv-apex-release.spec | 6 | ||||
-rwxr-xr-x | build/undercloud.sh | 3 | ||||
-rw-r--r-- | build/variables.sh | 2 | ||||
-rw-r--r-- | docs/release/installation/baremetal.rst | 2 | ||||
-rw-r--r-- | lib/ansible/playbooks/post_deploy_undercloud.yml | 16 |
13 files changed, 64 insertions, 230 deletions
diff --git a/apex/common/constants.py b/apex/common/constants.py index 943e3220..b4b24ebd 100644 --- a/apex/common/constants.py +++ b/apex/common/constants.py @@ -40,7 +40,7 @@ VIRT_PW = '--root-password' THT_DIR = '/usr/share/openstack-tripleo-heat-templates' THT_ENV_DIR = os.path.join(THT_DIR, 'environments') -DEFAULT_OS_VERSION = 'ocata' +DEFAULT_OS_VERSION = 'pike' DEFAULT_ODL_VERSION = 'carbon' VALID_ODL_VERSIONS = ['carbon', 'nitrogen', 'oxygen', 'master'] PUPPET_ODL_URL = 'https://git.opendaylight.org/gerrit/integration/packaging' \ @@ -48,5 +48,5 @@ PUPPET_ODL_URL = 'https://git.opendaylight.org/gerrit/integration/packaging' \ DEBUG_OVERCLOUD_PW = 'opnfvapex' NET_ENV_FILE = 'network-environment.yaml' DEPLOY_TIMEOUT = 90 -UPSTREAM_RDO = 'https://images.rdoproject.org/ocata/delorean/current-tripleo/' +UPSTREAM_RDO = 'https://images.rdoproject.org/pike/delorean/current-tripleo/' OPENSTACK_GERRIT = 'https://review.openstack.org' diff --git a/apex/tests/test_apex_deploy.py b/apex/tests/test_apex_deploy.py index 0a9b6c12..403b7099 100644 --- a/apex/tests/test_apex_deploy.py +++ b/apex/tests/test_apex_deploy.py @@ -107,6 +107,7 @@ class TestDeploy(unittest.TestCase): args.virtual = True assert_raises(ApexDeployException, validate_deploy_args, args) + @patch('apex.deploy.network_data.create_network_data') @patch('apex.deploy.shutil') @patch('apex.deploy.oc_deploy') @patch('apex.deploy.uc_lib') @@ -131,7 +132,7 @@ class TestDeploy(unittest.TestCase): mock_deploy_sets, mock_net_sets, mock_net_env, mock_utils, mock_parsers, mock_oc_cfg, mock_virt_utils, mock_inv, mock_build_vms, mock_uc_lib, - mock_oc_deploy, mock_shutil): + mock_oc_deploy, mock_shutil, mock_network_data): net_sets_dict = {'networks': MagicMock(), 'dns_servers': 'test'} ds_opts_dict = {'global_params': MagicMock(), @@ -177,6 +178,7 @@ class TestDeploy(unittest.TestCase): args.debug = True main() + @patch('apex.deploy.network_data.create_network_data') @patch('apex.deploy.shutil') @patch('apex.deploy.oc_deploy') @patch('apex.deploy.uc_lib') @@ -201,7 +203,7 @@ class TestDeploy(unittest.TestCase): mock_deploy_sets, mock_net_sets, mock_net_env, mock_utils, mock_parsers, mock_oc_cfg, mock_virt_utils, mock_inv, mock_build_vms, mock_uc_lib, - mock_oc_deploy, mock_shutil): + mock_oc_deploy, mock_shutil, mock_network_data): # didn't work yet line 412 # net_sets_dict = {'networks': {'admin': {'cidr': MagicMock()}}, # 'dns_servers': 'test'} diff --git a/apex/tests/test_apex_ip_utils.py b/apex/tests/test_apex_ip_utils.py index eb4549d2..5fdae317 100644 --- a/apex/tests/test_apex_ip_utils.py +++ b/apex/tests/test_apex_ip_utils.py @@ -75,8 +75,6 @@ class TestIpUtils: def test_find_gateway(self): assert_is_instance(find_gateway(self.iface), str) - iface_virbr0 = get_interface('virbr0') - assert_equal(find_gateway(iface_virbr0), None) def test_get_ip(self): cidr = ipaddress.ip_network("10.10.10.0/24") diff --git a/apex/tests/test_apex_network_environment.py b/apex/tests/test_apex_network_environment.py index 4e3ae111..79a72a55 100644 --- a/apex/tests/test_apex_network_environment.py +++ b/apex/tests/test_apex_network_environment.py @@ -76,8 +76,7 @@ class TestNetworkEnvironment: # Test removing EXTERNAL_NETWORK ns.enabled_network_list.remove(EXTERNAL_NETWORK) ne = NetworkEnvironment(ns, os.path.join(TEST_BUILD_DIR, NET_ENV_FILE)) - regstr = ne['resource_registry']['OS::TripleO::Network::External'] - assert_equal(regstr.split('/')[-1], 'OS::Heat::None') + assert 'OS::TripleO::Network::External' not in ne['resource_registry'] def test_netenv_settings_tenant_network_vlans(self): # test vlans @@ -101,8 +100,7 @@ class TestNetworkEnvironment: # Test removing TENANT_NETWORK ns.enabled_network_list.remove(TENANT_NETWORK) ne = NetworkEnvironment(ns, os.path.join(TEST_BUILD_DIR, NET_ENV_FILE)) - regstr = ne['resource_registry']['OS::TripleO::Network::Tenant'] - assert_equal(regstr.split('/')[-1], 'OS::Heat::None') + assert 'OS::TripleO::Network::Tenant' not in ne['resource_registry'] def test_netenv_settings_storage_network_vlans(self): # test vlans @@ -122,8 +120,7 @@ class TestNetworkEnvironment: # Test removing STORAGE_NETWORK ns.enabled_network_list.remove(STORAGE_NETWORK) ne = NetworkEnvironment(ns, os.path.join(TEST_BUILD_DIR, NET_ENV_FILE)) - regstr = ne['resource_registry']['OS::TripleO::Network::Storage'] - assert_equal(regstr.split('/')[-1], 'OS::Heat::None') + assert 'OS::TripleO::Network::Storage' not in ne['resource_registry'] def test_netenv_settings_api_network_v4(self): ns = copy(self.ns_vlans) @@ -153,8 +150,8 @@ class TestNetworkEnvironment: ns = copy(self.ns) # API_NETWORK is not in the default network settings file ne = NetworkEnvironment(ns, os.path.join(TEST_BUILD_DIR, NET_ENV_FILE)) - regstr = ne['resource_registry']['OS::TripleO::Network::InternalApi'] - assert_equal(regstr.split('/')[-1], 'OS::Heat::None') + assert 'OS::TripleO::Network::InternalApi' not in ne[ + 'resource_registry'] def test_numa_configs(self): ne = NetworkEnvironment(self.ns, 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 <fpan@redhat.com> -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 <fpan@redhat.com> ---- - -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 <yexuerong@cmss.chinamobile.com> -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 <trozet@redhat.com> - 6.0-1 +- Version update for Fraser * Tue Apr 04 2017 Dan Radez <dradez@redhat.com> - 5.0-1 - Version update for Euphrates * Wed Nov 23 2016 Dan Radez <dradez@redhat.com> - 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 diff --git a/docs/release/installation/baremetal.rst b/docs/release/installation/baremetal.rst index f607107f..49997f89 100644 --- a/docs/release/installation/baremetal.rst +++ b/docs/release/installation/baremetal.rst @@ -86,7 +86,7 @@ Install Bare Metal Jump Host 2a. When not using the OPNFV Apex ISO, install these repos: - ``sudo yum install https://repos.fedorapeople.org/repos/openstack/openstack-ocata/rdo-release-ocata-3.noarch.rpm`` + ``sudo yum install https://repos.fedorapeople.org/repos/openstack/openstack-pike/rdo-release-pike-1.noarch.rpm`` ``sudo yum install epel-release`` ``sudo curl -o /etc/yum/repos.d/opnfv-apex.repo http://artifacts.opnfv.org/apex/euphrates/opnfv-apex.repo`` diff --git a/lib/ansible/playbooks/post_deploy_undercloud.yml b/lib/ansible/playbooks/post_deploy_undercloud.yml index bd62f9cf..2e1bf0f3 100644 --- a/lib/ansible/playbooks/post_deploy_undercloud.yml +++ b/lib/ansible/playbooks/post_deploy_undercloud.yml @@ -18,10 +18,23 @@ - name: Find admin project id shell: "{{ overcloudrc }} && openstack project list | grep admin | awk '{print $2}'" register: os_project_id + - name: Ensure rc files owned by stack + file: + path: "/home/stack/{{ item }}" + state: file + owner: stack + group: stack + mode: 0644 + become: yes + with_items: + - overcloudrc + - overcloudrc.v3 - name: Inject OS_PROJECT_ID and OS_TENANT_NAME into overcloudrc lineinfile: line: "{{ item }}" path: /home/stack/overcloudrc + become: yes + become_user: stack with_items: - "export OS_PROJECT_ID={{ os_project_id.stdout }}" - "export OS_TENANT_NAME=admin" @@ -59,6 +72,8 @@ regexp: 'SDN_CONTROLLER_IP' path: "/home/stack/{{ item }}" when: sdn != false + become: yes + become_user: stack with_items: - overcloudrc - overcloudrc.v3 @@ -115,6 +130,7 @@ become_user: stack when: congress with_items: "{{ congress_datasources }}" + ignore_errors: yes - name: Configure Calipso block: - name: Install Calipso dependencies |