awscli 1.41.8__py3-none-any.whl → 1.41.9__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.
Files changed (36) hide show
  1. awscli/__init__.py +1 -1
  2. awscli/clidriver.py +3 -2
  3. awscli/customizations/cloudformation/deploy.py +5 -4
  4. awscli/customizations/cloudformation/package.py +3 -2
  5. awscli/customizations/cloudfront.py +3 -1
  6. awscli/customizations/cloudtrail/subscribe.py +5 -5
  7. awscli/customizations/cloudtrail/validation.py +6 -6
  8. awscli/customizations/codedeploy/deregister.py +5 -2
  9. awscli/customizations/codedeploy/push.py +5 -3
  10. awscli/customizations/codedeploy/register.py +5 -2
  11. awscli/customizations/codedeploy/systems.py +3 -1
  12. awscli/customizations/configservice/getstatus.py +3 -3
  13. awscli/customizations/datapipeline/__init__.py +4 -2
  14. awscli/customizations/datapipeline/createdefaultroles.py +4 -2
  15. awscli/customizations/dlm/createdefaultrole.py +4 -2
  16. awscli/customizations/eks/get_token.py +3 -2
  17. awscli/customizations/eks/update_kubeconfig.py +3 -2
  18. awscli/customizations/gamelift/getlog.py +3 -2
  19. awscli/customizations/gamelift/uploadbuild.py +6 -4
  20. awscli/customizations/logs/startlivetail.py +3 -3
  21. awscli/customizations/rds.py +3 -1
  22. awscli/customizations/removals.py +2 -0
  23. awscli/customizations/utils.py +2 -1
  24. awscli/customizations/waiters.py +3 -2
  25. awscli/testutils.py +5 -4
  26. awscli/utils.py +14 -0
  27. {awscli-1.41.8.dist-info → awscli-1.41.9.dist-info}/METADATA +2 -2
  28. {awscli-1.41.8.dist-info → awscli-1.41.9.dist-info}/RECORD +36 -36
  29. {awscli-1.41.8.data → awscli-1.41.9.data}/scripts/aws +0 -0
  30. {awscli-1.41.8.data → awscli-1.41.9.data}/scripts/aws.cmd +0 -0
  31. {awscli-1.41.8.data → awscli-1.41.9.data}/scripts/aws_bash_completer +0 -0
  32. {awscli-1.41.8.data → awscli-1.41.9.data}/scripts/aws_completer +0 -0
  33. {awscli-1.41.8.data → awscli-1.41.9.data}/scripts/aws_zsh_completer.sh +0 -0
  34. {awscli-1.41.8.dist-info → awscli-1.41.9.dist-info}/LICENSE.txt +0 -0
  35. {awscli-1.41.8.dist-info → awscli-1.41.9.dist-info}/WHEEL +0 -0
  36. {awscli-1.41.8.dist-info → awscli-1.41.9.dist-info}/top_level.txt +0 -0
awscli/__init__.py CHANGED
@@ -18,7 +18,7 @@ A Universal Command Line Environment for Amazon Web Services.
18
18
 
19
19
  import os
20
20
 
21
- __version__ = '1.41.8'
21
+ __version__ = '1.41.9'
22
22
 
23
23
  #
24
24
  # Get our data path to be added to botocore's search path
awscli/clidriver.py CHANGED
@@ -48,7 +48,7 @@ from awscli.help import (
48
48
  ServiceHelpCommand,
49
49
  )
50
50
  from awscli.plugin import load_plugins
51
- from awscli.utils import emit_top_level_args_parsed_event, write_exception
51
+ from awscli.utils import emit_top_level_args_parsed_event, write_exception, create_nested_client
52
52
  from botocore import __version__ as botocore_version
53
53
  from botocore import xform_name
54
54
 
@@ -692,7 +692,8 @@ class CLIOperationCaller:
692
692
  value is returned.
693
693
 
694
694
  """
695
- client = self._session.create_client(
695
+ client = create_nested_client(
696
+ self._session,
696
697
  service_name,
697
698
  region_name=parsed_globals.region,
698
699
  endpoint_url=parsed_globals.endpoint_url,
@@ -24,7 +24,7 @@ from awscli.customizations.cloudformation.yamlhelper import yaml_parse
24
24
 
25
25
  from awscli.customizations.commands import BasicCommand
26
26
  from awscli.compat import get_stdout_text_writer
27
- from awscli.utils import write_exception
27
+ from awscli.utils import create_nested_client, write_exception
28
28
 
29
29
  LOG = logging.getLogger(__name__)
30
30
 
@@ -267,8 +267,8 @@ class DeployCommand(BasicCommand):
267
267
 
268
268
  def _run_main(self, parsed_args, parsed_globals):
269
269
  cloudformation_client = \
270
- self._session.create_client(
271
- 'cloudformation', region_name=parsed_globals.region,
270
+ create_nested_client(
271
+ self._session, 'cloudformation', region_name=parsed_globals.region,
272
272
  endpoint_url=parsed_globals.endpoint_url,
273
273
  verify=parsed_globals.verify_ssl)
274
274
 
@@ -300,7 +300,8 @@ class DeployCommand(BasicCommand):
300
300
 
301
301
  bucket = parsed_args.s3_bucket
302
302
  if bucket:
303
- s3_client = self._session.create_client(
303
+ s3_client = create_nested_client(
304
+ self._session,
304
305
  "s3",
305
306
  config=Config(signature_version='s3v4'),
306
307
  region_name=parsed_globals.region,
@@ -24,6 +24,7 @@ from awscli.customizations.cloudformation.yamlhelper import yaml_dump
24
24
  from awscli.customizations.cloudformation import exceptions
25
25
  from awscli.customizations.commands import BasicCommand
26
26
  from awscli.customizations.s3uploader import S3Uploader
27
+ from awscli.utils import create_nested_client
27
28
 
28
29
  LOG = logging.getLogger(__name__)
29
30
 
@@ -124,8 +125,8 @@ class PackageCommand(BasicCommand):
124
125
  ]
125
126
 
126
127
  def _run_main(self, parsed_args, parsed_globals):
127
- s3_client = self._session.create_client(
128
- "s3",
128
+ s3_client = create_nested_client(
129
+ self._session, "s3",
129
130
  config=Config(signature_version='s3v4'),
130
131
  region_name=parsed_globals.region,
131
132
  verify=parsed_globals.verify_ssl)
@@ -21,6 +21,7 @@ from botocore.signers import CloudFrontSigner
21
21
  from awscli.arguments import CustomArgument
22
22
  from awscli.customizations.utils import validate_mutually_exclusive_handler
23
23
  from awscli.customizations.commands import BasicCommand
24
+ from awscli.utils import create_nested_client
24
25
 
25
26
 
26
27
  def register(event_handler):
@@ -172,7 +173,8 @@ class UpdateDefaultRootObject(CreateDefaultRootObject):
172
173
 
173
174
  def add_to_params(self, parameters, value):
174
175
  if value is not None:
175
- client = self.context['session'].create_client(
176
+ client = create_nested_client(
177
+ self.context['session'],
176
178
  'cloudfront',
177
179
  region_name=self.context['parsed_args'].region,
178
180
  endpoint_url=self.context['parsed_args'].endpoint_url,
@@ -17,9 +17,9 @@ import sys
17
17
  from .utils import get_account_id
18
18
  from awscli.customizations.commands import BasicCommand
19
19
  from awscli.customizations.utils import s3_bucket_exists
20
+ from awscli.utils import create_nested_client
20
21
  from botocore.exceptions import ClientError
21
22
 
22
-
23
23
  LOG = logging.getLogger(__name__)
24
24
  S3_POLICY_TEMPLATE = 'policy/S3/AWSCloudTrail-S3BucketPolicy-2014-12-17.json'
25
25
  SNS_POLICY_TEMPLATE = 'policy/SNS/AWSCloudTrail-SnsTopicPolicy-2014-12-17.json'
@@ -80,16 +80,16 @@ class CloudTrailSubscribe(BasicCommand):
80
80
 
81
81
  # Initialize services
82
82
  LOG.debug('Initializing S3, SNS and CloudTrail...')
83
- self.sts = self._session.create_client('sts', **client_args)
84
- self.s3 = self._session.create_client('s3', **client_args)
85
- self.sns = self._session.create_client('sns', **client_args)
83
+ self.sts = create_nested_client(self._session, 'sts', **client_args)
84
+ self.s3 = create_nested_client(self._session, 's3', **client_args)
85
+ self.sns = create_nested_client(self._session, 'sns', **client_args)
86
86
  self.region_name = self.s3.meta.region_name
87
87
 
88
88
  # If the endpoint is specified, it is designated for the cloudtrail
89
89
  # service. Not all of the other services will use it.
90
90
  if parsed_globals.endpoint_url is not None:
91
91
  client_args['endpoint_url'] = parsed_globals.endpoint_url
92
- self.cloudtrail = self._session.create_client('cloudtrail', **client_args)
92
+ self.cloudtrail = create_nested_client(self._session, 'cloudtrail', **client_args)
93
93
 
94
94
  def _call(self, options, parsed_globals):
95
95
  """
