diff options
| author | sunyajing <yajing.sun@easystack.cn> | 2016-06-13 10:37:10 +0800 |
|---|---|---|
| committer | Huanxuan Ao <huanxuan.ao@easystack.cn> | 2016-07-11 18:07:34 +0800 |
| commit | 25bdf6811c71413921777cad73b6d039444600ff (patch) | |
| tree | b38ab497ca95a987543d88d6e387d0988302b1cb /openstackclient/compute/v2/agent.py | |
| parent | 4b61efe3f9f6158c6062ff3c56bb5116b7f08d87 (diff) | |
| download | python-openstackclient-25bdf6811c71413921777cad73b6d039444600ff.tar.gz | |
Modify compute agent set command
Migrate ``compute agent set`` arguments: version, url, md5hash
to be optional.
BackwardsIncompatibleImpact
Change-Id: I092b7ed24274bafa548f0537c4586504be3a2825
Co-Authored-By: Huanxuan Ao <huanxuan.ao@easystack.cn>
Diffstat (limited to 'openstackclient/compute/v2/agent.py')
| -rw-r--r-- | openstackclient/compute/v2/agent.py | 36 |
1 files changed, 28 insertions, 8 deletions
diff --git a/openstackclient/compute/v2/agent.py b/openstackclient/compute/v2/agent.py index 4d923955..76c1b3b7 100644 --- a/openstackclient/compute/v2/agent.py +++ b/openstackclient/compute/v2/agent.py @@ -152,28 +152,48 @@ class SetAgent(command.Command): help=_("ID of the agent") ) parser.add_argument( - "version", + "--agent-version", + dest="version", metavar="<version>", help=_("Version of the agent") ) parser.add_argument( - "url", + "--url", metavar="<url>", - help=_("URL") + help=_("URL of the agent") ) parser.add_argument( - "md5hash", + "--md5hash", metavar="<md5hash>", - help=_("MD5 hash") + help=_("MD5 hash of the agent") ) return parser def take_action(self, parsed_args): compute_client = self.app.client_manager.compute + data = compute_client.agents.list(hypervisor=None) + agent = {} + + for s in data: + if s.agent_id == int(parsed_args.id): + agent['version'] = s.version + agent['url'] = s.url + agent['md5hash'] = s.md5hash + if agent == {}: + msg = _("No agent with a ID of '%(id)s' exists.") + raise exceptions.CommandError(msg % parsed_args.id) + + if parsed_args.version: + agent['version'] = parsed_args.version + if parsed_args.url: + agent['url'] = parsed_args.url + if parsed_args.md5hash: + agent['md5hash'] = parsed_args.md5hash + args = ( parsed_args.id, - parsed_args.version, - parsed_args.url, - parsed_args.md5hash + agent['version'], + agent['url'], + agent['md5hash'], ) compute_client.agents.update(*args) |
