diff options
| author | Lingxian Kong <anlin.kong@gmail.com> | 2021-07-09 20:31:43 +1200 |
|---|---|---|
| committer | Lingxian Kong <anlin.kong@gmail.com> | 2021-07-09 20:47:13 +1200 |
| commit | 64f3f62368e3f278ce235d1cd22bc3b280d1f860 (patch) | |
| tree | 3a4109130529ec5c84c2bb09fa8e9850ebad418d /troveclient/osc/v1/database_configurations.py | |
| parent | 5ce2e998b9cee78121f14cbdf5e06382928e79c9 (diff) | |
| download | python-troveclient-xena-em.tar.gz | |
Change-Id: Id0853dfb207bbd219755d46a9c0d6b4e897bfbeb
Diffstat (limited to 'troveclient/osc/v1/database_configurations.py')
| -rw-r--r-- | troveclient/osc/v1/database_configurations.py | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/troveclient/osc/v1/database_configurations.py b/troveclient/osc/v1/database_configurations.py index 69a8bf0..72becd9 100644 --- a/troveclient/osc/v1/database_configurations.py +++ b/troveclient/osc/v1/database_configurations.py @@ -265,7 +265,6 @@ class CreateDatabaseConfiguration(command.ShowOne): class AttachDatabaseConfiguration(command.Command): - _description = _("Attaches a configuration group to an instance.") def get_parser(self, prog_name): @@ -289,11 +288,16 @@ class AttachDatabaseConfiguration(command.Command): manager = self.app.client_manager.database db_instances = manager.instances db_configurations = manager.configurations - instance = osc_utils.find_resource(db_instances, - parsed_args.instance) - configuration = osc_utils.find_resource( - db_configurations, parsed_args.configuration) - db_instances.modify(instance, configuration) + + instance_id = parsed_args.instance + config_id = parsed_args.configuration + + if not uuidutils.is_uuid_like(instance_id): + instance_id = osc_utils.find_resource(db_instances, instance_id) + if not uuidutils.is_uuid_like(config_id): + config_id = osc_utils.find_resource(db_configurations, config_id) + + db_instances.update(instance_id, configuration=config_id) class DetachDatabaseConfiguration(command.Command): @@ -312,9 +316,12 @@ class DetachDatabaseConfiguration(command.Command): def take_action(self, parsed_args): db_instances = self.app.client_manager.database.instances - instance = osc_utils.find_resource(db_instances, - parsed_args.instance) - db_instances.modify(instance) + instance_id = parsed_args.instance + + if not uuidutils.is_uuid_like(instance_id): + instance_id = osc_utils.find_resource(db_instances, instance_id) + + db_instances.update(instance_id, remove_configuration=True) class ListDatabaseConfigurationInstances(command.Lister): |
