summaryrefslogtreecommitdiff
path: root/openstackclient/compute
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2020-03-02 21:19:42 +0000
committerGerrit Code Review <review@openstack.org>2020-03-02 21:19:42 +0000
commit2b4b1e00a59fd23f58e0bc0645ad16d8047f923e (patch)
tree6eb1de7883e7385ade7d6217721f58618abc1bd0 /openstackclient/compute
parent576d9ecfd0ac27611ec89af6d34e7378b7a39fb3 (diff)
parentc42c27aa926e93a2507e686eeaf0c5510a29d245 (diff)
downloadpython-openstackclient-2b4b1e00a59fd23f58e0bc0645ad16d8047f923e.tar.gz
Merge "Fix openstack server list --deleted --marker option" into stable/train
Diffstat (limited to 'openstackclient/compute')
-rw-r--r--openstackclient/compute/v2/server.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index 2016d408..d3bd1c72 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -1229,7 +1229,8 @@ class ListServer(command.Lister):
default=None,
help=_('The last server of the previous page. Display '
'list of servers after marker. Display all servers if not '
- 'specified. (name or ID)')
+ 'specified. When used with ``--deleted``, the marker must '
+ 'be an ID, otherwise a name or ID can be used.'),
)
parser.add_argument(
'--limit',
@@ -1437,9 +1438,17 @@ class ListServer(command.Lister):
mixed_case_fields = []
marker_id = None
+
if parsed_args.marker:
- marker_id = utils.find_resource(compute_client.servers,
- parsed_args.marker).id
+ # Check if both "--marker" and "--deleted" are used.
+ # In that scenario a lookup is not needed as the marker
+ # needs to be an ID, because find_resource does not
+ # handle deleted resources
+ if parsed_args.deleted:
+ marker_id = parsed_args.marker
+ else:
+ marker_id = utils.find_resource(compute_client.servers,
+ parsed_args.marker).id
data = compute_client.servers.list(search_opts=search_opts,
marker=marker_id,