From 6060dacde91f330e1c1ac3df540273238227036f Mon Sep 17 00:00:00 2001 From: jiansong Date: Wed, 18 Oct 2017 23:31:12 -0700 Subject: [PATCH] cluster-create support volume_type Now we just parse the volume_type parameter in cluster/service.py, but it is not passed in the creat instance, which will be supported here. Change-Id: Iae790e54ebf1bd6cb968c3be4c3f5cd53e1082f7 Partial-Bug: #1622957 --- .../strategies/cluster/experimental/cassandra/api.py | 1 + .../cluster/experimental/galera_common/api.py | 2 ++ .../strategies/cluster/experimental/mongodb/api.py | 10 ++++++++-- .../strategies/cluster/experimental/redis/api.py | 2 ++ .../strategies/cluster/experimental/vertica/api.py | 2 ++ 5 files changed, 15 insertions(+), 2 deletions(-) diff --git a/trove/common/strategies/cluster/experimental/cassandra/api.py b/trove/common/strategies/cluster/experimental/cassandra/api.py index 329e5b1560..ef9c2c246f 100644 --- a/trove/common/strategies/cluster/experimental/cassandra/api.py +++ b/trove/common/strategies/cluster/experimental/cassandra/api.py @@ -156,6 +156,7 @@ class CassandraCluster(models.Cluster): availability_zone=instance_az, configuration_id=configuration_id, cluster_config=member_config, + volume_type=instance.get('volume_type', None), modules=instance.get('modules'), locality=locality, region_name=instance.get('region_name')) diff --git a/trove/common/strategies/cluster/experimental/galera_common/api.py b/trove/common/strategies/cluster/experimental/galera_common/api.py index bbbf89a9c6..c5bc0f838a 100644 --- a/trove/common/strategies/cluster/experimental/galera_common/api.py +++ b/trove/common/strategies/cluster/experimental/galera_common/api.py @@ -121,6 +121,8 @@ class GaleraCommonCluster(cluster_models.Cluster): nics=instance.get('nics', None), configuration_id=configuration_id, cluster_config=member_config, + volume_type=instance.get( + 'volume_type', None), modules=instance.get('modules'), locality=locality, region_name=instance.get('region_name') diff --git a/trove/common/strategies/cluster/experimental/mongodb/api.py b/trove/common/strategies/cluster/experimental/mongodb/api.py index 833da3bdbf..c898e3c242 100644 --- a/trove/common/strategies/cluster/experimental/mongodb/api.py +++ b/trove/common/strategies/cluster/experimental/mongodb/api.py @@ -90,6 +90,7 @@ class MongoDbCluster(models.Cluster): flavor_id = instances[0]['flavor_id'] volume_size = instances[0].get('volume_size', None) + volume_type = instances[0].get('volume_type', None) nics = [instance.get('nics', None) for instance in instances] @@ -135,6 +136,7 @@ class MongoDbCluster(models.Cluster): nics=nics[i], configuration_id=None, cluster_config=member_config, + volume_type=volume_type, modules=instances[i].get('modules'), locality=locality, region_name=regions[i]) @@ -151,8 +153,10 @@ class MongoDbCluster(models.Cluster): nics=None, configuration_id=None, cluster_config=configsvr_config, + volume_type=volume_type, locality=locality, - region_name=regions[i % num_instances]) + region_name=regions[i % num_instances] + ) for i in range(1, num_mongos + 1): instance_name = "%s-%s-%s" % (name, "mongos", str(i)) @@ -166,8 +170,10 @@ class MongoDbCluster(models.Cluster): nics=None, configuration_id=None, cluster_config=mongos_config, + volume_type=volume_type, locality=locality, - region_name=regions[i % num_instances]) + region_name=regions[i % num_instances] + ) task_api.load(context, datastore_version.manager).create_cluster( db_info.id) diff --git a/trove/common/strategies/cluster/experimental/redis/api.py b/trove/common/strategies/cluster/experimental/redis/api.py index c9083190ee..ccfc822598 100644 --- a/trove/common/strategies/cluster/experimental/redis/api.py +++ b/trove/common/strategies/cluster/experimental/redis/api.py @@ -88,6 +88,8 @@ class RedisCluster(models.Cluster): cluster_config={ "id": db_info.id, "instance_type": "member"}, + volume_type=instance.get( + 'volume_type', None), modules=instance.get('modules'), locality=locality, region_name=instance.get( diff --git a/trove/common/strategies/cluster/experimental/vertica/api.py b/trove/common/strategies/cluster/experimental/vertica/api.py index ca5c458730..28a99333c0 100644 --- a/trove/common/strategies/cluster/experimental/vertica/api.py +++ b/trove/common/strategies/cluster/experimental/vertica/api.py @@ -98,6 +98,7 @@ class VerticaCluster(models.Cluster): flavor_id = instances[0]['flavor_id'] volume_size = instances[0].get('volume_size', None) + volume_type = instances[0].get('volume_type', None) nics = [instance.get('nics', None) for instance in instances] @@ -123,6 +124,7 @@ class VerticaCluster(models.Cluster): datastore_version, volume_size, None, nics=nics[i], availability_zone=azs[i], configuration_id=None, cluster_config=member_config, + volume_type=volume_type, modules=instances[i].get('modules'), locality=locality, region_name=regions[i]) )