diff options
| author | zhangbailin <zhangbailin@inspur.com> | 2019-05-06 19:06:55 +0800 |
|---|---|---|
| committer | Brin Zhang <zhangbailin@inspur.com> | 2019-05-31 05:39:29 +0000 |
| commit | ef1fd388154eee11b9e83f80e5004670fdffb6cc (patch) | |
| tree | 560f2f6d83619a45f18070966ad338b9555396a0 /openstackclient/compute | |
| parent | 91bc0f35def33d49d293be4bd517678222c6b791 (diff) | |
| download | python-openstackclient-ef1fd388154eee11b9e83f80e5004670fdffb6cc.tar.gz | |
Add changes-before attribute to server list
Closes-Bug: #1827844
Part of bp support-to-query-nova-resources-filter-by-changes-before
Change-Id: I4f28168188973730247bcbcb70ba0e70eb81e3be
Diffstat (limited to 'openstackclient/compute')
| -rw-r--r-- | openstackclient/compute/v2/server.py | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py index cb9f8d43..bc6b137b 100644 --- a/openstackclient/compute/v2/server.py +++ b/openstackclient/compute/v2/server.py @@ -1129,12 +1129,21 @@ class ListServer(command.Lister): help=_('Only display deleted servers (Admin only).') ) parser.add_argument( + '--changes-before', + metavar='<changes-before>', + default=None, + help=_("List only servers changed before a certain point of time. " + "The provided time should be an ISO 8061 formatted time " + "(e.g., 2016-03-05T06:27:59Z). " + "(Supported by API versions '2.66' - '2.latest')") + ) + parser.add_argument( '--changes-since', metavar='<changes-since>', default=None, help=_("List only servers changed after a certain point of time." - " The provided time should be an ISO 8061 formatted time." - " ex 2016-03-04T06:27:59Z .") + " The provided time should be an ISO 8061 formatted time" + " (e.g., 2016-03-04T06:27:59Z).") ) return parser @@ -1188,10 +1197,24 @@ class ListServer(command.Lister): 'all_tenants': parsed_args.all_projects, 'user_id': user_id, 'deleted': parsed_args.deleted, + 'changes-before': parsed_args.changes_before, 'changes-since': parsed_args.changes_since, } LOG.debug('search options: %s', search_opts) + if search_opts['changes-before']: + if compute_client.api_version < api_versions.APIVersion('2.66'): + msg = _('--os-compute-api-version 2.66 or later is required') + raise exceptions.CommandError(msg) + + try: + timeutils.parse_isotime(search_opts['changes-before']) + except ValueError: + raise exceptions.CommandError( + _('Invalid changes-before value: %s') % + search_opts['changes-before'] + ) + if search_opts['changes-since']: try: timeutils.parse_isotime(search_opts['changes-since']) |
