Fix bug 1798 - adding swap disks
[osm/RO.git] / RO-VIM-openstack / osm_rovim_openstack / vimconn_openstack.py
index c59bf90..4869da1 100644 (file)
@@ -864,6 +864,14 @@ class vimconnector(vimconn.VimConnector):
             if self.config.get("disable_network_port_security"):
                 network_dict["port_security_enabled"] = False
 
+            if self.config.get("neutron_availability_zone_hints"):
+                hints = self.config.get("neutron_availability_zone_hints")
+
+                if isinstance(hints, str):
+                    hints = [hints]
+
+                network_dict["availability_zone_hints"] = hints
+
             new_net = self.neutron.create_network({"network": network_dict})
             # print new_net
             # create subnetwork, even if there is no profile
@@ -1169,6 +1177,8 @@ class vimconnector(vimconn.VimConnector):
                 flavor_dict["ram"],
                 flavor_dict["vcpus"],
                 flavor_dict["disk"],
+                flavor_dict.get("ephemeral", 0),
+                flavor_dict.get("swap", 0),
             )
             # numa=None
             extended = flavor_dict.get("extended", {})
@@ -1188,7 +1198,13 @@ class vimconnector(vimconn.VimConnector):
                     continue
                     # TODO
 
-                flavor_data = (flavor.ram, flavor.vcpus, flavor.disk)
+                flavor_data = (
+                    flavor.ram,
+                    flavor.vcpus,
+                    flavor.disk,
+                    flavor.ephemeral,
+                    flavor.swap,
+                )
                 if flavor_data == flavor_target:
                     return flavor.id
                 elif (
@@ -1338,10 +1354,12 @@ class vimconnector(vimconn.VimConnector):
 
                     # create flavor
                     new_flavor = self.nova.flavors.create(
-                        name,
-                        ram,
-                        vcpus,
-                        flavor_data.get("disk", 0),
+                        name=name,
+                        ram=ram,
+                        vcpus=vcpus,
+                        disk=flavor_data.get("disk", 0),
+                        ephemeral=flavor_data.get("ephemeral", 0),
+                        swap=flavor_data.get("swap", 0),
                         is_public=flavor_data.get("is_public", True),
                     )
                     # add metadata