X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=apex%2Fovercloud%2Fdeploy.py;h=e3177065abe4ec3b6cde3bf0cdf8786c4b8eca11;hb=9fde9e2987871ccf16d16adf6efa6b47bf5608bb;hp=dd476b6f4aabe29c3bbdfe821236460c78caa585;hpb=c5959cc14b95e9d10b78ebf3c8e2525c672fc0c7;p=apex.git diff --git a/apex/overcloud/deploy.py b/apex/overcloud/deploy.py index dd476b6f..e3177065 100644 --- a/apex/overcloud/deploy.py +++ b/apex/overcloud/deploy.py @@ -72,8 +72,6 @@ OVS_PERF_MAP = { 'NeutronDpdkMemoryChannels': 'memory_channels' } -OVS_NSH_KMOD_RPM = "openvswitch-kmod-2.6.1-1.el7.centos.x86_64.rpm" -OVS_NSH_RPM = "openvswitch-2.6.1-1.el7.centos.x86_64.rpm" ODL_NETVIRT_VPP_RPM = "/root/opendaylight-7.0.0-0.1.20170531snap665.el7" \ ".noarch.rpm" @@ -154,7 +152,7 @@ def get_docker_sdn_files(ds_opts): :return: list of docker THT env files for an SDN """ docker_services = con.VALID_DOCKER_SERVICES - tht_dir = con.THT_DOCKER_ENV_DIR[ds_opts['os_version']] + tht_dir = con.THT_DOCKER_ENV_DIR sdn_env_list = build_sdn_env_list(ds_opts, SDN_FILE_MAP) for i, sdn_file in enumerate(sdn_env_list): sdn_base = os.path.basename(sdn_file) @@ -196,8 +194,6 @@ def create_deploy_cmd(ds, ns, inv, tmp_dir, sdn_docker_files = get_docker_sdn_files(ds_opts) for sdn_docker_file in sdn_docker_files: deploy_options.append(sdn_docker_file) - if sdn_docker_files: - deploy_options.append('sdn-images.yaml') else: deploy_options += build_sdn_env_list(ds_opts, SDN_FILE_MAP) @@ -249,12 +245,16 @@ def create_deploy_cmd(ds, ns, inv, tmp_dir, if net_data: cmd += ' --networks-file network_data.yaml' libvirt_type = 'kvm' - if virtual: + if virtual and (platform.machine() != 'aarch64'): with open('/sys/module/kvm_intel/parameters/nested') as f: nested_kvm = f.read().strip() if nested_kvm != 'Y': libvirt_type = 'qemu' + elif virtual and (platform.machine() == 'aarch64'): + libvirt_type = 'qemu' cmd += ' --libvirt-type {}'.format(libvirt_type) + if platform.machine() == 'aarch64': + cmd += ' --override-ansible-cfg /home/stack/ansible.cfg ' logging.info("Deploy command set: {}".format(cmd)) with open(os.path.join(tmp_dir, 'deploy_command'), 'w') as fh: @@ -361,14 +361,7 @@ def prep_image(ds, ns, img, tmp_dir, root_pw=None, docker_tag=None, if dataplane == 'ovs': if ds_opts['sfc']: - virt_cmds.extend([ - {con.VIRT_RUN_CMD: "yum -y install " - "/root/ovs/rpm/rpmbuild/RPMS/x86_64/" - "{}".format(OVS_NSH_KMOD_RPM)}, - {con.VIRT_RUN_CMD: "yum downgrade -y " - "/root/ovs/rpm/rpmbuild/RPMS/x86_64/" - "{}".format(OVS_NSH_RPM)} - ]) + oc_builder.inject_ovs_nsh(tmp_oc_image, tmp_dir) elif sdn == 'opendaylight': # FIXME(trozet) remove this after RDO is updated with fix for # https://bugzilla.redhat.com/show_bug.cgi?id=1544892 @@ -382,6 +375,7 @@ def prep_image(ds, ns, img, tmp_dir, root_pw=None, docker_tag=None, {con.VIRT_RUN_CMD: "yum downgrade -y /root/{}".format( ovs_file)} ]) + if dataplane == 'fdio': # Patch neutron with using OVS external interface for router # and add generic linux NS interface driver @@ -395,9 +389,9 @@ def prep_image(ds, ns, img, tmp_dir, root_pw=None, docker_tag=None, "/root/nosdn_vpp_rpms/*.rpm"} ]) + undercloud_admin_ip = ns['networks'][con.ADMIN_NETWORK][ + 'installer_vm']['ip'] if sdn == 'opendaylight': - undercloud_admin_ip = ns['networks'][con.ADMIN_NETWORK][ - 'installer_vm']['ip'] oc_builder.inject_opendaylight( odl_version=ds_opts['odl_version'], image=tmp_oc_image, @@ -718,6 +712,10 @@ def prep_env(ds, ns, inv, opnfv_env, net_env, tmp_dir): "services") logging.info("opnfv-environment file written to {}".format(tmp_opnfv_env)) + with open(tmp_opnfv_env, 'r') as fh: + logging.debug("opnfv-environment content is : {}".format( + pprint.pformat(yaml.safe_load(fh.read())) + )) def generate_ceph_key(): @@ -871,8 +869,7 @@ def external_network_cmds(ns, ds): "--allocation-pool start={},end={} --subnet-range " \ "{}".format(gateway, pool_start, pool_end, str(cidr)) if external and cidr.version == 6: - subnet_cmd += ' --ip-version 6 --ipv6-ra-mode slaac ' \ - '--ipv6-address-mode slaac' + subnet_cmd += ' --ip-version 6' cmds.append(subnet_cmd) logging.debug("Neutron external network commands determined " "as: {}".format(cmds))