MCPcopy Index your code
hub / github.com/aws/aws-cli / _run_main

Method _run_main

awscli/customizations/cloudformation/deploy.py:316–375  ·  view source on GitHub ↗
(self, parsed_args, parsed_globals)

Source from the content-addressed store, hash-verified

314 ]
315
316 def _run_main(self, parsed_args, parsed_globals):
317 cloudformation_client = self._session.create_client(
318 'cloudformation',
319 region_name=parsed_globals.region,
320 endpoint_url=parsed_globals.endpoint_url,
321 verify=parsed_globals.verify_ssl,
322 )
323
324 template_dict, template_str, template_size = self.load_template_file(
325 parsed_args.template_file
326 )
327
328 stack_name = parsed_args.stack_name
329 parameter_overrides = self.parse_parameter_overrides(
330 parsed_args.parameter_overrides
331 )
332 tags_dict = self.parse_key_value_arg(parsed_args.tags, self.TAGS_CMD)
333 tags = [
334 {"Key": key, "Value": value} for key, value in tags_dict.items()
335 ]
336
337 parameters = self.merge_parameters(template_dict, parameter_overrides)
338
339 if template_size > 51200 and not parsed_args.s3_bucket:
340 raise exceptions.DeployBucketRequiredError()
341
342 bucket = parsed_args.s3_bucket
343 if bucket:
344 s3_client = self._session.create_client(
345 "s3",
346 config=Config(signature_version='s3v4'),
347 region_name=parsed_globals.region,
348 verify=parsed_globals.verify_ssl,
349 )
350
351 s3_uploader = S3Uploader(
352 s3_client,
353 bucket,
354 parsed_args.s3_prefix,
355 parsed_args.kms_key_id,
356 parsed_args.force_upload,
357 )
358 else:
359 s3_uploader = None
360
361 deployer = Deployer(cloudformation_client)
362 return self.deploy(
363 deployer,
364 stack_name,
365 template_str,
366 parameters,
367 parsed_args.capabilities,
368 parsed_args.execute_changeset,
369 parsed_args.role_arn,
370 parsed_args.notification_arns,
371 s3_uploader,
372 tags,
373 parsed_args.fail_on_empty_changeset,

Callers

nothing calls this directly

Calls 9

load_template_fileMethod · 0.95
parse_key_value_argMethod · 0.95
merge_parametersMethod · 0.95
deployMethod · 0.95
S3UploaderClass · 0.90
DeployerClass · 0.90
ConfigClass · 0.85
create_clientMethod · 0.45

Tested by

no test coverage detected