X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_ro%2Fvimconn_openstack.py;h=7e6401289a51589faa60fa759f9a5fab7036f0d7;hb=refs%2Fchanges%2F70%2F2070%2F2;hp=0305c059455ea6017549d83b8ed11694224c5eb4;hpb=c705303457249e947055d5445295ba110cf3afd9;p=osm%2FRO.git diff --git a/osm_ro/vimconn_openstack.py b/osm_ro/vimconn_openstack.py index 0305c059..7e640128 100644 --- a/osm_ro/vimconn_openstack.py +++ b/osm_ro/vimconn_openstack.py @@ -149,7 +149,16 @@ class vimconnector(vimconn.vimconnector): else: self.keystone = ksClient_v2.Client(session=sess) self.session['keystone'] = self.keystone - self.nova = self.session['nova'] = nClient.Client("2.1", session=sess) + # In order to enable microversion functionality an explicit microversion must be specified in 'config'. + # This implementation approach is due to the warning message in + # https://developer.openstack.org/api-guide/compute/microversions.html + # where it is stated that microversion backwards compatibility is not guaranteed and clients should + # always require an specific microversion. + # To be able to use 'device role tagging' functionality define 'microversion: 2.32' in datacenter config + version = self.config.get("microversion") + if not version: + version = "2.1" + self.nova = self.session['nova'] = nClient.Client(str(version), session=sess) self.neutron = self.session['neutron'] = neClient.Client('2.0', session=sess) self.cinder = self.session['cinder'] = cClient.Client(2, session=sess) self.glance = self.session['glance'] = glClient.Client(2, session=sess) @@ -756,7 +765,7 @@ class vimconnector(vimconn.vimconnector): net["ip"] = fixed_ips[0].get("ip_address") else: net["ip"] = None - net_list_vim.append({"port-id": new_port["port"]["id"]}) + net_list_vim.append({"port-id": new_port["port"]["id"], "tag": new_port["port"]["name"]}) if net.get('floating_ip', False): net['exit_on_floating_ip_error'] = True