python-openstackclient 7.3.1__py3-none-any.whl → 8.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- openstackclient/common/availability_zone.py +3 -6
- openstackclient/common/clientmanager.py +2 -1
- openstackclient/common/envvars.py +57 -0
- openstackclient/common/extension.py +3 -11
- openstackclient/common/limits.py +1 -1
- openstackclient/common/project_cleanup.py +3 -2
- openstackclient/common/quota.py +54 -28
- openstackclient/compute/client.py +2 -5
- openstackclient/compute/v2/agent.py +5 -5
- openstackclient/compute/v2/aggregate.py +17 -15
- openstackclient/compute/v2/console.py +3 -4
- openstackclient/compute/v2/flavor.py +14 -18
- openstackclient/compute/v2/host.py +3 -3
- openstackclient/compute/v2/hypervisor.py +10 -4
- openstackclient/compute/v2/hypervisor_stats.py +1 -1
- openstackclient/compute/v2/keypair.py +8 -10
- openstackclient/compute/v2/server.py +70 -112
- openstackclient/compute/v2/server_backup.py +1 -1
- openstackclient/compute/v2/server_event.py +7 -16
- openstackclient/compute/v2/server_group.py +6 -6
- openstackclient/compute/v2/server_image.py +1 -1
- openstackclient/compute/v2/server_migration.py +6 -6
- openstackclient/compute/v2/server_volume.py +4 -4
- openstackclient/compute/v2/service.py +9 -13
- openstackclient/compute/v2/usage.py +4 -6
- openstackclient/identity/client.py +2 -4
- openstackclient/identity/common.py +16 -17
- openstackclient/identity/v2_0/ec2creds.py +4 -3
- openstackclient/identity/v2_0/endpoint.py +12 -10
- openstackclient/identity/v2_0/project.py +6 -6
- openstackclient/identity/v2_0/role.py +1 -1
- openstackclient/identity/v2_0/service.py +7 -7
- openstackclient/identity/v2_0/user.py +6 -21
- openstackclient/identity/v3/access_rule.py +2 -5
- openstackclient/identity/v3/consumer.py +4 -3
- openstackclient/identity/v3/credential.py +8 -9
- openstackclient/identity/v3/domain.py +1 -1
- openstackclient/identity/v3/ec2creds.py +4 -3
- openstackclient/identity/v3/endpoint.py +104 -88
- openstackclient/identity/v3/endpoint_group.py +1 -1
- openstackclient/identity/v3/group.py +3 -4
- openstackclient/identity/v3/identity_provider.py +1 -2
- openstackclient/identity/v3/limit.py +4 -9
- openstackclient/identity/v3/mapping.py +4 -3
- openstackclient/identity/v3/policy.py +5 -8
- openstackclient/identity/v3/project.py +6 -6
- openstackclient/identity/v3/region.py +2 -5
- openstackclient/identity/v3/registered_limit.py +4 -8
- openstackclient/identity/v3/role.py +15 -16
- openstackclient/identity/v3/service.py +8 -8
- openstackclient/identity/v3/service_provider.py +3 -6
- openstackclient/identity/v3/tag.py +2 -2
- openstackclient/identity/v3/token.py +1 -2
- openstackclient/identity/v3/trust.py +74 -25
- openstackclient/identity/v3/user.py +9 -6
- openstackclient/image/client.py +2 -5
- openstackclient/image/v1/image.py +11 -15
- openstackclient/image/v2/cache.py +2 -4
- openstackclient/image/v2/image.py +30 -37
- openstackclient/image/v2/metadef_namespaces.py +4 -3
- openstackclient/image/v2/metadef_resource_type_association.py +1 -2
- openstackclient/image/v2/metadef_resource_types.py +1 -2
- openstackclient/locale/tr_TR/LC_MESSAGES/openstackclient.po +9 -1370
- openstackclient/network/client.py +4 -10
- openstackclient/network/common.py +16 -12
- openstackclient/network/utils.py +3 -3
- openstackclient/network/v2/address_group.py +5 -9
- openstackclient/network/v2/address_scope.py +2 -3
- openstackclient/network/v2/default_security_group_rule.py +1 -2
- openstackclient/network/v2/floating_ip.py +14 -21
- openstackclient/network/v2/floating_ip_port_forwarding.py +7 -7
- openstackclient/network/v2/ip_availability.py +1 -2
- openstackclient/network/v2/l3_conntrack_helper.py +8 -12
- openstackclient/network/v2/local_ip.py +24 -26
- openstackclient/network/v2/local_ip_association.py +4 -5
- openstackclient/network/v2/ndp_proxy.py +9 -10
- openstackclient/network/v2/network.py +12 -16
- openstackclient/network/v2/network_agent.py +29 -37
- openstackclient/network/v2/network_auto_allocated_topology.py +4 -5
- openstackclient/network/v2/network_flavor.py +1 -1
- openstackclient/network/v2/network_flavor_profile.py +5 -5
- openstackclient/network/v2/network_meter.py +3 -3
- openstackclient/network/v2/network_meter_rule.py +5 -8
- openstackclient/network/v2/network_qos_policy.py +4 -4
- openstackclient/network/v2/network_qos_rule.py +4 -5
- openstackclient/network/v2/network_rbac.py +4 -4
- openstackclient/network/v2/network_segment.py +6 -7
- openstackclient/network/v2/network_segment_range.py +16 -20
- openstackclient/network/v2/network_trunk.py +24 -16
- openstackclient/network/v2/port.py +42 -31
- openstackclient/network/v2/router.py +55 -41
- openstackclient/network/v2/security_group.py +8 -15
- openstackclient/network/v2/security_group_rule.py +9 -10
- openstackclient/network/v2/subnet.py +31 -30
- openstackclient/network/v2/subnet_pool.py +4 -4
- openstackclient/object/client.py +2 -3
- openstackclient/object/v1/container.py +2 -3
- openstackclient/object/v1/object.py +2 -9
- openstackclient/shell.py +22 -5
- openstackclient/tests/functional/base.py +2 -2
- openstackclient/tests/functional/common/test_quota.py +3 -1
- openstackclient/tests/functional/compute/v2/common.py +12 -6
- openstackclient/tests/functional/compute/v2/test_server.py +2 -3
- openstackclient/tests/functional/compute/v2/test_server_event.py +1 -1
- openstackclient/tests/functional/identity/v2/test_user.py +1 -1
- openstackclient/tests/functional/identity/v3/common.py +3 -8
- openstackclient/tests/functional/identity/v3/test_application_credential.py +10 -10
- openstackclient/tests/functional/identity/v3/test_endpoint.py +3 -3
- openstackclient/tests/functional/identity/v3/test_group.py +3 -3
- openstackclient/tests/functional/identity/v3/test_idp.py +3 -7
- openstackclient/tests/functional/identity/v3/test_limit.py +4 -4
- openstackclient/tests/functional/identity/v3/test_project.py +5 -14
- openstackclient/tests/functional/identity/v3/test_region.py +1 -3
- openstackclient/tests/functional/identity/v3/test_registered_limit.py +3 -3
- openstackclient/tests/functional/identity/v3/test_role.py +1 -1
- openstackclient/tests/functional/identity/v3/test_role_assignment.py +13 -31
- openstackclient/tests/functional/identity/v3/test_service_provider.py +3 -7
- openstackclient/tests/functional/identity/v3/test_user.py +8 -8
- openstackclient/tests/functional/network/v2/common.py +7 -3
- openstackclient/tests/functional/network/v2/test_address_group.py +4 -0
- openstackclient/tests/functional/network/v2/test_l3_conntrack_helper.py +15 -11
- openstackclient/tests/functional/network/v2/test_local_ip.py +4 -0
- openstackclient/tests/functional/network/v2/test_network_meter_rule.py +2 -2
- openstackclient/tests/functional/network/v2/test_network_ndp_proxy.py +2 -3
- openstackclient/tests/functional/network/v2/test_network_rbac.py +2 -2
- openstackclient/tests/functional/network/v2/test_network_trunk.py +1 -1
- openstackclient/tests/functional/network/v2/test_port.py +17 -7
- openstackclient/tests/functional/network/v2/test_router.py +42 -0
- openstackclient/tests/functional/network/v2/test_subnet_pool.py +4 -0
- openstackclient/tests/unit/api/test_compute_v2.py +67 -87
- openstackclient/tests/unit/common/test_availability_zone.py +6 -14
- openstackclient/tests/unit/common/test_command.py +1 -1
- openstackclient/tests/unit/common/test_extension.py +5 -7
- openstackclient/tests/unit/common/test_limits.py +1 -1
- openstackclient/tests/unit/common/test_project_cleanup.py +5 -6
- openstackclient/tests/unit/common/test_quota.py +51 -28
- openstackclient/tests/unit/compute/v2/fakes.py +4 -10
- openstackclient/tests/unit/compute/v2/test_agent.py +16 -16
- openstackclient/tests/unit/compute/v2/test_aggregate.py +56 -60
- openstackclient/tests/unit/compute/v2/test_console.py +16 -16
- openstackclient/tests/unit/compute/v2/test_flavor.py +71 -71
- openstackclient/tests/unit/compute/v2/test_host.py +8 -8
- openstackclient/tests/unit/compute/v2/test_hypervisor.py +22 -30
- openstackclient/tests/unit/compute/v2/test_hypervisor_stats.py +2 -2
- openstackclient/tests/unit/compute/v2/test_keypair.py +24 -24
- openstackclient/tests/unit/compute/v2/test_server.py +524 -560
- openstackclient/tests/unit/compute/v2/test_server_backup.py +5 -7
- openstackclient/tests/unit/compute/v2/test_server_event.py +16 -18
- openstackclient/tests/unit/compute/v2/test_server_group.py +25 -31
- openstackclient/tests/unit/compute/v2/test_server_image.py +6 -8
- openstackclient/tests/unit/compute/v2/test_server_migration.py +37 -37
- openstackclient/tests/unit/compute/v2/test_server_volume.py +12 -12
- openstackclient/tests/unit/compute/v2/test_service.py +39 -45
- openstackclient/tests/unit/compute/v2/test_usage.py +5 -5
- openstackclient/tests/unit/identity/v2_0/fakes.py +1 -1
- openstackclient/tests/unit/identity/v3/test_access_rule.py +1 -3
- openstackclient/tests/unit/identity/v3/test_application_credential.py +1 -1
- openstackclient/tests/unit/identity/v3/test_credential.py +4 -4
- openstackclient/tests/unit/identity/v3/test_endpoint.py +167 -172
- openstackclient/tests/unit/identity/v3/test_mappings.py +2 -2
- openstackclient/tests/unit/identity/v3/test_trust.py +5 -2
- openstackclient/tests/unit/identity/v3/test_user.py +16 -0
- openstackclient/tests/unit/image/v1/fakes.py +2 -2
- openstackclient/tests/unit/image/v2/test_image.py +39 -1
- openstackclient/tests/unit/integ/cli/test_shell.py +1 -2
- openstackclient/tests/unit/network/test_common.py +2 -2
- openstackclient/tests/unit/network/v2/test_floating_ip_compute.py +8 -14
- openstackclient/tests/unit/network/v2/test_floating_ip_network.py +49 -35
- openstackclient/tests/unit/network/v2/test_floating_ip_pool_compute.py +1 -1
- openstackclient/tests/unit/network/v2/test_network_compute.py +11 -11
- openstackclient/tests/unit/network/v2/test_network_trunk.py +2 -2
- openstackclient/tests/unit/network/v2/test_port.py +33 -5
- openstackclient/tests/unit/network/v2/test_router.py +120 -7
- openstackclient/tests/unit/network/v2/test_security_group_compute.py +11 -19
- openstackclient/tests/unit/network/v2/test_security_group_rule_compute.py +14 -14
- openstackclient/tests/unit/object/v1/test_object_all.py +4 -3
- openstackclient/tests/unit/test_shell.py +16 -13
- openstackclient/tests/unit/volume/v2/test_volume.py +1 -1
- openstackclient/tests/unit/volume/v2/test_volume_transfer_request.py +1 -1
- openstackclient/tests/unit/volume/v3/fakes.py +2 -8
- openstackclient/tests/unit/volume/v3/test_volume.py +1 -1
- openstackclient/tests/unit/volume/v3/test_volume_attachment.py +3 -3
- openstackclient/tests/unit/volume/v3/test_volume_snapshot.py +1 -2
- openstackclient/tests/unit/volume/v3/test_volume_transfer_request.py +1 -1
- openstackclient/volume/client.py +1 -3
- openstackclient/volume/v2/consistency_group.py +4 -8
- openstackclient/volume/v2/consistency_group_snapshot.py +1 -2
- openstackclient/volume/v2/qos_specs.py +1 -2
- openstackclient/volume/v2/volume.py +8 -16
- openstackclient/volume/v2/volume_backup.py +6 -7
- openstackclient/volume/v2/volume_snapshot.py +8 -9
- openstackclient/volume/v2/volume_transfer_request.py +0 -3
- openstackclient/volume/v2/volume_type.py +10 -21
- openstackclient/volume/v3/block_storage_cluster.py +3 -3
- openstackclient/volume/v3/block_storage_manage.py +1 -3
- openstackclient/volume/v3/volume.py +18 -19
- openstackclient/volume/v3/volume_attachment.py +3 -2
- openstackclient/volume/v3/volume_backup.py +7 -8
- openstackclient/volume/v3/volume_group.py +2 -1
- openstackclient/volume/v3/volume_group_snapshot.py +2 -1
- openstackclient/volume/v3/volume_snapshot.py +4 -3
- openstackclient/volume/v3/volume_type.py +10 -21
- {python_openstackclient-7.3.1.dist-info → python_openstackclient-8.0.0.dist-info}/AUTHORS +4 -0
- {python_openstackclient-7.3.1.dist-info → python_openstackclient-8.0.0.dist-info}/METADATA +7 -13
- {python_openstackclient-7.3.1.dist-info → python_openstackclient-8.0.0.dist-info}/RECORD +210 -233
- {python_openstackclient-7.3.1.dist-info → python_openstackclient-8.0.0.dist-info}/WHEEL +1 -1
- {python_openstackclient-7.3.1.dist-info → python_openstackclient-8.0.0.dist-info}/entry_points.txt +0 -41
- python_openstackclient-8.0.0.dist-info/pbr.json +1 -0
- openstackclient/tests/functional/volume/v1/__init__.py +0 -0
- openstackclient/tests/functional/volume/v1/common.py +0 -35
- openstackclient/tests/functional/volume/v1/test_qos.py +0 -100
- openstackclient/tests/functional/volume/v1/test_service.py +0 -76
- openstackclient/tests/functional/volume/v1/test_snapshot.py +0 -232
- openstackclient/tests/functional/volume/v1/test_transfer_request.py +0 -111
- openstackclient/tests/functional/volume/v1/test_volume.py +0 -228
- openstackclient/tests/functional/volume/v1/test_volume_type.py +0 -213
- openstackclient/tests/unit/volume/v1/__init__.py +0 -0
- openstackclient/tests/unit/volume/v1/fakes.py +0 -615
- openstackclient/tests/unit/volume/v1/test_qos_specs.py +0 -471
- openstackclient/tests/unit/volume/v1/test_service.py +0 -295
- openstackclient/tests/unit/volume/v1/test_transfer_request.py +0 -380
- openstackclient/tests/unit/volume/v1/test_type.py +0 -633
- openstackclient/tests/unit/volume/v1/test_volume.py +0 -1447
- openstackclient/tests/unit/volume/v1/test_volume_backup.py +0 -435
- openstackclient/volume/v1/__init__.py +0 -0
- openstackclient/volume/v1/qos_specs.py +0 -377
- openstackclient/volume/v1/service.py +0 -136
- openstackclient/volume/v1/volume.py +0 -734
- openstackclient/volume/v1/volume_backup.py +0 -302
- openstackclient/volume/v1/volume_snapshot.py +0 -433
- openstackclient/volume/v1/volume_transfer_request.py +0 -200
- openstackclient/volume/v1/volume_type.py +0 -520
- python_openstackclient-7.3.1.dist-info/pbr.json +0 -1
- {python_openstackclient-7.3.1.dist-info → python_openstackclient-8.0.0.dist-info}/LICENSE +0 -0
- {python_openstackclient-7.3.1.dist-info → python_openstackclient-8.0.0.dist-info}/top_level.txt +0 -0
|
@@ -34,6 +34,7 @@ from osc_lib import exceptions
|
|
|
34
34
|
from osc_lib import utils
|
|
35
35
|
|
|
36
36
|
from openstackclient.api import compute_v2
|
|
37
|
+
from openstackclient.common import envvars
|
|
37
38
|
from openstackclient.common import pagination
|
|
38
39
|
from openstackclient.i18n import _
|
|
39
40
|
from openstackclient.identity import common as identity_common
|
|
@@ -324,48 +325,6 @@ def _prep_server_detail(compute_client, image_client, server, *, refresh=True):
|
|
|
324
325
|
return info
|
|
325
326
|
|
|
326
327
|
|
|
327
|
-
def bool_from_str(value, strict=False):
|
|
328
|
-
true_strings = ('1', 't', 'true', 'on', 'y', 'yes')
|
|
329
|
-
false_strings = ('0', 'f', 'false', 'off', 'n', 'no')
|
|
330
|
-
|
|
331
|
-
if isinstance(value, bool):
|
|
332
|
-
return value
|
|
333
|
-
|
|
334
|
-
lowered = value.strip().lower()
|
|
335
|
-
if lowered in true_strings:
|
|
336
|
-
return True
|
|
337
|
-
elif lowered in false_strings or not strict:
|
|
338
|
-
return False
|
|
339
|
-
|
|
340
|
-
msg = _(
|
|
341
|
-
"Unrecognized value '%(value)s'; acceptable values are: %(valid)s"
|
|
342
|
-
) % {
|
|
343
|
-
'value': value,
|
|
344
|
-
'valid': ', '.join(
|
|
345
|
-
f"'{s}'" for s in sorted(true_strings + false_strings)
|
|
346
|
-
),
|
|
347
|
-
}
|
|
348
|
-
raise ValueError(msg)
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
def boolenv(*vars, default=False):
|
|
352
|
-
"""Search for the first defined of possibly many bool-like env vars.
|
|
353
|
-
|
|
354
|
-
Returns the first environment variable defined in vars, or returns the
|
|
355
|
-
default.
|
|
356
|
-
|
|
357
|
-
:param vars: Arbitrary strings to search for. Case sensitive.
|
|
358
|
-
:param default: The default to return if no value found.
|
|
359
|
-
:returns: A boolean corresponding to the value found, else the default if
|
|
360
|
-
no value found.
|
|
361
|
-
"""
|
|
362
|
-
for v in vars:
|
|
363
|
-
value = os.environ.get(v, None)
|
|
364
|
-
if value:
|
|
365
|
-
return bool_from_str(value)
|
|
366
|
-
return default
|
|
367
|
-
|
|
368
|
-
|
|
369
328
|
class AddFixedIP(command.ShowOne):
|
|
370
329
|
_description = _("Add fixed IP address to server")
|
|
371
330
|
|
|
@@ -399,7 +358,7 @@ class AddFixedIP(command.ShowOne):
|
|
|
399
358
|
return parser
|
|
400
359
|
|
|
401
360
|
def take_action(self, parsed_args):
|
|
402
|
-
compute_client = self.app.client_manager.
|
|
361
|
+
compute_client = self.app.client_manager.compute
|
|
403
362
|
server = compute_client.find_server(
|
|
404
363
|
parsed_args.server, ignore_missing=False
|
|
405
364
|
)
|
|
@@ -430,7 +389,7 @@ class AddFixedIP(command.ShowOne):
|
|
|
430
389
|
|
|
431
390
|
interface = compute_client.create_server_interface(server.id, **kwargs)
|
|
432
391
|
|
|
433
|
-
columns = (
|
|
392
|
+
columns: tuple[str, ...] = (
|
|
434
393
|
'port_id',
|
|
435
394
|
'server_id',
|
|
436
395
|
'net_id',
|
|
@@ -438,7 +397,7 @@ class AddFixedIP(command.ShowOne):
|
|
|
438
397
|
'port_state',
|
|
439
398
|
'fixed_ips',
|
|
440
399
|
)
|
|
441
|
-
column_headers = (
|
|
400
|
+
column_headers: tuple[str, ...] = (
|
|
442
401
|
'Port ID',
|
|
443
402
|
'Server ID',
|
|
444
403
|
'Network ID',
|
|
@@ -493,7 +452,7 @@ class AddFloatingIP(network_common.NetworkAndComputeCommand):
|
|
|
493
452
|
return parser
|
|
494
453
|
|
|
495
454
|
def take_action_network(self, client, parsed_args):
|
|
496
|
-
compute_client = self.app.client_manager.
|
|
455
|
+
compute_client = self.app.client_manager.compute
|
|
497
456
|
|
|
498
457
|
attrs = {}
|
|
499
458
|
obj = client.find_ip(
|
|
@@ -586,7 +545,7 @@ class AddPort(command.Command):
|
|
|
586
545
|
return parser
|
|
587
546
|
|
|
588
547
|
def take_action(self, parsed_args):
|
|
589
|
-
compute_client = self.app.client_manager.
|
|
548
|
+
compute_client = self.app.client_manager.compute
|
|
590
549
|
|
|
591
550
|
server = compute_client.find_server(
|
|
592
551
|
parsed_args.server, ignore_missing=False
|
|
@@ -640,7 +599,7 @@ class AddNetwork(command.Command):
|
|
|
640
599
|
return parser
|
|
641
600
|
|
|
642
601
|
def take_action(self, parsed_args):
|
|
643
|
-
compute_client = self.app.client_manager.
|
|
602
|
+
compute_client = self.app.client_manager.compute
|
|
644
603
|
|
|
645
604
|
server = compute_client.find_server(
|
|
646
605
|
parsed_args.server, ignore_missing=False
|
|
@@ -691,7 +650,7 @@ class AddServerSecurityGroup(command.Command):
|
|
|
691
650
|
return parser
|
|
692
651
|
|
|
693
652
|
def take_action(self, parsed_args):
|
|
694
|
-
compute_client = self.app.client_manager.
|
|
653
|
+
compute_client = self.app.client_manager.compute
|
|
695
654
|
|
|
696
655
|
server = compute_client.find_server(
|
|
697
656
|
parsed_args.server, ignore_missing=False
|
|
@@ -793,7 +752,7 @@ with status ``SHELVED`` or ``SHELVED_OFFLOADED``."""
|
|
|
793
752
|
return parser
|
|
794
753
|
|
|
795
754
|
def take_action(self, parsed_args):
|
|
796
|
-
compute_client = self.app.client_manager.
|
|
755
|
+
compute_client = self.app.client_manager.compute
|
|
797
756
|
volume_client = self.app.client_manager.sdk_connection.volume
|
|
798
757
|
|
|
799
758
|
server = compute_client.find_server(
|
|
@@ -842,8 +801,13 @@ with status ``SHELVED`` or ``SHELVED_OFFLOADED``."""
|
|
|
842
801
|
**kwargs,
|
|
843
802
|
)
|
|
844
803
|
|
|
845
|
-
columns = ('id', 'server id', 'volume id', 'device')
|
|
846
|
-
column_headers
|
|
804
|
+
columns: tuple[str, ...] = ('id', 'server id', 'volume id', 'device')
|
|
805
|
+
column_headers: tuple[str, ...] = (
|
|
806
|
+
'ID',
|
|
807
|
+
'Server ID',
|
|
808
|
+
'Volume ID',
|
|
809
|
+
'Device',
|
|
810
|
+
)
|
|
847
811
|
if sdk_utils.supports_microversion(compute_client, '2.49'):
|
|
848
812
|
columns += ('tag',)
|
|
849
813
|
column_headers += ('Tag',)
|
|
@@ -1027,7 +991,6 @@ class BDMLegacyAction(argparse.Action):
|
|
|
1027
991
|
|
|
1028
992
|
class BDMAction(parseractions.MultiKeyValueAction):
|
|
1029
993
|
def __init__(self, option_strings, dest, **kwargs):
|
|
1030
|
-
required_keys = []
|
|
1031
994
|
optional_keys = [
|
|
1032
995
|
'uuid',
|
|
1033
996
|
'source_type',
|
|
@@ -1045,7 +1008,7 @@ class BDMAction(parseractions.MultiKeyValueAction):
|
|
|
1045
1008
|
super().__init__(
|
|
1046
1009
|
option_strings,
|
|
1047
1010
|
dest,
|
|
1048
|
-
required_keys=
|
|
1011
|
+
required_keys=[],
|
|
1049
1012
|
optional_keys=optional_keys,
|
|
1050
1013
|
**kwargs,
|
|
1051
1014
|
)
|
|
@@ -1402,7 +1365,7 @@ class CreateServer(command.ShowOne):
|
|
|
1402
1365
|
default=[],
|
|
1403
1366
|
help=_(
|
|
1404
1367
|
'File(s) to inject into image before boot '
|
|
1405
|
-
'(repeat option to set multiple files)'
|
|
1368
|
+
'(repeat option to set multiple files) '
|
|
1406
1369
|
'(supported by --os-compute-api-version 2.57 or below)'
|
|
1407
1370
|
),
|
|
1408
1371
|
)
|
|
@@ -1554,7 +1517,7 @@ class CreateServer(command.ShowOne):
|
|
|
1554
1517
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
1555
1518
|
self.app.stdout.flush()
|
|
1556
1519
|
|
|
1557
|
-
compute_client = self.app.client_manager.
|
|
1520
|
+
compute_client = self.app.client_manager.compute
|
|
1558
1521
|
volume_client = self.app.client_manager.volume
|
|
1559
1522
|
image_client = self.app.client_manager.image
|
|
1560
1523
|
|
|
@@ -1617,8 +1580,7 @@ class CreateServer(command.ShowOne):
|
|
|
1617
1580
|
image = images[0]
|
|
1618
1581
|
else:
|
|
1619
1582
|
msg = _(
|
|
1620
|
-
'No images match the property expected by '
|
|
1621
|
-
'--image-property'
|
|
1583
|
+
'No images match the property expected by --image-property'
|
|
1622
1584
|
)
|
|
1623
1585
|
raise exceptions.CommandError(msg)
|
|
1624
1586
|
|
|
@@ -1873,7 +1835,7 @@ class CreateServer(command.ShowOne):
|
|
|
1873
1835
|
|
|
1874
1836
|
if 'delete_on_termination' in mapping:
|
|
1875
1837
|
try:
|
|
1876
|
-
value = bool_from_str(
|
|
1838
|
+
value = envvars.bool_from_str(
|
|
1877
1839
|
mapping['delete_on_termination'],
|
|
1878
1840
|
strict=True,
|
|
1879
1841
|
)
|
|
@@ -1902,7 +1864,7 @@ class CreateServer(command.ShowOne):
|
|
|
1902
1864
|
|
|
1903
1865
|
# Default to empty list if nothing was specified and let nova
|
|
1904
1866
|
# decide the default behavior.
|
|
1905
|
-
networks: ty.Union[str,
|
|
1867
|
+
networks: ty.Union[str, list[dict[str, str]], None] = []
|
|
1906
1868
|
|
|
1907
1869
|
if 'auto' in parsed_args.nics or 'none' in parsed_args.nics:
|
|
1908
1870
|
if len(parsed_args.nics) > 1:
|
|
@@ -1967,7 +1929,7 @@ class CreateServer(command.ShowOne):
|
|
|
1967
1929
|
|
|
1968
1930
|
# convert from the novaclient-derived "NIC" view to the actual
|
|
1969
1931
|
# "network" view
|
|
1970
|
-
network = {}
|
|
1932
|
+
network: dict[str, str] = {}
|
|
1971
1933
|
|
|
1972
1934
|
if nic['net-id']:
|
|
1973
1935
|
network['uuid'] = nic['net-id']
|
|
@@ -1983,7 +1945,7 @@ class CreateServer(command.ShowOne):
|
|
|
1983
1945
|
if nic.get('tag'): # tags are optional
|
|
1984
1946
|
network['tag'] = nic['tag']
|
|
1985
1947
|
|
|
1986
|
-
networks.append(network)
|
|
1948
|
+
networks.append(network) # type: ignore[union-attr]
|
|
1987
1949
|
|
|
1988
1950
|
if not parsed_args.nics and sdk_utils.supports_microversion(
|
|
1989
1951
|
compute_client, '2.37'
|
|
@@ -2195,7 +2157,7 @@ class CreateServerDump(command.Command):
|
|
|
2195
2157
|
return parser
|
|
2196
2158
|
|
|
2197
2159
|
def take_action(self, parsed_args):
|
|
2198
|
-
compute_client = self.app.client_manager.
|
|
2160
|
+
compute_client = self.app.client_manager.compute
|
|
2199
2161
|
for name_or_id in parsed_args.server:
|
|
2200
2162
|
server = compute_client.find_server(name_or_id)
|
|
2201
2163
|
server.trigger_crash_dump(compute_client)
|
|
@@ -2220,7 +2182,7 @@ class DeleteServer(command.Command):
|
|
|
2220
2182
|
parser.add_argument(
|
|
2221
2183
|
'--all-projects',
|
|
2222
2184
|
action='store_true',
|
|
2223
|
-
default=boolenv('ALL_PROJECTS'),
|
|
2185
|
+
default=envvars.boolenv('ALL_PROJECTS'),
|
|
2224
2186
|
help=_(
|
|
2225
2187
|
'Delete server(s) in another project by name (admin only)'
|
|
2226
2188
|
'(can be specified using the ALL_PROJECTS envvar)'
|
|
@@ -2239,7 +2201,7 @@ class DeleteServer(command.Command):
|
|
|
2239
2201
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
2240
2202
|
self.app.stdout.flush()
|
|
2241
2203
|
|
|
2242
|
-
compute_client = self.app.client_manager.
|
|
2204
|
+
compute_client = self.app.client_manager.compute
|
|
2243
2205
|
for server in parsed_args.server:
|
|
2244
2206
|
server_obj = compute_client.find_server(
|
|
2245
2207
|
server,
|
|
@@ -2386,7 +2348,7 @@ class ListServer(command.Lister):
|
|
|
2386
2348
|
parser.add_argument(
|
|
2387
2349
|
'--all-projects',
|
|
2388
2350
|
action='store_true',
|
|
2389
|
-
default=boolenv('ALL_PROJECTS'),
|
|
2351
|
+
default=envvars.boolenv('ALL_PROJECTS'),
|
|
2390
2352
|
help=_(
|
|
2391
2353
|
'Include all projects (admin only) '
|
|
2392
2354
|
'(can be specified using the ALL_PROJECTS envvar)'
|
|
@@ -2424,8 +2386,7 @@ class ListServer(command.Lister):
|
|
|
2424
2386
|
parser.add_argument(
|
|
2425
2387
|
'--key-name',
|
|
2426
2388
|
help=_(
|
|
2427
|
-
'Search by keypair name '
|
|
2428
|
-
'(admin only before microversion 2.83)'
|
|
2389
|
+
'Search by keypair name (admin only before microversion 2.83)'
|
|
2429
2390
|
),
|
|
2430
2391
|
)
|
|
2431
2392
|
config_drive_group = parser.add_mutually_exclusive_group()
|
|
@@ -2648,7 +2609,7 @@ class ListServer(command.Lister):
|
|
|
2648
2609
|
return parser
|
|
2649
2610
|
|
|
2650
2611
|
def take_action(self, parsed_args):
|
|
2651
|
-
compute_client = self.app.client_manager.
|
|
2612
|
+
compute_client = self.app.client_manager.compute
|
|
2652
2613
|
identity_client = self.app.client_manager.identity
|
|
2653
2614
|
image_client = self.app.client_manager.image
|
|
2654
2615
|
|
|
@@ -2804,12 +2765,12 @@ class ListServer(command.Lister):
|
|
|
2804
2765
|
msg % search_opts['changes-since']
|
|
2805
2766
|
)
|
|
2806
2767
|
|
|
2807
|
-
columns = (
|
|
2768
|
+
columns: tuple[str, ...] = (
|
|
2808
2769
|
'id',
|
|
2809
2770
|
'name',
|
|
2810
2771
|
'status',
|
|
2811
2772
|
)
|
|
2812
|
-
column_headers = (
|
|
2773
|
+
column_headers: tuple[str, ...] = (
|
|
2813
2774
|
'ID',
|
|
2814
2775
|
'Name',
|
|
2815
2776
|
'Status',
|
|
@@ -3124,7 +3085,7 @@ A non-admin user will not be able to execute actions."""
|
|
|
3124
3085
|
return parser
|
|
3125
3086
|
|
|
3126
3087
|
def take_action(self, parsed_args):
|
|
3127
|
-
compute_client = self.app.client_manager.
|
|
3088
|
+
compute_client = self.app.client_manager.compute
|
|
3128
3089
|
|
|
3129
3090
|
kwargs = {}
|
|
3130
3091
|
if parsed_args.reason:
|
|
@@ -3222,7 +3183,7 @@ revert to release the new server and restart the old one."""
|
|
|
3222
3183
|
action='store_true',
|
|
3223
3184
|
default=None,
|
|
3224
3185
|
help=_(
|
|
3225
|
-
'Allow disk over-commit on the destination host'
|
|
3186
|
+
'Allow disk over-commit on the destination host '
|
|
3226
3187
|
'(supported with --os-compute-api-version 2.24 or below)'
|
|
3227
3188
|
),
|
|
3228
3189
|
)
|
|
@@ -3231,7 +3192,7 @@ revert to release the new server and restart the old one."""
|
|
|
3231
3192
|
dest='disk_overcommit',
|
|
3232
3193
|
action='store_false',
|
|
3233
3194
|
help=_(
|
|
3234
|
-
'Do not over-commit disk on the destination host (default)'
|
|
3195
|
+
'Do not over-commit disk on the destination host (default) '
|
|
3235
3196
|
'(supported with --os-compute-api-version 2.24 or below)'
|
|
3236
3197
|
),
|
|
3237
3198
|
)
|
|
@@ -3248,7 +3209,7 @@ revert to release the new server and restart the old one."""
|
|
|
3248
3209
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
3249
3210
|
self.app.stdout.flush()
|
|
3250
3211
|
|
|
3251
|
-
compute_client = self.app.client_manager.
|
|
3212
|
+
compute_client = self.app.client_manager.compute
|
|
3252
3213
|
|
|
3253
3214
|
server = compute_client.find_server(
|
|
3254
3215
|
parsed_args.server, ignore_missing=False
|
|
@@ -3351,7 +3312,7 @@ class PauseServer(command.Command):
|
|
|
3351
3312
|
return parser
|
|
3352
3313
|
|
|
3353
3314
|
def take_action(self, parsed_args):
|
|
3354
|
-
compute_client = self.app.client_manager.
|
|
3315
|
+
compute_client = self.app.client_manager.compute
|
|
3355
3316
|
for server in parsed_args.server:
|
|
3356
3317
|
server_id = compute_client.find_server(
|
|
3357
3318
|
server,
|
|
@@ -3400,7 +3361,7 @@ class RebootServer(command.Command):
|
|
|
3400
3361
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
3401
3362
|
self.app.stdout.flush()
|
|
3402
3363
|
|
|
3403
|
-
compute_client = self.app.client_manager.
|
|
3364
|
+
compute_client = self.app.client_manager.compute
|
|
3404
3365
|
server_id = compute_client.find_server(
|
|
3405
3366
|
parsed_args.server,
|
|
3406
3367
|
ignore_missing=False,
|
|
@@ -3434,7 +3395,7 @@ class RebuildServer(command.ShowOne):
|
|
|
3434
3395
|
'--image',
|
|
3435
3396
|
metavar='<image>',
|
|
3436
3397
|
help=_(
|
|
3437
|
-
'Recreate server from the specified image (name or ID).'
|
|
3398
|
+
'Recreate server from the specified image (name or ID). '
|
|
3438
3399
|
'Defaults to the currently used one.'
|
|
3439
3400
|
),
|
|
3440
3401
|
)
|
|
@@ -3605,7 +3566,7 @@ class RebuildServer(command.ShowOne):
|
|
|
3605
3566
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
3606
3567
|
self.app.stdout.flush()
|
|
3607
3568
|
|
|
3608
|
-
compute_client = self.app.client_manager.
|
|
3569
|
+
compute_client = self.app.client_manager.compute
|
|
3609
3570
|
image_client = self.app.client_manager.image
|
|
3610
3571
|
|
|
3611
3572
|
server = compute_client.find_server(
|
|
@@ -3866,7 +3827,7 @@ host."""
|
|
|
3866
3827
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
3867
3828
|
self.app.stdout.flush()
|
|
3868
3829
|
|
|
3869
|
-
compute_client = self.app.client_manager.
|
|
3830
|
+
compute_client = self.app.client_manager.compute
|
|
3870
3831
|
image_client = self.app.client_manager.image
|
|
3871
3832
|
|
|
3872
3833
|
if parsed_args.host:
|
|
@@ -3931,7 +3892,7 @@ class RemoveFixedIP(command.Command):
|
|
|
3931
3892
|
return parser
|
|
3932
3893
|
|
|
3933
3894
|
def take_action(self, parsed_args):
|
|
3934
|
-
compute_client = self.app.client_manager.
|
|
3895
|
+
compute_client = self.app.client_manager.compute
|
|
3935
3896
|
|
|
3936
3897
|
server = compute_client.find_server(
|
|
3937
3898
|
parsed_args.server, ignore_missing=False
|
|
@@ -3960,14 +3921,12 @@ class RemoveFloatingIP(network_common.NetworkAndComputeCommand):
|
|
|
3960
3921
|
return parser
|
|
3961
3922
|
|
|
3962
3923
|
def take_action_network(self, client, parsed_args):
|
|
3963
|
-
attrs = {}
|
|
3964
3924
|
obj = client.find_ip(
|
|
3965
3925
|
parsed_args.ip_address,
|
|
3966
3926
|
ignore_missing=False,
|
|
3967
3927
|
)
|
|
3968
|
-
attrs['port_id'] = None
|
|
3969
3928
|
|
|
3970
|
-
client.update_ip(obj,
|
|
3929
|
+
client.update_ip(obj, port_id=None)
|
|
3971
3930
|
|
|
3972
3931
|
def take_action_compute(self, client, parsed_args):
|
|
3973
3932
|
server = client.find_server(parsed_args.server, ignore_missing=False)
|
|
@@ -3992,7 +3951,7 @@ class RemovePort(command.Command):
|
|
|
3992
3951
|
return parser
|
|
3993
3952
|
|
|
3994
3953
|
def take_action(self, parsed_args):
|
|
3995
|
-
compute_client = self.app.client_manager.
|
|
3954
|
+
compute_client = self.app.client_manager.compute
|
|
3996
3955
|
|
|
3997
3956
|
server = compute_client.find_server(
|
|
3998
3957
|
parsed_args.server, ignore_missing=False
|
|
@@ -4031,7 +3990,7 @@ class RemoveNetwork(command.Command):
|
|
|
4031
3990
|
return parser
|
|
4032
3991
|
|
|
4033
3992
|
def take_action(self, parsed_args):
|
|
4034
|
-
compute_client = self.app.client_manager.
|
|
3993
|
+
compute_client = self.app.client_manager.compute
|
|
4035
3994
|
|
|
4036
3995
|
server = compute_client.find_server(
|
|
4037
3996
|
parsed_args.server, ignore_missing=False
|
|
@@ -4075,7 +4034,7 @@ class RemoveServerSecurityGroup(command.Command):
|
|
|
4075
4034
|
return parser
|
|
4076
4035
|
|
|
4077
4036
|
def take_action(self, parsed_args):
|
|
4078
|
-
compute_client = self.app.client_manager.
|
|
4037
|
+
compute_client = self.app.client_manager.compute
|
|
4079
4038
|
|
|
4080
4039
|
server = compute_client.find_server(
|
|
4081
4040
|
parsed_args.server, ignore_missing=False
|
|
@@ -4145,7 +4104,7 @@ volume from a server with status ``SHELVED`` or ``SHELVED_OFFLOADED``."""
|
|
|
4145
4104
|
return parser
|
|
4146
4105
|
|
|
4147
4106
|
def take_action(self, parsed_args):
|
|
4148
|
-
compute_client = self.app.client_manager.
|
|
4107
|
+
compute_client = self.app.client_manager.compute
|
|
4149
4108
|
volume_client = self.app.client_manager.sdk_connection.volume
|
|
4150
4109
|
|
|
4151
4110
|
server = compute_client.find_server(
|
|
@@ -4198,7 +4157,7 @@ server booted from a volume."""
|
|
|
4198
4157
|
return parser
|
|
4199
4158
|
|
|
4200
4159
|
def take_action(self, parsed_args):
|
|
4201
|
-
compute_client = self.app.client_manager.
|
|
4160
|
+
compute_client = self.app.client_manager.compute
|
|
4202
4161
|
image_client = self.app.client_manager.image
|
|
4203
4162
|
|
|
4204
4163
|
image_ref = None
|
|
@@ -4252,7 +4211,7 @@ release the new server and restart the old one."""
|
|
|
4252
4211
|
'--revert',
|
|
4253
4212
|
action="store_true",
|
|
4254
4213
|
help=_(
|
|
4255
|
-
'**Deprecated** Restore server state before resize'
|
|
4214
|
+
'**Deprecated** Restore server state before resize. '
|
|
4256
4215
|
"Replaced by the 'openstack server resize revert' and "
|
|
4257
4216
|
"'openstack server migration revert' commands"
|
|
4258
4217
|
),
|
|
@@ -4270,7 +4229,7 @@ release the new server and restart the old one."""
|
|
|
4270
4229
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
4271
4230
|
self.app.stdout.flush()
|
|
4272
4231
|
|
|
4273
|
-
compute_client = self.app.client_manager.
|
|
4232
|
+
compute_client = self.app.client_manager.compute
|
|
4274
4233
|
server = compute_client.find_server(
|
|
4275
4234
|
parsed_args.server, ignore_missing=False
|
|
4276
4235
|
)
|
|
@@ -4332,7 +4291,7 @@ Confirm (verify) success of resize operation and release the old server."""
|
|
|
4332
4291
|
return parser
|
|
4333
4292
|
|
|
4334
4293
|
def take_action(self, parsed_args):
|
|
4335
|
-
compute_client = self.app.client_manager.
|
|
4294
|
+
compute_client = self.app.client_manager.compute
|
|
4336
4295
|
server = compute_client.find_server(
|
|
4337
4296
|
parsed_args.server, ignore_missing=False
|
|
4338
4297
|
)
|
|
@@ -4380,7 +4339,7 @@ one."""
|
|
|
4380
4339
|
return parser
|
|
4381
4340
|
|
|
4382
4341
|
def take_action(self, parsed_args):
|
|
4383
|
-
compute_client = self.app.client_manager.
|
|
4342
|
+
compute_client = self.app.client_manager.compute
|
|
4384
4343
|
server = compute_client.find_server(
|
|
4385
4344
|
parsed_args.server, ignore_missing=False
|
|
4386
4345
|
)
|
|
@@ -4424,7 +4383,7 @@ class RestoreServer(command.Command):
|
|
|
4424
4383
|
return parser
|
|
4425
4384
|
|
|
4426
4385
|
def take_action(self, parsed_args):
|
|
4427
|
-
compute_client = self.app.client_manager.
|
|
4386
|
+
compute_client = self.app.client_manager.compute
|
|
4428
4387
|
for server in parsed_args.server:
|
|
4429
4388
|
server_id = compute_client.find_server(
|
|
4430
4389
|
server,
|
|
@@ -4447,7 +4406,7 @@ class ResumeServer(command.Command):
|
|
|
4447
4406
|
return parser
|
|
4448
4407
|
|
|
4449
4408
|
def take_action(self, parsed_args):
|
|
4450
|
-
compute_client = self.app.client_manager.
|
|
4409
|
+
compute_client = self.app.client_manager.compute
|
|
4451
4410
|
for server in parsed_args.server:
|
|
4452
4411
|
server_id = compute_client.find_server(
|
|
4453
4412
|
server,
|
|
@@ -4475,8 +4434,7 @@ class SetServer(command.Command):
|
|
|
4475
4434
|
password_group.add_argument(
|
|
4476
4435
|
'--password',
|
|
4477
4436
|
help=_(
|
|
4478
|
-
'Set the server password. '
|
|
4479
|
-
'This option requires cloud support.'
|
|
4437
|
+
'Set the server password. This option requires cloud support.'
|
|
4480
4438
|
),
|
|
4481
4439
|
)
|
|
4482
4440
|
password_group.add_argument(
|
|
@@ -4548,7 +4506,7 @@ class SetServer(command.Command):
|
|
|
4548
4506
|
return parser
|
|
4549
4507
|
|
|
4550
4508
|
def take_action(self, parsed_args):
|
|
4551
|
-
compute_client = self.app.client_manager.
|
|
4509
|
+
compute_client = self.app.client_manager.compute
|
|
4552
4510
|
server = compute_client.find_server(
|
|
4553
4511
|
parsed_args.server, ignore_missing=False
|
|
4554
4512
|
)
|
|
@@ -4666,7 +4624,7 @@ class ShelveServer(command.Command):
|
|
|
4666
4624
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
4667
4625
|
self.app.stdout.flush()
|
|
4668
4626
|
|
|
4669
|
-
compute_client = self.app.client_manager.
|
|
4627
|
+
compute_client = self.app.client_manager.compute
|
|
4670
4628
|
server_ids = []
|
|
4671
4629
|
|
|
4672
4630
|
for server in parsed_args.servers:
|
|
@@ -4761,7 +4719,7 @@ information for the server."""
|
|
|
4761
4719
|
return parser
|
|
4762
4720
|
|
|
4763
4721
|
def take_action(self, parsed_args):
|
|
4764
|
-
compute_client = self.app.client_manager.
|
|
4722
|
+
compute_client = self.app.client_manager.compute
|
|
4765
4723
|
image_client = self.app.client_manager.image
|
|
4766
4724
|
|
|
4767
4725
|
server = compute_client.find_server(
|
|
@@ -4891,7 +4849,7 @@ class SshServer(command.Command):
|
|
|
4891
4849
|
return parser
|
|
4892
4850
|
|
|
4893
4851
|
def take_action(self, parsed_args):
|
|
4894
|
-
compute_client = self.app.client_manager.
|
|
4852
|
+
compute_client = self.app.client_manager.compute
|
|
4895
4853
|
|
|
4896
4854
|
server = compute_client.find_server(
|
|
4897
4855
|
parsed_args.server, ignore_missing=False
|
|
@@ -4968,7 +4926,7 @@ class StartServer(command.Command):
|
|
|
4968
4926
|
parser.add_argument(
|
|
4969
4927
|
'--all-projects',
|
|
4970
4928
|
action='store_true',
|
|
4971
|
-
default=boolenv('ALL_PROJECTS'),
|
|
4929
|
+
default=envvars.boolenv('ALL_PROJECTS'),
|
|
4972
4930
|
help=_(
|
|
4973
4931
|
'Start server(s) in another project by name (admin only) '
|
|
4974
4932
|
'(can be specified using the ALL_PROJECTS envvar)'
|
|
@@ -4977,7 +4935,7 @@ class StartServer(command.Command):
|
|
|
4977
4935
|
return parser
|
|
4978
4936
|
|
|
4979
4937
|
def take_action(self, parsed_args):
|
|
4980
|
-
compute_client = self.app.client_manager.
|
|
4938
|
+
compute_client = self.app.client_manager.compute
|
|
4981
4939
|
for server in parsed_args.server:
|
|
4982
4940
|
server_id = compute_client.find_server(
|
|
4983
4941
|
server,
|
|
@@ -5003,16 +4961,16 @@ class StopServer(command.Command):
|
|
|
5003
4961
|
parser.add_argument(
|
|
5004
4962
|
'--all-projects',
|
|
5005
4963
|
action='store_true',
|
|
5006
|
-
default=boolenv('ALL_PROJECTS'),
|
|
4964
|
+
default=envvars.boolenv('ALL_PROJECTS'),
|
|
5007
4965
|
help=_(
|
|
5008
|
-
'Stop server(s) in another project by name (admin only)'
|
|
4966
|
+
'Stop server(s) in another project by name (admin only) '
|
|
5009
4967
|
'(can be specified using the ALL_PROJECTS envvar)'
|
|
5010
4968
|
),
|
|
5011
4969
|
)
|
|
5012
4970
|
return parser
|
|
5013
4971
|
|
|
5014
4972
|
def take_action(self, parsed_args):
|
|
5015
|
-
compute_client = self.app.client_manager.
|
|
4973
|
+
compute_client = self.app.client_manager.compute
|
|
5016
4974
|
for server in parsed_args.server:
|
|
5017
4975
|
server_id = compute_client.find_server(
|
|
5018
4976
|
server,
|
|
@@ -5037,7 +4995,7 @@ class SuspendServer(command.Command):
|
|
|
5037
4995
|
return parser
|
|
5038
4996
|
|
|
5039
4997
|
def take_action(self, parsed_args):
|
|
5040
|
-
compute_client = self.app.client_manager.
|
|
4998
|
+
compute_client = self.app.client_manager.compute
|
|
5041
4999
|
for server in parsed_args.server:
|
|
5042
5000
|
server_id = compute_client.find_server(
|
|
5043
5001
|
server,
|
|
@@ -5060,7 +5018,7 @@ class UnlockServer(command.Command):
|
|
|
5060
5018
|
return parser
|
|
5061
5019
|
|
|
5062
5020
|
def take_action(self, parsed_args):
|
|
5063
|
-
compute_client = self.app.client_manager.
|
|
5021
|
+
compute_client = self.app.client_manager.compute
|
|
5064
5022
|
for server in parsed_args.server:
|
|
5065
5023
|
server_id = compute_client.find_server(
|
|
5066
5024
|
server,
|
|
@@ -5083,7 +5041,7 @@ class UnpauseServer(command.Command):
|
|
|
5083
5041
|
return parser
|
|
5084
5042
|
|
|
5085
5043
|
def take_action(self, parsed_args):
|
|
5086
|
-
compute_client = self.app.client_manager.
|
|
5044
|
+
compute_client = self.app.client_manager.compute
|
|
5087
5045
|
for server in parsed_args.server:
|
|
5088
5046
|
server_id = compute_client.find_server(
|
|
5089
5047
|
server,
|
|
@@ -5105,7 +5063,7 @@ class UnrescueServer(command.Command):
|
|
|
5105
5063
|
return parser
|
|
5106
5064
|
|
|
5107
5065
|
def take_action(self, parsed_args):
|
|
5108
|
-
compute_client = self.app.client_manager.
|
|
5066
|
+
compute_client = self.app.client_manager.compute
|
|
5109
5067
|
server = compute_client.find_server(
|
|
5110
5068
|
parsed_args.server, ignore_missing=False
|
|
5111
5069
|
)
|
|
@@ -5172,7 +5130,7 @@ class UnsetServer(command.Command):
|
|
|
5172
5130
|
return parser
|
|
5173
5131
|
|
|
5174
5132
|
def take_action(self, parsed_args):
|
|
5175
|
-
compute_client = self.app.client_manager.
|
|
5133
|
+
compute_client = self.app.client_manager.compute
|
|
5176
5134
|
|
|
5177
5135
|
server = compute_client.find_server(
|
|
5178
5136
|
parsed_args.server, ignore_missing=False
|
|
@@ -5263,7 +5221,7 @@ class UnshelveServer(command.Command):
|
|
|
5263
5221
|
self.app.stdout.write(f'\rProgress: {progress}')
|
|
5264
5222
|
self.app.stdout.flush()
|
|
5265
5223
|
|
|
5266
|
-
compute_client = self.app.client_manager.
|
|
5224
|
+
compute_client = self.app.client_manager.compute
|
|
5267
5225
|
kwargs = {}
|
|
5268
5226
|
|
|
5269
5227
|
if parsed_args.availability_zone:
|
|
@@ -71,7 +71,7 @@ class CreateServerBackup(command.ShowOne):
|
|
|
71
71
|
self.app.stderr.write(f'\rProgress: {progress}')
|
|
72
72
|
self.app.stderr.flush()
|
|
73
73
|
|
|
74
|
-
compute_client = self.app.client_manager.
|
|
74
|
+
compute_client = self.app.client_manager.compute
|
|
75
75
|
|
|
76
76
|
server = compute_client.find_server(
|
|
77
77
|
parsed_args.server, ignore_missing=False
|