@@ -30,7 +30,7 @@ from awscli.customizations.cloudtrail.utils import get_trail_by_arn, \
30
30
  from awscli.customizations.commands import BasicCommand
31
31
  from botocore.exceptions import ClientError
32
32
  from awscli.schema import ParameterRequiredError
33
-
33
+ from awscli.utils import create_nested_client
34
34
 
35
35
  LOG = logging.getLogger(__name__)
36
36
  DATE_FORMAT = '%Y%m%dT%H%M%SZ'
@@ -193,7 +193,7 @@ class S3ClientProvider(object):
193
193
  def _create_client(self, region_name):
194
194
  """Creates an Amazon S3 client for the given region name"""
195
195
  if region_name not in self._client_cache:
196
- client = self._session.create_client('s3', region_name)
196
+ client = create_nested_client(self._session, 's3', region_name=region_name)
197
197
  # Remove the CLI error event that prevents exceptions.
198
198
  self._client_cache[region_name] = client
199
199
  return self._client_cache[region_name]
@@ -753,13 +753,13 @@ class CloudTrailValidateLogs(BasicCommand):
753
753
  self._session, self._source_region)
754
754
  client_args = {'region_name': parsed_globals.region,
755
755
  'verify': parsed_globals.verify_ssl}
756
- self.organization_client = self._session.create_client(
757
- 'organizations', **client_args)
756
+ self.organization_client = create_nested_client(
757
+ self._session, 'organizations', **client_args)
758
758
 
759
759
  if parsed_globals.endpoint_url is not None:
760
760
  client_args['endpoint_url'] = parsed_globals.endpoint_url
761
- self.cloudtrail_client = self._session.create_client(
762
- 'cloudtrail', **client_args)
761
+ self.cloudtrail_client = create_nested_client(
762
+ self._session, 'cloudtrail', **client_args)
763
763
 
764
764
  def _call(self):
