diff options
author | Lingxian Kong <anlin.kong@gmail.com> | 2020-11-12 09:57:13 +1300 |
---|---|---|
committer | Lingxian Kong <anlin.kong@gmail.com> | 2020-11-13 20:53:10 +1300 |
commit | c04e299b1d503f2ce67730398b9585a196616e51 (patch) | |
tree | 78442db780aa4fe8d695ce22810c67b1f0456602 /troveclient/compat | |
parent | dd371f04540d2c37fbae9626724769c05465e4b3 (diff) | |
download | python-troveclient-c04e299b1d503f2ce67730398b9585a196616e51.tar.gz |
Revert "Remove flavor API"
Story: 2008341
Task: 41242
This reverts commit 27cf71299ec51976fed8b18dbf5c0e4f9f4fd6f5.
Change-Id: I036a0423263b1a0332415c6403647ae82c9e34c4
Diffstat (limited to 'troveclient/compat')
-rw-r--r-- | troveclient/compat/__init__.py | 2 | ||||
-rw-r--r-- | troveclient/compat/cli.py | 11 | ||||
-rw-r--r-- | troveclient/compat/client.py | 3 | ||||
-rw-r--r-- | troveclient/compat/mcli.py | 26 |
4 files changed, 42 insertions, 0 deletions
diff --git a/troveclient/compat/__init__.py b/troveclient/compat/__init__.py index 1e9734d..a08dcb8 100644 --- a/troveclient/compat/__init__.py +++ b/troveclient/compat/__init__.py @@ -21,9 +21,11 @@ from troveclient.v1.accounts import Accounts # noqa from troveclient.v1.databases import Databases # noqa from troveclient.v1.diagnostics import DiagnosticsInterrogator # noqa from troveclient.v1.diagnostics import HwInfoInterrogator # noqa +from troveclient.v1.flavors import Flavors # noqa from troveclient.v1.hosts import Hosts # noqa from troveclient.v1.instances import Instances # noqa from troveclient.v1.management import Management # noqa +from troveclient.v1.management import MgmtFlavors # noqa from troveclient.v1.management import RootHistory # noqa from troveclient.v1.root import Root # noqa from troveclient.v1.storage import StorageInfo # noqa diff --git a/troveclient/compat/cli.py b/troveclient/compat/cli.py index 6f6199e..8d82ab7 100644 --- a/troveclient/compat/cli.py +++ b/troveclient/compat/cli.py @@ -129,6 +129,16 @@ class InstanceCommands(common.AuthedCommandsBase): self._pretty_print(self.dbaas.instances.configuration, self.id) +class FlavorsCommands(common.AuthedCommandsBase): + """Command for listing Flavors.""" + + params = [] + + def list(self): + """List the available flavors.""" + self._pretty_list(self.dbaas.flavors.list) + + class DatabaseCommands(common.AuthedCommandsBase): """Database CRUD operations on an instance.""" @@ -426,6 +436,7 @@ class MetadataCommands(common.AuthedCommandsBase): COMMANDS = { 'auth': common.Auth, 'instance': InstanceCommands, + 'flavor': FlavorsCommands, 'database': DatabaseCommands, 'limit': LimitsCommands, 'backup': BackupsCommands, diff --git a/troveclient/compat/client.py b/troveclient/compat/client.py index 1daa129..9dfa284 100644 --- a/troveclient/compat/client.py +++ b/troveclient/compat/client.py @@ -309,6 +309,7 @@ class Dbaas(object): from troveclient.v1 import databases from troveclient.v1 import datastores from troveclient.v1 import diagnostics + from troveclient.v1 import flavors from troveclient.v1 import hosts from troveclient.v1 import instances from troveclient.v1 import limits @@ -330,6 +331,7 @@ class Dbaas(object): region_name=region_name) self.versions = versions.Versions(self) self.databases = databases.Databases(self) + self.flavors = flavors.Flavors(self) self.instances = instances.Instances(self) self.limits = limits.Limits(self) self.users = users.Users(self) @@ -347,6 +349,7 @@ class Dbaas(object): self.storage = storage.StorageInfo(self) self.management = management.Management(self) self.mgmt_cluster = management.MgmtClusters(self) + self.mgmt_flavor = management.MgmtFlavors(self) self.accounts = accounts.Accounts(self) self.diagnostics = diagnostics.DiagnosticsInterrogator(self) self.hwinfo = diagnostics.HwInfoInterrogator(self) diff --git a/troveclient/compat/mcli.py b/troveclient/compat/mcli.py index f151ab7..e3efbae 100644 --- a/troveclient/compat/mcli.py +++ b/troveclient/compat/mcli.py @@ -181,6 +181,31 @@ class StorageCommands(common.AuthedCommandsBase): self._pretty_list(self.dbaas.storage.index) +class FlavorsCommands(common.AuthedCommandsBase): + """Commands for managing Flavors.""" + + params = [ + 'name', + 'ram', + 'disk', + 'vcpus', + 'flavor_id', + 'ephemeral', + 'swap', + 'rxtx_factor', + 'service_type' + ] + + def create(self): + """Create a new flavor.""" + self._require('name', 'ram', 'disk', 'vcpus', + 'flavor_id', 'service_type') + self._pretty_print(self.dbaas.mgmt_flavor.create, self.name, + self.ram, self.disk, self.vcpus, self.flavor_id, + self.ephemeral, self.swap, self.rxtx_factor, + self.service_type) + + def config_options(oparser): oparser.add_option("-u", "--url", default="http://localhost:5000/v1.1", help="Auth API endpoint URL with port and version. \ @@ -194,6 +219,7 @@ COMMANDS = { 'root': RootCommands, 'storage': StorageCommands, 'quota': QuotaCommands, + 'flavor': FlavorsCommands, } |