summaryrefslogtreecommitdiff
path: root/openstackclient/compute
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-03-30 23:21:36 +0000
committerGerrit Code Review <review@openstack.org>2016-03-30 23:21:37 +0000
commit01b2a0c49f5ca32bd7cbdf99dfc39ad7ceece226 (patch)
tree05465900d1ed12d7414b29d624907b7607e98fc6 /openstackclient/compute
parenta73926556f267c3b1e2dc67279677c7938225aa9 (diff)
parent4cbcd02a5787f402a95c84da613d3f8cd7d09312 (diff)
downloadpython-openstackclient-01b2a0c49f5ca32bd7cbdf99dfc39ad7ceece226.tar.gz
Merge "Add "aggregate unset" to osc"
Diffstat (limited to 'openstackclient/compute')
-rw-r--r--openstackclient/compute/v2/aggregate.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/openstackclient/compute/v2/aggregate.py b/openstackclient/compute/v2/aggregate.py
index e47c13a7..1a02a388 100644
--- a/openstackclient/compute/v2/aggregate.py
+++ b/openstackclient/compute/v2/aggregate.py
@@ -290,3 +290,34 @@ class ShowAggregate(command.ShowOne):
info = {}
info.update(data._info)
return zip(*sorted(six.iteritems(info)))
+
+
+class UnsetAggregate(command.Command):
+ """Unset aggregate properties"""
+
+ def get_parser(self, prog_name):
+ parser = super(UnsetAggregate, self).get_parser(prog_name)
+ parser.add_argument(
+ "aggregate",
+ metavar="<aggregate>",
+ help="Aggregate to modify (name or ID)",
+ )
+ parser.add_argument(
+ "--property",
+ metavar="<key>",
+ action='append',
+ help='Property to remove from aggregate '
+ '(repeat option to remove multiple properties)',
+ required=True,
+ )
+ return parser
+
+ def take_action(self, parsed_args):
+ compute_client = self.app.client_manager.compute
+ aggregate = utils.find_resource(
+ compute_client.aggregates,
+ parsed_args.aggregate)
+
+ unset_property = {key: None for key in parsed_args.property}
+ compute_client.aggregates.set_metadata(aggregate,
+ unset_property)