765
765
  traverser = create_digest_traverser(
@@ -18,6 +18,7 @@ from botocore.exceptions import ClientError
18
18
  from awscli.customizations.commands import BasicCommand
19
19
  from awscli.customizations.codedeploy.utils import \
20
20
  validate_region, validate_instance_name, INSTANCE_NAME_ARG
21
+ from awscli.utils import create_nested_client
21
22
 
22
23
 
23
24
  class Deregister(BasicCommand):
@@ -48,13 +49,15 @@ class Deregister(BasicCommand):
48
49
  validate_region(params, parsed_globals)
49
50
  validate_instance_name(params)
50
51
 
51
- self.codedeploy = self._session.create_client(
52
+ self.codedeploy = create_nested_client(
53
+ self._session,
52
54
  'codedeploy',
53
55
  region_name=params.region,
54
56
  endpoint_url=parsed_globals.endpoint_url,
55
57
  verify=parsed_globals.verify_ssl
56
58
  )
57
- self.iam = self._session.create_client(
59
+ self.iam = create_nested_client(
60
+ self._session,
58
61
  'iam',
59
62
  region_name=params.region
60
63
  )
@@ -23,7 +23,7 @@ from botocore.exceptions import ClientError
23
23
  from awscli.customizations.codedeploy.utils import validate_s3_location
24
24
  from awscli.customizations.commands import BasicCommand
25
25
  from awscli.compat import BytesIO, ZIP_COMPRESSION_MODE
26
-
26
+ from awscli.utils import create_nested_client
27
27
 
28
28
  ONE_MB = 1 << 20
29
29
  MULTIPART_LIMIT = 6 * ONE_MB
@@ -107,13 +107,15 @@ class Push(BasicCommand):
107
107
 
108
108
  def _run_main(self, parsed_args, parsed_globals):
109
109
  self._validate_args(parsed_args)
110
- self.codedeploy = self._session.create_client(
110
+ self.codedeploy = create_nested_client(
111
+ self._session,
111
112
  'codedeploy',
112
113
  region_name=parsed_globals.region,
113
114
  endpoint_url=parsed_globals.endpoint_url,
114
115
  verify=parsed_globals.verify_ssl
115
116
  )
116
- self.s3 = self._session.create_client(
117
+ self.s3 = create_nested_client(
118
+ self._session,
117
119
  's3',
118
120
  region_name=parsed_globals.region
119
121
  )
@@ -18,6 +18,7 @@ from awscli.customizations.codedeploy.systems import DEFAULT_CONFIG_FILE
18
18
  from awscli.customizations.codedeploy.utils import \
19
19
  validate_region, validate_instance_name, validate_tags, \
20
20
  validate_iam_user_arn, INSTANCE_NAME_ARG, IAM_USER_ARN_ARG
21
+ from awscli.utils import create_nested_client
21
22
 
22
23
 
23
24
  class Register(BasicCommand):
@@ -73,13 +74,15 @@ class Register(BasicCommand):
73
74
  validate_tags(params)
74
75
  validate_iam_user_arn(params)
75
76
 
76
- self.codedeploy = self._session.create_client(
77
+ self.codedeploy = create_nested_client(
78
+ self._session,
77
79
  'codedeploy',
78
80
  region_name=params.region,
79
81
  endpoint_url=parsed_globals.endpoint_url,
80
82
  verify=parsed_globals.verify_ssl
81
83
  )
82
- self.iam = self._session.create_client(
84
+ self.iam = create_nested_client(
85
+ self._session,
83
86
  'iam',
84
87
  region_name=params.region
85
88
  )
@@ -14,6 +14,7 @@
14
14
  import ctypes
15
15
  import os
16
16
  import subprocess
17
+ from awscli.utils import create_nested_client
17
18
 
18
19
  DEFAULT_CONFIG_FILE = 'codedeploy.onpremises.yml'
19
20
 
@@ -26,7 +27,8 @@ class System:
26
27
 
27
28
  def __init__(self, params):
28
29
  self.session = params.session
29
- self.s3 = self.session.create_client(
30
+ self.s3 = create_nested_client(
31
+ self.session,
30
32
  's3',
31
33
  region_name=params.region
32
34
  )
@@ -13,7 +13,7 @@
13
13
  import sys
14
14
 
15
15
  from awscli.customizations.commands import BasicCommand
16
-
16
+ from awscli.utils import create_nested_client
17
17
 
18
18
  def register_get_status(cli):
19
19
  cli.register('building-command-table.configservice', add_get_status)
@@ -44,8 +44,8 @@ class GetStatusCommand(BasicCommand):
44
44
  'region_name': parsed_globals.region,
45
45
  'endpoint_url': parsed_globals.endpoint_url
46
46
  }
47
- self._config_client = self._session.create_client('config',
48
- **client_args)
47
+ self._config_client = create_nested_client(self._session, 'config',
48
+ **client_args)
49
49
 
50
50
  def _check_configuration_recorders(self):
51
51
  status = self._config_client.describe_configuration_recorder_status()
@@ -22,7 +22,7 @@ from awscli.customizations.datapipeline.createdefaultroles \
22
22
  import CreateDefaultRoles
23
23
  from awscli.customizations.datapipeline.listrunsformatter \
24
24
  import ListRunsFormatter
25
-
25
+ from awscli.utils import create_nested_client
26
26
 
27
27
  DEFINITION_HELP_TEXT = """\
28
28
  The JSON pipeline definition. If the pipeline definition
@@ -361,7 +361,9 @@ class ListRunsCommand(BasicCommand):
361
361
  def _set_client(self, parsed_globals):
362
362
  # This is called from _run_main and is used to ensure that we have
363
363
  # a service/endpoint object to work with.
364
- self.client = self._session.create_client(
364
+ from awscli.utils import create_nested_client
365
+ self.client = create_nested_client(
366
+ self._session,
365
367
  'datapipeline',
366
368
  region_name=parsed_globals.region,
367
369
  endpoint_url=parsed_globals.endpoint_url,
@@ -25,6 +25,8 @@ from awscli.customizations.datapipeline.constants \
25
25
  from awscli.customizations.commands import BasicCommand
26
26
  from awscli.customizations.datapipeline.translator \
27
27
  import display_response, dict_to_string, get_region
28
+ from awscli.utils import create_nested_client
29
+
28
30
  from botocore.exceptions import ClientError
29
31
 
30
32
  LOG = logging.getLogger(__name__)
@@ -69,8 +71,8 @@ class CreateDefaultRoles(BasicCommand):
69
71
  """Call to run the commands"""
70
72
  self._region = get_region(self._session, parsed_globals)
71
73
  self._endpoint_url = parsed_globals.endpoint_url
72
- self._iam_client = self._session.create_client(
73
- 'iam',
74
+ self._iam_client = create_nested_client(
75
+ self._session, 'iam',
74
76
  region_name=self._region,
75
77
  endpoint_url=self._endpoint_url,
76
78
  verify=parsed_globals.verify_ssl
@@ -23,6 +23,7 @@ from awscli.customizations.dlm.constants \
23
23
  POLICY_ARN_PATTERN, \
24
24
  RESOURCE_TYPE_SNAPSHOT, \
25
25
  RESOURCE_TYPE_IMAGE
26
+ from awscli.utils import create_nested_client
26
27
 
27
28
  LOG = logging.getLogger(__name__)
28
29
 
@@ -98,8 +99,9 @@ class CreateDefaultRole(BasicCommand):
98
99
  self._region = get_region(self._session, parsed_globals)
99
100
  self._endpoint_url = parsed_args.iam_endpoint
100
101
  self._resource_type = parsed_args.resource_type
101
- self._iam_client = IAM(self._session.create_client(
102
- 'iam',
102
+ from awscli.utils import create_nested_client
103
+ self._iam_client = IAM(create_nested_client(
104
+ self._session, 'iam',
103
105
  region_name=self._region,
104
106
  endpoint_url=self._endpoint_url,
105
107
  verify=parsed_globals.verify_ssl
@@ -21,6 +21,7 @@ from botocore.signers import RequestSigner
21
21
  from botocore.model import ServiceId
22
22
 
23
23
  from awscli.formatter import get_formatter
24
+ from awscli.utils import create_nested_client
24
25
  from awscli.customizations.commands import BasicCommand
25
26
  from awscli.customizations.utils import uni_print
26
27
  from awscli.customizations.utils import validate_mutually_exclusive
@@ -247,12 +248,12 @@ class STSClientFactory(object):
247
248
  client_kwargs['aws_access_key_id'] = creds['AccessKeyId']
248
249
  client_kwargs['aws_secret_access_key'] = creds['SecretAccessKey']
249
250
  client_kwargs['aws_session_token'] = creds['SessionToken']
250
- sts = self._session.create_client('sts', **client_kwargs)
251
+ sts = create_nested_client(self._session, 'sts', **client_kwargs)
251
252
  self._register_k8s_aws_id_handlers(sts)
252
253
  return sts
253
254
 
254
255
  def _get_role_credentials(self, region_name, role_arn):
255
- sts = self._session.create_client('sts', region_name)
256
+ sts = create_nested_client(self._session, 'sts', region_name=region_name)
256
257
  return sts.assume_role(
257
258
  RoleArn=role_arn, RoleSessionName='EKSGetTokenAuth'
258
259
  )['Credentials']
@@ -26,6 +26,7 @@ from awscli.customizations.eks.kubeconfig import (Kubeconfig,
26
26
  KubeconfigValidator,
27
27
  KubeconfigAppender)
28
28
  from awscli.customizations.eks.ordered_yaml import ordered_yaml_dump
29
+ from awscli.utils import create_nested_client
29
30
 
30
31
  LOG = logging.getLogger(__name__)
31
32
 
@@ -270,7 +271,7 @@ class EKSClient(object):
270
271
 
271
272
  # Handle role assumption if needed
272
273
  if getattr(self._parsed_args, 'assume_role_arn', None):
273
- sts_client = self._session.create_client('sts')
274
+ sts_client = create_nested_client(self._session, 'sts')
274
275
  credentials = sts_client.assume_role(
275
276
  RoleArn=self._parsed_args.assume_role_arn,
276
277
  RoleSessionName='EKSDescribeClusterSession'
@@ -282,7 +283,7 @@ class EKSClient(object):
282
283
  "aws_session_token": credentials["SessionToken"],
283
284
  })
284
285
 
285
- client = self._session.create_client("eks", **client_kwargs)
286
+ client = create_nested_client(self._session, "eks", **client_kwargs)
286
287
  full_description = client.describe_cluster(name=self._cluster_name)
287
288
  cluster = full_description.get("cluster")
288
289
 
@@ -15,6 +15,7 @@ from functools import partial
15
15
 
16
16
  from awscli.compat import urlopen
17
17
  from awscli.customizations.commands import BasicCommand
18
+ from awscli.utils import create_nested_client
18
19
 
19
20
 
20
21
  class GetGameSessionLogCommand(BasicCommand):
@@ -28,8 +29,8 @@ class GetGameSessionLogCommand(BasicCommand):
28
29
  ]
29
30
 
30
31
  def _run_main(self, args, parsed_globals):
31
- client = self._session.create_client(
32
- 'gamelift', region_name=parsed_globals.region,
32
+ client = create_nested_client(
33
+ self._session, 'gamelift', region_name=parsed_globals.region,
33
34
  endpoint_url=parsed_globals.endpoint_url,
34
35
  verify=parsed_globals.verify_ssl
35
36
  )
@@ -21,6 +21,7 @@ from s3transfer import S3Transfer
21
21
 
22
22
  from awscli.customizations.commands import BasicCommand
23
23
  from awscli.customizations.s3.utils import human_readable_size
24
+ from awscli.utils import create_nested_client
24
25
 
25
26
 
26
27
  class UploadBuildCommand(BasicCommand):
@@ -43,8 +44,8 @@ class UploadBuildCommand(BasicCommand):
43
44
  ]
44
45
 
45
46
  def _run_main(self, args, parsed_globals):
46
- gamelift_client = self._session.create_client(
47
- 'gamelift', region_name=parsed_globals.region,
47
+ gamelift_client = create_nested_client(
48
+ self._session, 'gamelift', region_name=parsed_globals.region,
48
49
  endpoint_url=parsed_globals.endpoint_url,
49
50
  verify=parsed_globals.verify_ssl
50
51
  )
@@ -81,8 +82,9 @@ class UploadBuildCommand(BasicCommand):
81
82
  access_key = upload_credentials['AccessKeyId']
82
83
  secret_key = upload_credentials['SecretAccessKey']
83
84
  session_token = upload_credentials['SessionToken']
84
- s3_client = self._session.create_client(
85
- 's3', aws_access_key_id=access_key,
85
+ s3_client = create_nested_client(
86
+ self._session, 's3',
87
+ aws_access_key_id=access_key,
86
88
  aws_secret_access_key=secret_key,
87
89
  aws_session_token=session_token,
88
90
  region_name=parsed_globals.region,
@@ -19,7 +19,7 @@ import time
19
19
 
20
20
  from awscli.compat import get_stdout_text_writer
21
21
  from awscli.customizations.commands import BasicCommand
22
- from awscli.utils import is_a_tty
22
+ from awscli.utils import is_a_tty, create_nested_client
23
23
 
24
24
 
25
25
  DESCRIPTION = (
@@ -240,8 +240,8 @@ class StartLiveTailCommand(BasicCommand):
240
240
  self._output = get_stdout_text_writer()
241
241
 
242
242
  def _get_client(self, parsed_globals):
243
- return self._session.create_client(
244
- "logs",
243
+ return create_nested_client(
244
+ self._session, "logs",
245
245
  region_name=parsed_globals.region,
246
246
  endpoint_url=parsed_globals.endpoint_url,
247
247
  verify=parsed_globals.verify_ssl,
@@ -29,6 +29,7 @@ from awscli.clidriver import CLIOperationCaller
29
29
  from awscli.customizations import utils
30
30
  from awscli.customizations.commands import BasicCommand
31
31
  from awscli.customizations.utils import uni_print
32
+ from awscli.utils import create_nested_client
32
33
 
33
34
 
34
35
  def register_rds_modify_split(cli):
@@ -95,7 +96,8 @@ class GenerateDBAuthTokenCommand(BasicCommand):
95
96
  ]
96
97
 
97
98
  def _run_main(self, parsed_args, parsed_globals):
98
- rds = self._session.create_client(
99
+ rds = create_nested_client(
100
+ self._session,
99
101
  'rds',
100
102
  region_name=parsed_globals.region,
101
103
  endpoint_url=parsed_globals.endpoint_url,
@@ -66,6 +66,8 @@ def register_removals(event_handler):
66
66
  remove_commands=['chat'])
67
67
  cmd_remover.remove(on_event='building-command-table.iotsitewise',
68
68
  remove_commands=['invoke-assistant'])
69
+ cmd_remover.remove(on_event='building-command-table.logs',
70
+ remove_commands=['get-log-object'])
69
71
 
70
72
 
71
73
  class CommandRemover(object):
@@ -18,6 +18,7 @@ import copy
18
18
  import sys
19
19
 
20
20
  from botocore.exceptions import ClientError
21
+ from awscli.utils import create_nested_client
21
22
 
22
23
 
23
24
  def rename_argument(argument_table, existing_name, new_name):
@@ -172,7 +173,7 @@ def create_client_from_parsed_globals(session, service_name, parsed_globals,
172
173
  client_args['verify'] = parsed_globals.verify_ssl
173
174
  if overrides:
174
175
  client_args.update(overrides)
175
- return session.create_client(service_name, **client_args)
176
+ return create_nested_client(session, service_name, **client_args)
176
177
 
177
178
 
178
179
  def uni_print(statement, out_file=None):
@@ -16,6 +16,7 @@ from botocore.exceptions import DataNotFoundError
16
16
  from awscli.clidriver import ServiceOperation
17
17
  from awscli.customizations.commands import BasicCommand, BasicHelp, \
18
18
  BasicDocHandler
19
+ from awscli.utils import create_nested_client
19
20
 
20
21
 
21
22
  def register_add_waiters(cli):
@@ -200,8 +201,8 @@ class WaiterCaller(object):
200
201
  self._waiter_name = waiter_name
201
202
 
202
203
  def invoke(self, service_name, operation_name, parameters, parsed_globals):
203
- client = self._session.create_client(
204
- service_name, region_name=parsed_globals.region,
204
+ client = create_nested_client(
205
+ self._session, service_name, region_name=parsed_globals.region,
205
206
  endpoint_url=parsed_globals.endpoint_url,
206
207
  verify=parsed_globals.verify_ssl)
207
208
  waiter = client.get_waiter(xform_name(self._waiter_name))
awscli/testutils.py CHANGED
@@ -43,6 +43,7 @@ from botocore.exceptions import ClientError, WaiterError
43
43
 
44
44
  import awscli.clidriver
45
45
  from awscli.compat import BytesIO, StringIO
46
+ from awscli.utils import create_nested_client
46
47
 
47
48
  _LOADER = botocore.loaders.Loader()
48
49
  INTEG_LOG = logging.getLogger('awscli.tests.integration')
@@ -143,7 +144,7 @@ def create_bucket(session, name=None, region=None):
143
144
  """
144
145
  if not region:
145
146
  region = 'us-west-2'
146
- client = session.create_client('s3', region_name=region)
147
+ client = create_nested_client(session, 's3', region_name=region)
147
148
  if name:
148
149
  bucket_name = name
149
150
  else:
@@ -172,7 +173,7 @@ def create_dir_bucket(session, name=None, location=None):
172
173
  if not location:
173
174
  location = ('us-west-2', 'usw2-az1')
174
175
  region, az = location
175
- client = session.create_client('s3', region_name=region)
176
+ client = create_nested_client(session, 's3', region_name=region)
176
177
  if name:
177
178
  bucket_name = name
178
179
  else:
@@ -778,7 +779,7 @@ class BaseS3CLICommand(unittest.TestCase):
778
779
  self.session = botocore.session.get_session()
779
780
  self.regions = {}
780
781
  self.region = 'us-west-2'
781
- self.client = self.session.create_client('s3', region_name=self.region)
782
+ self.client = create_nested_client(self.session, 's3', region_name=self.region)
782
783
  self.extra_setup()
783
784
 
784
785
  def extra_setup(self):
@@ -799,7 +800,7 @@ class BaseS3CLICommand(unittest.TestCase):
799
800
 
800
801
  def create_client_for_bucket(self, bucket_name):
801
802
  region = self.regions.get(bucket_name, self.region)
802
- client = self.session.create_client('s3', region_name=region)
803
+ client = create_nested_client(self.session, 's3', region_name=region)
803
804
  return client
804
805
 
805
806
  def assert_key_contents_equal(self, bucket, key, expected_contents):
awscli/utils.py CHANGED
@@ -311,3 +311,17 @@ class ShapeRecordingVisitor(BaseShapeVisitor):
311
311
 
312
312
  def visit_shape(self, shape):
313
313
  self.visited.append(shape)
314
+
315
+ # NOTE: The following interfaces are considered private and are subject
316
+ # to abrupt breaking changes. Please do not use them directly.
317
+
318
+ try:
319
+ from botocore.utils import create_nested_client as create_client
320
+ except ImportError:
321
+
322
+ def create_client(session, service_name, **kwargs):
323
+ return session.create_client(service_name, **kwargs)
324
+
325
+
326
+ def create_nested_client(session, service_name, **kwargs):
327
+ return create_client(session, service_name, **kwargs)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: awscli
3
- Version: 1.41.8
3
+ Version: 1.41.9
4
4
  Summary: Universal Command Line Environment for AWS.
5
5
  Home-page: http://aws.amazon.com/cli/
6
6
  Author: Amazon Web Services
@@ -23,7 +23,7 @@ Classifier: Programming Language :: Python :: 3.12
23
23
  Classifier: Programming Language :: Python :: 3.13
24
24
  Requires-Python: >= 3.9
25
25
  License-File: LICENSE.txt
26
- Requires-Dist: botocore (==1.39.8)
26
+ Requires-Dist: botocore (==1.39.9)
27
27
  Requires-Dist: docutils (<=0.19,>=0.18.1)
28
28
  Requires-Dist: s3transfer (<0.14.0,>=0.13.0)
29
29
  Requires-Dist: PyYAML (<6.1,>=3.10)
@@ -1,11 +1,11 @@
1
- awscli/__init__.py,sha256=4DzhJ86VoitSY2QAwKenJP6Uuz8LoOeGcXirtxGu9DA,1533
1
+ awscli/__init__.py,sha256=evGVLal9b0nnhqpIEv0U4kufMjqb2dofX4Xbr_8wwus,1533
2
2
  awscli/__main__.py,sha256=iBjOg0tBxNlhzTi_tyc1G0SMGBvHMVvBJzX3JqYaooY,662
3
3
  awscli/alias.py,sha256=Jj2jetpajUMcjqx9tFhHUOKpzLChQygnH2zqDFfmgIM,11315
4
4
  awscli/argparser.py,sha256=3Pxx-vWytdV985Y6MIl9DeutUXyehIvACIs_PDby8GI,7650
5
5
  awscli/argprocess.py,sha256=LFTcEElZCNKR3EP9Ovs7DlwUCVoLyaG-yXpf_CpR1lw,21180
6
6
  awscli/arguments.py,sha256=CW12iM9KyQRNcQAFhX4nvWvxb15XxdDuQfXRwQ-CBn0,18808
7
7
  awscli/clidocs.py,sha256=4WzjkUyiZGjfn7C228D3436695CYF8oVpfFsdJaw58k,31844
8
- awscli/clidriver.py,sha256=ME3E7RINO5zKb2Mu8fovLXEm8iFRXEVaaQW_7W5DaVY,26486
8
+ awscli/clidriver.py,sha256=DCUU4LpcoKNGBagl35P2t4xSuSinKWdPmcNPCXB6AJE,26528
9
9
  awscli/commands.py,sha256=fJVPJajqYCl9pieIphIVYYQvbwdCbufkDj87I7W0JwE,2097
10
10
  awscli/compat.py,sha256=rdygqFsDwb2W_0ehi7PLEA6u49yh-8UoUMIPi0LKIoU,16451
11
11
  awscli/completer.py,sha256=vNCS1kr1Q_JO8fLh5YGwfUK3sSaDp3k8rrpa_cCIgY4,5986
@@ -18,10 +18,10 @@ awscli/plugin.py,sha256=B3wgRerhgFK1v-QQeASYv2VNLSa9oMuD4X_hcLSescI,2265
18
18
  awscli/schema.py,sha256=vNFkuE2BsgeqesRTWRhuSU341eqiKuMF5QAJvClyaKw,6394
19
19
  awscli/shorthand.py,sha256=ziXUkFyJGcDG8dMQzDMgdUSpZpe88gGBRk5Skkg60W4,18379
20
20
  awscli/table.py,sha256=VCyPjNHK4wO_-KKRz7zvuuNp2RLHb6DUPVbPdueji3w,15459
21
- awscli/testutils.py,sha256=qIC9pOiY-aOhVQyn3CIAeEFjIQ3NAnxozKPJMLRY4Ec,36901
21
+ awscli/testutils.py,sha256=JiJvwrZWtACRuVbRYfQthbZTE8LrFA7WOMg09pD7Pys,36979
22
22
  awscli/text.py,sha256=pr40cSMkGWZ5n-VXMcEKCo1xO5bK3nUbDK3WLwy2HFE,4177
23
23
  awscli/topictags.py,sha256=A1HDK4jE2ZxReOVM1sftjInQXVWL1DRz8DLS5JIGMag,12635
24
- awscli/utils.py,sha256=cV8Kps2r4TzvKuIu90MuikzbLe39JoapRMXt-YlDf9E,9701
24
+ awscli/utils.py,sha256=Y6oRMAA7T4cbnbxnsonGKaroiSP51EzAkoMUB9EvIO0,10169
25
25
  awscli/bcdoc/__init__.py,sha256=V2g87AefB2DOD9_3xIF5k9Nv5ttb4_gNJOVvSF0Mp3s,588
26
26
  awscli/bcdoc/docevents.py,sha256=h99ATaPm-Yb0KsrOTO6eaItjMMQzdA6W63R927etjWQ,4877
27
27
  awscli/bcdoc/docstringparser.py,sha256=-QMoUsJrmnI-G46YbDm2UACU4jpHXonwouG9CFAlzNg,5679
@@ -36,7 +36,7 @@ awscli/customizations/assumerole.py,sha256=FUCgT_om8pao6QQyweTpI3sQ-5PPv4TvBUcPB
36
36
  awscli/customizations/awslambda.py,sha256=JeVW9IVSmFLSwzc7yuf3crFwAl1UZcdEq4jwypLJ5-o,5978
37
37
  awscli/customizations/binaryhoist.py,sha256=FAcYkwL7IAGAtwQF1ZjyEZE6iZQr0pPU8IiSFgbierI,3638
38
38
  awscli/customizations/cliinputjson.py,sha256=XWru9NHF0jNuhrA79xQY03vJPyRpe2Jth9tyXnsGqL8,3883
39
- awscli/customizations/cloudfront.py,sha256=LxojmI1kmrq6KkkHQs2i1oSm3IYBFfm6Fq2KZHxwwmU,10578
39
+ awscli/customizations/cloudfront.py,sha256=bkMmqM2xJ14_6SeSCSglpbWLziMeGgGaPQM56zRwAYo,10648
40
40
  awscli/customizations/cloudsearch.py,sha256=0WKfcUTr2l2FhdeJ2FiX5XZXZb5EIIHAbS1d2tVPLko,4494
41
41
  awscli/customizations/cloudsearchdomain.py,sha256=_uQctHHxAqSt_d4snYIWS3bEDeordU0jpZLb5xtYjzM,1074
42
42
  awscli/customizations/codecommit.py,sha256=_v4MPOIeD1JwuLBLuK05nFYVC8klwQlQWOFFIVZlr5I,7487
@@ -60,9 +60,9 @@ awscli/customizations/paginate.py,sha256=S1FQzScLUId9-r-9Z1qeLHN0BIhvlcq96yQsUcx
60
60
  awscli/customizations/preview.py,sha256=5r4RHFS19pxZ79cimbPgL1YOstOjK9OvgUeaZAP0YA8,5189
61
61
  awscli/customizations/putmetricdata.py,sha256=FczJBZUGb4mXtSalD1ihwDSjMSDlxZ5V1jm3KpCi-ps,6914
62
62
  awscli/customizations/quicksight.py,sha256=r5XrHPIofOfKVZrE6JGUjDKovkgOf19nrsVVzWOHGDY,1457
63
- awscli/customizations/rds.py,sha256=49mfeoYOFtgO5iodjp8eG0H_DUQ7Y5W0NfPCLXd97HQ,4273
63
+ awscli/customizations/rds.py,sha256=PO3MgVQl1rw2EVIO89y46SQTFXk_zjP2vKFWqYmTLRU,4339
64
64
  awscli/customizations/rekognition.py,sha256=NHajCaaLkSC5YDmtJe-EdLdgmObrQetj6as0Diu_d3o,1813
65
- awscli/customizations/removals.py,sha256=-qS3C2TSHAPEEFc-lY5Ia1l74l4gNwFK6N8Ubkvg-MM,4435
65
+ awscli/customizations/removals.py,sha256=zHV9rKpaACnNwVhiSpNfKAlVWh_FFAV2_npoSz-dzlA,4558
66
66
  awscli/customizations/route53.py,sha256=TyEnjZz7bPegLQ23X5r1tNUJ1gSAmGeQBaF98t5PLmU,1187
67
67
  awscli/customizations/s3errormsg.py,sha256=STKQ3714dnXOzPSPszCikhv5hoRBUJnk-u0kFp7FaEU,2480
68
68
  awscli/customizations/s3events.py,sha256=ZcNmDN26dXxLrLawawl9jRFWqK1lMEQpty0YRNjBQws,4795
@@ -76,33 +76,33 @@ awscli/customizations/socialmessaging.py,sha256=kTD-t7bILCqOMNW3orhxkYHgZwWK-ZF4
76
76
  awscli/customizations/streamingoutputarg.py,sha256=l_najvumCkwFy40GfKSRyhf3xzjkaYwuPiDZ2RwWNtk,3900
77
77
  awscli/customizations/toplevelbool.py,sha256=3ssyh2UCwR0qM-HQH0xpBgXjVSSPzYw5II4E_wSjj3A,5902
78
78
  awscli/customizations/translate.py,sha256=rqDoDtCHjv_yYqXoR2OIOSws1txtTVTeddLWAVZ6GjE,2458
79
- awscli/customizations/utils.py,sha256=L8-YMiyqtZr-N1dlTsSj9ieOXKiD8PiBlFlCKRob3pQ,8461
80
- awscli/customizations/waiters.py,sha256=y1k7XVkOzG_1Nj3spq7GX5Io1pdCbssezWviFh5swLI,9806
79
+ awscli/customizations/utils.py,sha256=ynbF4xQhY8X5U1SA69V-Ro_-7pSLYZceQ9c0XoGwFd0,8515
80
+ awscli/customizations/waiters.py,sha256=e0cHfnaOhR0Zz7DCTj3McP_TPfKHEc_JlHyy3uP2CIQ,9860
81
81
  awscli/customizations/cloudformation/__init__.py,sha256=rcZDPPnatHSw8I0ogt3eHOL4HKIW3DbUFKEZdf76TEg,1281
82
82
  awscli/customizations/cloudformation/artifact_exporter.py,sha256=evvQTSzPkv4bUyYr318HqwQwfkxiz0cMCxfYr8x2R6o,23617
83
- awscli/customizations/cloudformation/deploy.py,sha256=asnSL7rMIqWEPIf8chH3rtYbGudGOhQBP6bem2Hl9No,15507
83
+ awscli/customizations/cloudformation/deploy.py,sha256=d1RhgZ2Tx8HTqaRwae-_VOpN8c4gTyjRM0MC0DGzKN8,15561
84
84
  awscli/customizations/cloudformation/deployer.py,sha256=buWrrr0dt4VkOGrObrtDq_YS_m-hZYENIS29CK4Q6ao,9848
85
85
  awscli/customizations/cloudformation/exceptions.py,sha256=G5F8FB8lxSzKMHmDZPhl4UdbrjB87mUWaBzgY901JJA,2137
86
- awscli/customizations/cloudformation/package.py,sha256=8Sxhj_OrNQJ1CAQQhuPvt2z0NcezlHICmr5Ut-U4g4g,6062
86
+ awscli/customizations/cloudformation/package.py,sha256=cugfhLY2R8ZY97kOK_XLd9GfK8PxF0LVN1xe4mirEkU,6116
87
87
  awscli/customizations/cloudformation/yamlhelper.py,sha256=PwSRzdpL2lOhhwlnmtLCp3eJOxrYwWmvQ8bimpzQXks,3305
88
88
  awscli/customizations/cloudtrail/__init__.py,sha256=6IMtaLoCrMMf1LdsmLLp5Q-uLeH_hpyCHIH1o2boYPQ,1337
89
- awscli/customizations/cloudtrail/subscribe.py,sha256=9tbGsMHLNXSHsgX8Nznu0eZOQtzDrc2iAAIxJF8KIWY,13665
89
+ awscli/customizations/cloudtrail/subscribe.py,sha256=kvpviUZqm9E4x5RSSY2UVpM5UHStSA5cCjogF1ap1iA,13742
90
90
  awscli/customizations/cloudtrail/utils.py,sha256=dd-2CmiEbqXatOYOG5W7L-rpuxTatijdMJ-qmASrCwI,1224
91
- awscli/customizations/cloudtrail/validation.py,sha256=JpbdWT0nqy8Djlt1t7aOPw2rW75y-JyDO5cvYKtOV94,40114
91
+ awscli/customizations/cloudtrail/validation.py,sha256=w18DcXeoDHhLoaCpz1kEUjxI2O6V-Q-rG61Oz2uIFII,40195
92
92
  awscli/customizations/codeartifact/__init__.py,sha256=dgIMOQhLehpxG8pAzs8XWB3J9HGD9ZxLYLJu-UVV0wo,334
93
93
  awscli/customizations/codeartifact/login.py,sha256=h_rH0-HzvbX5ri48IZVLA-64iROm0A1HE371WyXlwcY,27648
94
94
  awscli/customizations/codedeploy/__init__.py,sha256=FT9vGCIrGANuGV5vZ8j_0DljBF6ocxqokqBGzPqFCio,565
95
95
  awscli/customizations/codedeploy/codedeploy.py,sha256=lQzSYdJK7Asz1EEspzRTmMVypnIRyOp27kIjHRobMQU,2212
96
- awscli/customizations/codedeploy/deregister.py,sha256=BBDv1lT5Hp_CUMAy99gGxRWtuzfPxbNen7xd0iq9IX0,6205
96
+ awscli/customizations/codedeploy/deregister.py,sha256=uW0NaP68MtjYA2gnIQXyQwiy_dkxUt4-wyN3tlRGSf4,6291
97
97
  awscli/customizations/codedeploy/install.py,sha256=LZ9yeZuPolQdJ3CjR7R07Uwh9WOlOX5WgBbdxVAbT4k,4205
98
98
  awscli/customizations/codedeploy/locationargs.py,sha256=JupUxddF8XDUe0mSs3JiYKp7esCo6RuWGjo5o6N8-vc,5910
99
- awscli/customizations/codedeploy/push.py,sha256=5npzsM5x06ZN8LMjOp0dACc5a2kBnY1kCL3-BYsrIdY,10647
100
- awscli/customizations/codedeploy/register.py,sha256=xvEm7u_kF3-7zP8pExQI9zQASPpU4h_ZhisKg0FxGJw,7196
101
- awscli/customizations/codedeploy/systems.py,sha256=DivO1j6wvZiWXSgiJ-trfEvJWH9uPLIAd0nGpo4NlKA,7661
99
+ awscli/customizations/codedeploy/push.py,sha256=JwGvvgWEl2EXAzZMCO5m8tGhud39GMcDMnoINWtoulU,10732
100
+ awscli/customizations/codedeploy/register.py,sha256=At9e2CExkarv_9hGF58PPfWTIy_Wgn7g_1fEbm0n7Sg,7282
101
+ awscli/customizations/codedeploy/systems.py,sha256=caLyE4RS3OllcZ9bsmV__3uvKNLJEtUPiESPunDy0YM,7727
102
102
  awscli/customizations/codedeploy/uninstall.py,sha256=TwtuDoqBdxK95GGp3UxQa2KqMj7T9aikhAKPxhSqYJs,2202
103
103
  awscli/customizations/codedeploy/utils.py,sha256=EalPIWhadO7CWeIF16f5kc_GQaf0YhRohFsstD0HM5w,4640
104
104
  awscli/customizations/configservice/__init__.py,sha256=_5TbmyGbXMuErfCQRk40A91pi_Z7qVDO-_4GVyOz41U,565
105
- awscli/customizations/configservice/getstatus.py,sha256=1wBv6nbhANKyDkXA56TdS-XushnsQNVK2fiz_pKcX7c,4258
105
+ awscli/customizations/configservice/getstatus.py,sha256=Zg98ig7WRAc5gnCunAnI_NFgvw21KKafhNMB-8wxQmU,4296
106
106
  awscli/customizations/configservice/putconfigurationrecorder.py,sha256=Y7LrVfv1_R_0CwrDXIidP25I7Jf0qhcdQ7_IkEayRa4,3154
107
107
  awscli/customizations/configservice/rename_cmd.py,sha256=RSAwnltldj7HC8Ex4OLcyUeff5JMvLE150m8RO66IXI,924
108
108
  awscli/customizations/configservice/subscribe.py,sha256=s2CL8-e1xiQi0zf66AZPYbaKPb6J8xSRqAaXcDT3g3k,6997
@@ -113,14 +113,14 @@ awscli/customizations/configure/get.py,sha256=T4ih2FpofIBz549pWkzf29IQ_F4I26F2D1
113
113
  awscli/customizations/configure/list.py,sha256=BEQ7WqpYOOInglQ_D1VDJrs-wd5-u9EC4ecW-A6AXYE,5766
114
114
  awscli/customizations/configure/set.py,sha256=h6Jhwzt6hrzjO7MP9sfweOmhNoGUkclgqzvIAIw5Hwo,4758
115
115
  awscli/customizations/configure/writer.py,sha256=V45KnOXdSpCdKX9ubHfwHMsqctvRmdkfQ-pslt523dk,9363
116
- awscli/customizations/datapipeline/__init__.py,sha256=hu3AYTp3S3bZ6ygclJaxFNXTwVeu131aR7nXukmQt5g,16948
116
+ awscli/customizations/datapipeline/__init__.py,sha256=MA6jR6zMKIQaHvar4I4k-NUZVSBHfxiFMo3jBAjdzRU,17067
117
117
  awscli/customizations/datapipeline/constants.py,sha256=8drCqQal41RKcW-MqLjFo_t1ta2WU18G76JP23yBefY,1895
118
- awscli/customizations/datapipeline/createdefaultroles.py,sha256=maWX9NkXB9-7zCKKAbGDZKb_Za_JfrvDOZ-V7tn7uPY,9858
118
+ awscli/customizations/datapipeline/createdefaultroles.py,sha256=kSTNEn6_yCaczfiEFnPTv1vBj4H4Tnn6GUSoOJ4Vznk,9913
119
119
  awscli/customizations/datapipeline/listrunsformatter.py,sha256=4Gytk-ewHd22TZdc1Qoe19xyYJ1sJK97oo6m_q_9QVg,2131
120
120
  awscli/customizations/datapipeline/translator.py,sha256=5RFeT4yKaU5jvSsnodMPgfLgMbn_4Dt4Flk1oc0FiVI,7212
121
121
  awscli/customizations/dlm/__init__.py,sha256=fnY7NAZEHH-yfDk91prFN_0LTxutzUJQGf4L7Evm7Z0,565
122
122
  awscli/customizations/dlm/constants.py,sha256=g2sj_r3L-aMg-90EqQP5v9EWWilYuqIJ1r-jb6sbyvY,1811
123
- awscli/customizations/dlm/createdefaultrole.py,sha256=aY7EN9a9mQ6UxehIVAhhqYTA8HlwqLmuao27QMELtm0,6202
123
+ awscli/customizations/dlm/createdefaultrole.py,sha256=2jjHDNqoKXOviAWNgJOhhN2qN43ubKKtbRtzrKm0czU,6310
124
124
  awscli/customizations/dlm/dlm.py,sha256=NVAQOcoR8KSnCgCEX2D_mhSySMAIf32D6jeCJJCGbHo,1162
125
125
  awscli/customizations/dlm/iam.py,sha256=2EoD1tW_zN0BtGIM1sR--4bFq2TvbvDNu3dr3dWLBUg,1798
126
126
  awscli/customizations/ec2/__init__.py,sha256=wnWE_0bn2m84p3EPxwqRBDw2M63Q8PmX4IKHTUxl1e4,565
@@ -138,10 +138,10 @@ awscli/customizations/ecs/executecommand.py,sha256=pMKzJ6UY4dgSKhd_LUkDaGiTklZXt
138
138
  awscli/customizations/ecs/filehelpers.py,sha256=jP_bFgEsL4BRuhemZDN3X6pSyYJG6RMBS0MdlSoWnmI,2131
139
139
  awscli/customizations/eks/__init__.py,sha256=kwQiY_JpftB9Cl6ES7OIWqIT2WGvue6VvUK75Xwj-o0,1183
140
140
  awscli/customizations/eks/exceptions.py,sha256=5Z3HntwF4htYVLK7oMgyCGSyd6Tou1DQ2Jg7irMkgqo,728
141
- awscli/customizations/eks/get_token.py,sha256=f-C483JqEOvv7yDXtgn1qexDCLD-gIvMV5Zpe2LZ_-E,9939
141
+ awscli/customizations/eks/get_token.py,sha256=RkdJAxg-0-IflBY8m8NcJ0WYt33xi1BppdnGnU1Xc9w,10013
142
142
  awscli/customizations/eks/kubeconfig.py,sha256=hBJwzR0ajab3zBtd6xR7ObeOKKsfJi6qz9TN5ItMCC0,9730
143
143
  awscli/customizations/eks/ordered_yaml.py,sha256=81AoykbFpC6-k8m_3vyXRb3RM76mVtbzAI4PEPFKd4o,1864
144
- awscli/customizations/eks/update_kubeconfig.py,sha256=dWinBHJoWzodRp7Sgkq3mAeeaYp-l7f8S3Hk58jhvGc,13870
144
+ awscli/customizations/eks/update_kubeconfig.py,sha256=_ekfmUEbpVPuCQr_tAfCpACQSVbKq9wJmxqhXufXK_s,13932
145
145
  awscli/customizations/emr/__init__.py,sha256=_5TbmyGbXMuErfCQRk40A91pi_Z7qVDO-_4GVyOz41U,565
146
146
  awscli/customizations/emr/addinstancegroups.py,sha256=TFKsjwLo26TQR25IpCr8sMh58jEx4Gx4_tLUcF9bY_c,2647
147
147
  awscli/customizations/emr/addsteps.py,sha256=2OXYlJ-bm2BH3mNSnQjgwz6HoB0cnUR7s_Y5zI_WPP8,2208
@@ -178,8 +178,8 @@ awscli/customizations/emrcontainers/eks.py,sha256=VPWd95ZPi5LQAFOAF-Lbk57h2IvUB0
178
178
  awscli/customizations/emrcontainers/iam.py,sha256=u2m8sJvbhuQC54_pyhMbTWq9GbCT4cejLjx5fgHnqBI,1201
179
179
  awscli/customizations/emrcontainers/update_role_trust_policy.py,sha256=2IM6Y9yJsqy45TIwyeJy5s5lCNR-viDH2YPWbbwNHyU,6884
180
180
  awscli/customizations/gamelift/__init__.py,sha256=ReYcvAyUC5GLjv6Yx-PR3jO3ZsZiqGo9WdueWI-gtuc,1037
181
- awscli/customizations/gamelift/getlog.py,sha256=9YIegVUgRrddAmbV9B6pRfeImhZxgDQlI1cwkl8YMIM,2093
182
- awscli/customizations/gamelift/uploadbuild.py,sha256=ZzPuhrquRFb57QQZWmCoVQgEI4oaX5SiL7G0g7dtXWs,6422
181
+ awscli/customizations/gamelift/getlog.py,sha256=28zSZmJdApDx9x4Wk5iybhfw16cGkg9UlYCK_VVmo8s,2147
182
+ awscli/customizations/gamelift/uploadbuild.py,sha256=yKroYMuoWDhEL9Y8hfsQ51y8L8suUwzQwqfGSF6LPLI,6499
183
183
  awscli/customizations/history/__init__.py,sha256=0FLuZDn6IYFKEyXA60jTpCWG9-bIrkZ2cmOcPzhTjmI,4120
184
184
  awscli/customizations/history/commands.py,sha256=sGjvLLCONdq92Kz8KI5jsodTUKIz8FoZ1SJkX0diT3k,2541
185
185
  awscli/customizations/history/constants.py,sha256=tQvNo0q1VtMKrYsbNqJZ9GM6VWi1KnmQz_rUvOJwXdA,737
@@ -188,7 +188,7 @@ awscli/customizations/history/filters.py,sha256=jKXspaeZ1NamcBQ11RaH7Pz6HMCdzkLC
188
188
  awscli/customizations/history/list.py,sha256=VEqrF1OdSRQTpWTxhOexH4X1H3K8AmeeCIQT8cW21MQ,4161
189
189
  awscli/customizations/history/show.py,sha256=e4_0AvkbucGtaJONJ_mLXehCdlTKgiq4PJdfTFaYB7c,15427
190
190
  awscli/customizations/logs/__init__.py,sha256=2qoJgaclRoCjzFft94SlHBPUTXBWXBc5WeqvrcnF8fU,329
191
- awscli/customizations/logs/startlivetail.py,sha256=sKYL2Oi7qbGRmHG0vSyQ5lazXw3BJNpsbCYo2OjD02E,9961
191
+ awscli/customizations/logs/startlivetail.py,sha256=NwN5wp8DKKgRfoAtZySlLxgHHuSMz1d_TP3wUvXt2CE,9991
192
192
  awscli/customizations/s3/__init__.py,sha256=BFJ0dbdWkUBgJ2qav1Jhz06SddTMIeahxSaW_H0vop0,565
193
193
  awscli/customizations/s3/comparator.py,sha256=bg9ewFtjOGUHmTSK37J9oP1OD9lWfdmIF7cDGMblFoc,6146
194
194
  awscli/customizations/s3/fileformat.py,sha256=m4-tpR3_4AZOYfLxnlaGmIXG_vqTxyD4jNC8HtZRn2k,6027
@@ -6180,13 +6180,13 @@ awscli/topics/return-codes.rst,sha256=d9lpNFZwD75IiYcDEADQzu-4QiR8P28UPHkrNwPV5J
6180
6180
  awscli/topics/s3-config.rst,sha256=5EIVd4ggLBHtzjtHFvQp9hY415yMGZiG7S_rO9qy2t0,11663
6181
6181
  awscli/topics/s3-faq.rst,sha256=9qO0HFI6F9hx1wVEUDl8Jy6yoCUd9zbtv-Z0Re4dsiw,2934
6182
6182
  awscli/topics/topic-tags.json,sha256=6lUSrs3FKCZNRSQMnjcXNgWyRNGjZIeur1988a4IO5o,1577
6183
- awscli-1.41.8.data/scripts/aws,sha256=r24FExgs0-JjILTQ3XZAqXBYE4SV6UMTtALkLGAj86g,805
6184
- awscli-1.41.8.data/scripts/aws.cmd,sha256=s46DkC6LNgX63CIkzxxbPnFMJ6DRDBkvc88GnWa8Pvg,1432
6185
- awscli-1.41.8.data/scripts/aws_bash_completer,sha256=RRpoEGJRagRzyHZKZZOwpltuVYv2EoiZsdXhmyWPZ54,204
6186
- awscli-1.41.8.data/scripts/aws_completer,sha256=oC9kuMDlWE47dWk_4xjPde2PQvN-M0vND0J4YSLabVQ,1126
6187
- awscli-1.41.8.data/scripts/aws_zsh_completer.sh,sha256=Qm6Z8ejNAMzpJjaT0pzqxbSDT2zxdmzVe5haRA7qLoc,1808
6188
- awscli-1.41.8.dist-info/LICENSE.txt,sha256=o5XhFlwu0OK_BBrijlKCRa7dQAm36UrUB3gCV_cEr8E,549
6189
- awscli-1.41.8.dist-info/METADATA,sha256=-QtVRcCujJR9POi_YK-j28Lj86AkuMrl_jC6aqS-LfA,11104
6190
- awscli-1.41.8.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
6191
- awscli-1.41.8.dist-info/top_level.txt,sha256=vt9wXFr1_nGYK6abhJgt6zY3fULe4JSZedm_5XOM9S0,7
6192
- awscli-1.41.8.dist-info/RECORD,,
6183
+ awscli-1.41.9.data/scripts/aws,sha256=r24FExgs0-JjILTQ3XZAqXBYE4SV6UMTtALkLGAj86g,805
6184
+ awscli-1.41.9.data/scripts/aws.cmd,sha256=s46DkC6LNgX63CIkzxxbPnFMJ6DRDBkvc88GnWa8Pvg,1432
6185
+ awscli-1.41.9.data/scripts/aws_bash_completer,sha256=RRpoEGJRagRzyHZKZZOwpltuVYv2EoiZsdXhmyWPZ54,204
6186
+ awscli-1.41.9.data/scripts/aws_completer,sha256=oC9kuMDlWE47dWk_4xjPde2PQvN-M0vND0J4YSLabVQ,1126
6187
+ awscli-1.41.9.data/scripts/aws_zsh_completer.sh,sha256=Qm6Z8ejNAMzpJjaT0pzqxbSDT2zxdmzVe5haRA7qLoc,1808
6188
+ awscli-1.41.9.dist-info/LICENSE.txt,sha256=o5XhFlwu0OK_BBrijlKCRa7dQAm36UrUB3gCV_cEr8E,549
6189
+ awscli-1.41.9.dist-info/METADATA,sha256=iOb2BSBxefUWsohyeZNTX30ksBJsZMeAqXN3BAD74fI,11104
6190
+ awscli-1.41.9.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
6191
+ awscli-1.41.9.dist-info/top_level.txt,sha256=vt9wXFr1_nGYK6abhJgt6zY3fULe4JSZedm_5XOM9S0,7
6192
+ awscli-1.41.9.dist-info/RECORD,,
File without changes