AWSServerlessApplicationRepository

2018/11/05 - AWSServerlessApplicationRepository - 2 new 5 updated api methods

Changes  New AWS Serverless Application Repository APIs that support creating and reading a broader set of AWS CloudFormation templates, as well as enhancements to our existing APIs.

GetCloudFormationTemplate (new) Link ¶

Gets the specified AWS CloudFormation template.

See also: AWS API Documentation

Request Syntax

client.get_cloud_formation_template(
    ApplicationId='string',
    TemplateId='string'
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

The Amazon Resource Name (ARN) of the application.

type TemplateId

string

param TemplateId

[REQUIRED]

The UUID returned by CreateCloudFormationTemplate.

Pattern: [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}

rtype

dict

returns

Response Syntax

{
    'ApplicationId': 'string',
    'CreationTime': 'string',
    'ExpirationTime': 'string',
    'SemanticVersion': 'string',
    'Status': 'PREPARING'|'ACTIVE'|'EXPIRED',
    'TemplateId': 'string',
    'TemplateUrl': 'string'
}

Response Structure

  • (dict) --

    Success

    • ApplicationId (string) --

      The application Amazon Resource Name (ARN).

    • CreationTime (string) --

      The date and time this resource was created.

    • ExpirationTime (string) --

      The date and time this template expires. Templates expire 1 hour after creation.

    • SemanticVersion (string) --

      The semantic version of the application:

      https://semver.org/

    • Status (string) --

      Status of the template creation workflow.

      Possible values: PREPARING | ACTIVE | EXPIRED

    • TemplateId (string) --

      The UUID returned by CreateCloudFormationTemplate.

      Pattern: [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}

    • TemplateUrl (string) --

      A link to the template that can be used to deploy the application using AWS CloudFormation.

CreateCloudFormationTemplate (new) Link ¶

Creates an AWS CloudFormation template.

See also: AWS API Documentation

Request Syntax

client.create_cloud_formation_template(
    ApplicationId='string',
    SemanticVersion='string'
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

The Amazon Resource Name (ARN) of the application.

type SemanticVersion

string

param SemanticVersion

The semantic version of the application:

https://semver.org/

rtype

dict

returns

Response Syntax

{
    'ApplicationId': 'string',
    'CreationTime': 'string',
    'ExpirationTime': 'string',
    'SemanticVersion': 'string',
    'Status': 'PREPARING'|'ACTIVE'|'EXPIRED',
    'TemplateId': 'string',
    'TemplateUrl': 'string'
}

Response Structure

  • (dict) --

    Success

    • ApplicationId (string) --

      The application Amazon Resource Name (ARN).

    • CreationTime (string) --

      The date and time this resource was created.

    • ExpirationTime (string) --

      The date and time this template expires. Templates expire 1 hour after creation.

    • SemanticVersion (string) --

      The semantic version of the application:

      https://semver.org/

    • Status (string) --

      Status of the template creation workflow.

      Possible values: PREPARING | ACTIVE | EXPIRED

    • TemplateId (string) --

      The UUID returned by CreateCloudFormationTemplate.

      Pattern: [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}

    • TemplateUrl (string) --

      A link to the template that can be used to deploy the application using AWS CloudFormation.

CreateApplication (updated) Link ¶
Changes (response)
{'Version': {'RequiredCapabilities': ['CAPABILITY_IAM | CAPABILITY_NAMED_IAM | '
                                      'CAPABILITY_AUTO_EXPAND | '
                                      'CAPABILITY_RESOURCE_POLICY'],
             'ResourcesSupported': 'boolean'}}

Creates an application, optionally including an AWS SAM file to create the first application version in the same call.

See also: AWS API Documentation

Request Syntax

client.create_application(
    Author='string',
    Description='string',
    HomePageUrl='string',
    Labels=[
        'string',
    ],
    LicenseBody='string',
    LicenseUrl='string',
    Name='string',
    ReadmeBody='string',
    ReadmeUrl='string',
    SemanticVersion='string',
    SourceCodeUrl='string',
    SpdxLicenseId='string',
    TemplateBody='string',
    TemplateUrl='string'
)
type Author

string

param Author

[REQUIRED]

The name of the author publishing the app.

Minimum length=1. Maximum length=127.

Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";

type Description

string

param Description

[REQUIRED]

The description of the application.

Minimum length=1. Maximum length=256

type HomePageUrl

string

param HomePageUrl

A URL with more information about the application, for example the location of your GitHub repository for the application.

type Labels

list

param Labels

Labels to improve discovery of apps in search results.

Minimum length=1. Maximum length=127. Maximum number of labels: 10

Pattern: "^[a-zA-Z0-9+\-_:\/@]+$";

  • (string) --

type LicenseBody

string

param LicenseBody

A local text file that contains the license of the app that matches the spdxLicenseID value of your application. The file has the format file://<path>/<filename>.

Maximum size 5 MB

You can specify only one of licenseBody and licenseUrl; otherwise, an error results.

type LicenseUrl

string

param LicenseUrl

A link to the S3 object that contains the license of the app that matches the spdxLicenseID value of your application.

Maximum size 5 MB

You can specify only one of licenseBody and licenseUrl; otherwise, an error results.

type Name

string

param Name

[REQUIRED]

The name of the application that you want to publish.

Minimum length=1. Maximum length=140

Pattern: "[a-zA-Z0-9\-]+";

type ReadmeBody

string

param ReadmeBody

A local text readme file in Markdown language that contains a more detailed description of the application and how it works. The file has the format file://<path>/<filename>.

Maximum size 5 MB

You can specify only one of readmeBody and readmeUrl; otherwise, an error results.

type ReadmeUrl

string

param ReadmeUrl

A link to the S3 object in Markdown language that contains a more detailed description of the application and how it works.

Maximum size 5 MB

You can specify only one of readmeBody and readmeUrl; otherwise, an error results.

type SemanticVersion

string

param SemanticVersion

The semantic version of the application:

https://semver.org/

type SourceCodeUrl

string

param SourceCodeUrl

A link to a public repository for the source code of your application.

type SpdxLicenseId

string

param SpdxLicenseId

A valid identifier from https://spdx.org/licenses/.

type TemplateBody

string

param TemplateBody

The local raw packaged AWS SAM template file of your application. The file has the format file://<path>/<filename>.

You can specify only one of templateBody and templateUrl; otherwise an error results.

type TemplateUrl

string

param TemplateUrl

A link to the S3 object containing the packaged AWS SAM template of your application.

You can specify only one of templateBody and templateUrl; otherwise an error results.

rtype

dict

returns

Response Syntax

{
    'ApplicationId': 'string',
    'Author': 'string',
    'CreationTime': 'string',
    'Description': 'string',
    'HomePageUrl': 'string',
    'Labels': [
        'string',
    ],
    'LicenseUrl': 'string',
    'Name': 'string',
    'ReadmeUrl': 'string',
    'SpdxLicenseId': 'string',
    'Version': {
        'ApplicationId': 'string',
        'CreationTime': 'string',
        'ParameterDefinitions': [
            {
                'AllowedPattern': 'string',
                'AllowedValues': [
                    'string',
                ],
                'ConstraintDescription': 'string',
                'DefaultValue': 'string',
                'Description': 'string',
                'MaxLength': 123,
                'MaxValue': 123,
                'MinLength': 123,
                'MinValue': 123,
                'Name': 'string',
                'NoEcho': True|False,
                'ReferencedByResources': [
                    'string',
                ],
                'Type': 'string'
            },
        ],
        'RequiredCapabilities': [
            'CAPABILITY_IAM'|'CAPABILITY_NAMED_IAM'|'CAPABILITY_AUTO_EXPAND'|'CAPABILITY_RESOURCE_POLICY',
        ],
        'ResourcesSupported': True|False,
        'SemanticVersion': 'string',
        'SourceCodeUrl': 'string',
        'TemplateUrl': 'string'
    }
}

Response Structure

  • (dict) --

    Success

    • ApplicationId (string) --

      The application Amazon Resource Name (ARN).

    • Author (string) --

      The name of the author publishing the app.

      Minimum length=1. Maximum length=127.

      Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";

    • CreationTime (string) --

      The date and time this resource was created.

    • Description (string) --

      The description of the application.

      Minimum length=1. Maximum length=256

    • HomePageUrl (string) --

      A URL with more information about the application, for example the location of your GitHub repository for the application.

    • Labels (list) --

      Labels to improve discovery of apps in search results.

      Minimum length=1. Maximum length=127. Maximum number of labels: 10

      Pattern: "^[a-zA-Z0-9+\-_:\/@]+$";

      • (string) --

    • LicenseUrl (string) --

      A link to a license file of the app that matches the spdxLicenseID value of your application.

      Maximum size 5 MB

    • Name (string) --

      The name of the application.

      Minimum length=1. Maximum length=140

      Pattern: "[a-zA-Z0-9\-]+";

    • ReadmeUrl (string) --

      A link to the readme file in Markdown language that contains a more detailed description of the application and how it works.

      Maximum size 5 MB

    • SpdxLicenseId (string) --

      A valid identifier from https://spdx.org/licenses/.

    • Version (dict) --

      Version information about the application.

      • ApplicationId (string) --

        The application Amazon Resource Name (ARN).

      • CreationTime (string) --

        The date and time this resource was created.

      • ParameterDefinitions (list) --

        An array of parameter types supported by the application.

        • (dict) --

          Parameters supported by the application.

          • AllowedPattern (string) --

            A regular expression that represents the patterns to allow for String types.

          • AllowedValues (list) --

            An array containing the list of values allowed for the parameter.

            • (string) --

          • ConstraintDescription (string) --

            A string that explains a constraint when the constraint is violated. For example, without a constraint description, a parameter that has an allowed pattern of [A-Za-z0-9]+ displays the following error message when the user specifies an invalid value:

            Malformed input-Parameter MyParameter must match pattern [A-Za-z0-9]+

            By adding a constraint description, such as "must contain only uppercase and lowercase letters and numbers," you can display the following customized error message:

            Malformed input-Parameter MyParameter must contain only uppercase and lowercase letters and numbers.

          • DefaultValue (string) --

            A value of the appropriate type for the template to use if no value is specified when a stack is created. If you define constraints for the parameter, you must specify a value that adheres to those constraints.

          • Description (string) --

            A string of up to 4,000 characters that describes the parameter.

          • MaxLength (integer) --

            An integer value that determines the largest number of characters that you want to allow for String types.

          • MaxValue (integer) --

            A numeric value that determines the largest numeric value that you want to allow for Number types.

          • MinLength (integer) --

            An integer value that determines the smallest number of characters that you want to allow for String types.

          • MinValue (integer) --

            A numeric value that determines the smallest numeric value that you want to allow for Number types.

          • Name (string) --

            The name of the parameter.

          • NoEcho (boolean) --

            Whether to mask the parameter value whenever anyone makes a call that describes the stack. If you set the value to true, the parameter value is masked with asterisks (*).

          • ReferencedByResources (list) --

            A list of AWS SAM resources that use this parameter.

            • (string) --

          • Type (string) --

            The type of the parameter.

            Valid values: String | Number | List<Number> | CommaDelimitedList

            String: A literal string.

            For example, users can specify "MyUserName".

            Number: An integer or float. AWS CloudFormation validates the parameter value as a number. However, when you use the parameter elsewhere in your template (for example, by using the Ref intrinsic function), the parameter value becomes a string.

            For example, users might specify "8888".

            List<Number>: An array of integers or floats that are separated by commas. AWS CloudFormation validates the parameter value as numbers. However, when you use the parameter elsewhere in your template (for example, by using the Ref intrinsic function), the parameter value becomes a list of strings.

            For example, users might specify "80,20", and then Ref results in ["80","20"].

            CommaDelimitedList: An array of literal strings that are separated by commas. The total number of strings should be one more than the total number of commas. Also, each member string is space-trimmed.

            For example, users might specify "test,dev,prod", and then Ref results in ["test","dev","prod"].

      • RequiredCapabilities (list) --

        A list of values that you must specify before you can deploy certain applications. Some applications might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by specifying this parameter.

        The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, and CAPABILITY_RESOURCE_POLICY.

        The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

        The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS:TopicPolicy.

        If your application template contains any of the above resources, we recommend that you review all permissions associated with the application before deploying. If you don't specify this parameter for an application that requires capabilities, the call will fail.

        Valid values: CAPABILITY_IAM | CAPABILITY_NAMED_IAM | CAPABILITY_RESOURCE_POLICY

        • (string) --

      • ResourcesSupported (boolean) --

        Whether all of the AWS resources contained in this application are supported in the region in which it is being retrieved.

      • SemanticVersion (string) --

        The semantic version of the application:

        https://semver.org/

      • SourceCodeUrl (string) --

        A link to a public repository for the source code of your application.

      • TemplateUrl (string) --

        A link to the packaged AWS SAM template of your application.

CreateApplicationVersion (updated) Link ¶
Changes (response)
{'RequiredCapabilities': ['CAPABILITY_IAM | CAPABILITY_NAMED_IAM | '
                          'CAPABILITY_AUTO_EXPAND | '
                          'CAPABILITY_RESOURCE_POLICY'],
 'ResourcesSupported': 'boolean'}

Creates an application version.

See also: AWS API Documentation

Request Syntax

client.create_application_version(
    ApplicationId='string',
    SemanticVersion='string',
    SourceCodeUrl='string',
    TemplateBody='string',
    TemplateUrl='string'
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

The Amazon Resource Name (ARN) of the application.

type SemanticVersion

string

param SemanticVersion

[REQUIRED]

The semantic version of the new version.

type SourceCodeUrl

string

param SourceCodeUrl

A link to a public repository for the source code of your application.

type TemplateBody

string

param TemplateBody

The raw packaged AWS SAM template of your application.

type TemplateUrl

string

param TemplateUrl

A link to the packaged AWS SAM template of your application.

rtype

dict

returns

Response Syntax

{
    'ApplicationId': 'string',
    'CreationTime': 'string',
    'ParameterDefinitions': [
        {
            'AllowedPattern': 'string',
            'AllowedValues': [
                'string',
            ],
            'ConstraintDescription': 'string',
            'DefaultValue': 'string',
            'Description': 'string',
            'MaxLength': 123,
            'MaxValue': 123,
            'MinLength': 123,
            'MinValue': 123,
            'Name': 'string',
            'NoEcho': True|False,
            'ReferencedByResources': [
                'string',
            ],
            'Type': 'string'
        },
    ],
    'RequiredCapabilities': [
        'CAPABILITY_IAM'|'CAPABILITY_NAMED_IAM'|'CAPABILITY_AUTO_EXPAND'|'CAPABILITY_RESOURCE_POLICY',
    ],
    'ResourcesSupported': True|False,
    'SemanticVersion': 'string',
    'SourceCodeUrl': 'string',
    'TemplateUrl': 'string'
}

Response Structure

  • (dict) --

    Success

    • ApplicationId (string) --

      The application Amazon Resource Name (ARN).

    • CreationTime (string) --

      The date and time this resource was created.

    • ParameterDefinitions (list) --

      An array of parameter types supported by the application.

      • (dict) --

        Parameters supported by the application.

        • AllowedPattern (string) --

          A regular expression that represents the patterns to allow for String types.

        • AllowedValues (list) --

          An array containing the list of values allowed for the parameter.

          • (string) --

        • ConstraintDescription (string) --

          A string that explains a constraint when the constraint is violated. For example, without a constraint description, a parameter that has an allowed pattern of [A-Za-z0-9]+ displays the following error message when the user specifies an invalid value:

          Malformed input-Parameter MyParameter must match pattern [A-Za-z0-9]+

          By adding a constraint description, such as "must contain only uppercase and lowercase letters and numbers," you can display the following customized error message:

          Malformed input-Parameter MyParameter must contain only uppercase and lowercase letters and numbers.

        • DefaultValue (string) --

          A value of the appropriate type for the template to use if no value is specified when a stack is created. If you define constraints for the parameter, you must specify a value that adheres to those constraints.

        • Description (string) --

          A string of up to 4,000 characters that describes the parameter.

        • MaxLength (integer) --

          An integer value that determines the largest number of characters that you want to allow for String types.

        • MaxValue (integer) --

          A numeric value that determines the largest numeric value that you want to allow for Number types.

        • MinLength (integer) --

          An integer value that determines the smallest number of characters that you want to allow for String types.

        • MinValue (integer) --

          A numeric value that determines the smallest numeric value that you want to allow for Number types.

        • Name (string) --

          The name of the parameter.

        • NoEcho (boolean) --

          Whether to mask the parameter value whenever anyone makes a call that describes the stack. If you set the value to true, the parameter value is masked with asterisks (*).

        • ReferencedByResources (list) --

          A list of AWS SAM resources that use this parameter.

          • (string) --

        • Type (string) --

          The type of the parameter.

          Valid values: String | Number | List<Number> | CommaDelimitedList

          String: A literal string.

          For example, users can specify "MyUserName".

          Number: An integer or float. AWS CloudFormation validates the parameter value as a number. However, when you use the parameter elsewhere in your template (for example, by using the Ref intrinsic function), the parameter value becomes a string.

          For example, users might specify "8888".

          List<Number>: An array of integers or floats that are separated by commas. AWS CloudFormation validates the parameter value as numbers. However, when you use the parameter elsewhere in your template (for example, by using the Ref intrinsic function), the parameter value becomes a list of strings.

          For example, users might specify "80,20", and then Ref results in ["80","20"].

          CommaDelimitedList: An array of literal strings that are separated by commas. The total number of strings should be one more than the total number of commas. Also, each member string is space-trimmed.

          For example, users might specify "test,dev,prod", and then Ref results in ["test","dev","prod"].

    • RequiredCapabilities (list) --

      A list of values that you must specify before you can deploy certain applications. Some applications might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by specifying this parameter.

      The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, and CAPABILITY_RESOURCE_POLICY.

      The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

      The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS:TopicPolicy.

      If your application template contains any of the above resources, we recommend that you review all permissions associated with the application before deploying. If you don't specify this parameter for an application that requires capabilities, the call will fail.

      Valid values: CAPABILITY_IAM | CAPABILITY_NAMED_IAM | CAPABILITY_RESOURCE_POLICY

      • (string) --

    • ResourcesSupported (boolean) --

      Whether all of the AWS resources contained in this application are supported in the region in which it is being retrieved.

    • SemanticVersion (string) --

      The semantic version of the application:

      https://semver.org/

    • SourceCodeUrl (string) --

      A link to a public repository for the source code of your application.

    • TemplateUrl (string) --

      A link to the packaged AWS SAM template of your application.

CreateCloudFormationChangeSet (updated) Link ¶
Changes (request)
{'Capabilities': ['string'],
 'ChangeSetName': 'string',
 'ClientToken': 'string',
 'Description': 'string',
 'NotificationArns': ['string'],
 'ResourceTypes': ['string'],
 'RollbackConfiguration': {'MonitoringTimeInMinutes': 'integer',
                           'RollbackTriggers': [{'Arn': 'string',
                                                 'Type': 'string'}]},
 'Tags': [{'Key': 'string', 'Value': 'string'}],
 'TemplateId': 'string'}

Creates an AWS CloudFormation change set for the given application.

See also: AWS API Documentation

Request Syntax

client.create_cloud_formation_change_set(
    ApplicationId='string',
    Capabilities=[
        'string',
    ],
    ChangeSetName='string',
    ClientToken='string',
    Description='string',
    NotificationArns=[
        'string',
    ],
    ParameterOverrides=[
        {
            'Name': 'string',
            'Value': 'string'
        },
    ],
    ResourceTypes=[
        'string',
    ],
    RollbackConfiguration={
        'MonitoringTimeInMinutes': 123,
        'RollbackTriggers': [
            {
                'Arn': 'string',
                'Type': 'string'
            },
        ]
    },
    SemanticVersion='string',
    StackName='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    TemplateId='string'
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

The Amazon Resource Name (ARN) of the application.

type Capabilities

list

param Capabilities

A list of values that you must specify before you can deploy certain applications. Some applications might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by specifying this parameter.

The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, and CAPABILITY_RESOURCE_POLICY.

The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS:TopicPolicy.

If your application template contains any of the above resources, we recommend that you review all permissions associated with the application before deploying. If you don't specify this parameter for an application that requires capabilities, the call will fail.

Valid values: CAPABILITY_IAM | CAPABILITY_NAMED_IAM | CAPABILITY_RESOURCE_POLICY

  • (string) --

type ChangeSetName

string

param ChangeSetName

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet API.

type ClientToken

string

param ClientToken

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet API.

type Description

string

param Description

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet API.

type NotificationArns

list

param NotificationArns

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet API.

  • (string) --

type ParameterOverrides

list

param ParameterOverrides

A list of parameter values for the parameters of the application.

  • (dict) --

    Parameter value of the application.

    • Name (string) -- [REQUIRED]

      The key associated with the parameter. If you don't specify a key and value for a particular parameter, AWS CloudFormation uses the default value that is specified in your template.

    • Value (string) -- [REQUIRED]

      The input value associated with the parameter.

type ResourceTypes

list

param ResourceTypes

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet API.

  • (string) --

type RollbackConfiguration

dict

param RollbackConfiguration

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet API.

  • MonitoringTimeInMinutes (integer) --

    This property corresponds to the content of the same name for the AWS CloudFormation RollbackConfiguration Data Type.

  • RollbackTriggers (list) --

    This property corresponds to the content of the same name for the AWS CloudFormation RollbackConfiguration Data Type.

    • (dict) --

      This property corresponds to the AWS CloudFormation RollbackTrigger Data Type.

      • Arn (string) -- [REQUIRED]

        This property corresponds to the content of the same name for the AWS CloudFormation RollbackTrigger Data Type.

      • Type (string) -- [REQUIRED]

        This property corresponds to the content of the same name for the AWS CloudFormation RollbackTrigger Data Type.

type SemanticVersion

string

param SemanticVersion

The semantic version of the application:

https://semver.org/

type StackName

string

param StackName

[REQUIRED]

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet API.

type Tags

list

param Tags

This property corresponds to the parameter of the same name for the AWS CloudFormation CreateChangeSet API.

  • (dict) --

    This property corresponds to the AWS CloudFormation Tag Data Type.

    • Key (string) -- [REQUIRED]

      This property corresponds to the content of the same name for the AWS CloudFormation Tag Data Type.

    • Value (string) -- [REQUIRED]

      This property corresponds to the content of the same name for the AWS CloudFormation Tag Data Type.

type TemplateId

string

param TemplateId

The UUID returned by CreateCloudFormationTemplate.

Pattern: [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}

rtype

dict

returns

Response Syntax

{
    'ApplicationId': 'string',
    'ChangeSetId': 'string',
    'SemanticVersion': 'string',
    'StackId': 'string'
}

Response Structure

  • (dict) --

    Success

    • ApplicationId (string) --

      The application Amazon Resource Name (ARN).

    • ChangeSetId (string) --

      The Amazon Resource Name (ARN) of the change set.

      Length constraints: Minimum length of 1.

      Pattern: ARN:[-a-zA-Z0-9:/]*

    • SemanticVersion (string) --

      The semantic version of the application:

      https://semver.org/

    • StackId (string) --

      The unique ID of the stack.

GetApplication (updated) Link ¶
Changes (response)
{'Version': {'RequiredCapabilities': ['CAPABILITY_IAM | CAPABILITY_NAMED_IAM | '
                                      'CAPABILITY_AUTO_EXPAND | '
                                      'CAPABILITY_RESOURCE_POLICY'],
             'ResourcesSupported': 'boolean'}}

Gets the specified application.

See also: AWS API Documentation

Request Syntax

client.get_application(
    ApplicationId='string',
    SemanticVersion='string'
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

The Amazon Resource Name (ARN) of the application.

type SemanticVersion

string

param SemanticVersion

The semantic version of the application to get.

rtype

dict

returns

Response Syntax

{
    'ApplicationId': 'string',
    'Author': 'string',
    'CreationTime': 'string',
    'Description': 'string',
    'HomePageUrl': 'string',
    'Labels': [
        'string',
    ],
    'LicenseUrl': 'string',
    'Name': 'string',
    'ReadmeUrl': 'string',
    'SpdxLicenseId': 'string',
    'Version': {
        'ApplicationId': 'string',
        'CreationTime': 'string',
        'ParameterDefinitions': [
            {
                'AllowedPattern': 'string',
                'AllowedValues': [
                    'string',
                ],
                'ConstraintDescription': 'string',
                'DefaultValue': 'string',
                'Description': 'string',
                'MaxLength': 123,
                'MaxValue': 123,
                'MinLength': 123,
                'MinValue': 123,
                'Name': 'string',
                'NoEcho': True|False,
                'ReferencedByResources': [
                    'string',
                ],
                'Type': 'string'
            },
        ],
        'RequiredCapabilities': [
            'CAPABILITY_IAM'|'CAPABILITY_NAMED_IAM'|'CAPABILITY_AUTO_EXPAND'|'CAPABILITY_RESOURCE_POLICY',
        ],
        'ResourcesSupported': True|False,
        'SemanticVersion': 'string',
        'SourceCodeUrl': 'string',
        'TemplateUrl': 'string'
    }
}

Response Structure

  • (dict) --

    Success

    • ApplicationId (string) --

      The application Amazon Resource Name (ARN).

    • Author (string) --

      The name of the author publishing the app.

      Minimum length=1. Maximum length=127.

      Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";

    • CreationTime (string) --

      The date and time this resource was created.

    • Description (string) --

      The description of the application.

      Minimum length=1. Maximum length=256

    • HomePageUrl (string) --

      A URL with more information about the application, for example the location of your GitHub repository for the application.

    • Labels (list) --

      Labels to improve discovery of apps in search results.

      Minimum length=1. Maximum length=127. Maximum number of labels: 10

      Pattern: "^[a-zA-Z0-9+\-_:\/@]+$";

      • (string) --

    • LicenseUrl (string) --

      A link to a license file of the app that matches the spdxLicenseID value of your application.

      Maximum size 5 MB

    • Name (string) --

      The name of the application.

      Minimum length=1. Maximum length=140

      Pattern: "[a-zA-Z0-9\-]+";

    • ReadmeUrl (string) --

      A link to the readme file in Markdown language that contains a more detailed description of the application and how it works.

      Maximum size 5 MB

    • SpdxLicenseId (string) --

      A valid identifier from https://spdx.org/licenses/.

    • Version (dict) --

      Version information about the application.

      • ApplicationId (string) --

        The application Amazon Resource Name (ARN).

      • CreationTime (string) --

        The date and time this resource was created.

      • ParameterDefinitions (list) --

        An array of parameter types supported by the application.

        • (dict) --

          Parameters supported by the application.

          • AllowedPattern (string) --

            A regular expression that represents the patterns to allow for String types.

          • AllowedValues (list) --

            An array containing the list of values allowed for the parameter.

            • (string) --

          • ConstraintDescription (string) --

            A string that explains a constraint when the constraint is violated. For example, without a constraint description, a parameter that has an allowed pattern of [A-Za-z0-9]+ displays the following error message when the user specifies an invalid value:

            Malformed input-Parameter MyParameter must match pattern [A-Za-z0-9]+

            By adding a constraint description, such as "must contain only uppercase and lowercase letters and numbers," you can display the following customized error message:

            Malformed input-Parameter MyParameter must contain only uppercase and lowercase letters and numbers.

          • DefaultValue (string) --

            A value of the appropriate type for the template to use if no value is specified when a stack is created. If you define constraints for the parameter, you must specify a value that adheres to those constraints.

          • Description (string) --

            A string of up to 4,000 characters that describes the parameter.

          • MaxLength (integer) --

            An integer value that determines the largest number of characters that you want to allow for String types.

          • MaxValue (integer) --

            A numeric value that determines the largest numeric value that you want to allow for Number types.

          • MinLength (integer) --

            An integer value that determines the smallest number of characters that you want to allow for String types.

          • MinValue (integer) --

            A numeric value that determines the smallest numeric value that you want to allow for Number types.

          • Name (string) --

            The name of the parameter.

          • NoEcho (boolean) --

            Whether to mask the parameter value whenever anyone makes a call that describes the stack. If you set the value to true, the parameter value is masked with asterisks (*).

          • ReferencedByResources (list) --

            A list of AWS SAM resources that use this parameter.

            • (string) --

          • Type (string) --

            The type of the parameter.

            Valid values: String | Number | List<Number> | CommaDelimitedList

            String: A literal string.

            For example, users can specify "MyUserName".

            Number: An integer or float. AWS CloudFormation validates the parameter value as a number. However, when you use the parameter elsewhere in your template (for example, by using the Ref intrinsic function), the parameter value becomes a string.

            For example, users might specify "8888".

            List<Number>: An array of integers or floats that are separated by commas. AWS CloudFormation validates the parameter value as numbers. However, when you use the parameter elsewhere in your template (for example, by using the Ref intrinsic function), the parameter value becomes a list of strings.

            For example, users might specify "80,20", and then Ref results in ["80","20"].

            CommaDelimitedList: An array of literal strings that are separated by commas. The total number of strings should be one more than the total number of commas. Also, each member string is space-trimmed.

            For example, users might specify "test,dev,prod", and then Ref results in ["test","dev","prod"].

      • RequiredCapabilities (list) --

        A list of values that you must specify before you can deploy certain applications. Some applications might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by specifying this parameter.

        The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, and CAPABILITY_RESOURCE_POLICY.

        The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

        The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS:TopicPolicy.

        If your application template contains any of the above resources, we recommend that you review all permissions associated with the application before deploying. If you don't specify this parameter for an application that requires capabilities, the call will fail.

        Valid values: CAPABILITY_IAM | CAPABILITY_NAMED_IAM | CAPABILITY_RESOURCE_POLICY

        • (string) --

      • ResourcesSupported (boolean) --

        Whether all of the AWS resources contained in this application are supported in the region in which it is being retrieved.

      • SemanticVersion (string) --

        The semantic version of the application:

        https://semver.org/

      • SourceCodeUrl (string) --

        A link to a public repository for the source code of your application.

      • TemplateUrl (string) --

        A link to the packaged AWS SAM template of your application.

UpdateApplication (updated) Link ¶
Changes (response)
{'Version': {'RequiredCapabilities': ['CAPABILITY_IAM | CAPABILITY_NAMED_IAM | '
                                      'CAPABILITY_AUTO_EXPAND | '
                                      'CAPABILITY_RESOURCE_POLICY'],
             'ResourcesSupported': 'boolean'}}

Updates the specified application.

See also: AWS API Documentation

Request Syntax

client.update_application(
    ApplicationId='string',
    Author='string',
    Description='string',
    HomePageUrl='string',
    Labels=[
        'string',
    ],
    ReadmeBody='string',
    ReadmeUrl='string'
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

The Amazon Resource Name (ARN) of the application.

type Author

string

param Author

The name of the author publishing the app.

Minimum length=1. Maximum length=127.

Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";

type Description

string

param Description

The description of the application.

Minimum length=1. Maximum length=256

type HomePageUrl

string

param HomePageUrl

A URL with more information about the application, for example the location of your GitHub repository for the application.

type Labels

list

param Labels

Labels to improve discovery of apps in search results.

Minimum length=1. Maximum length=127. Maximum number of labels: 10

Pattern: "^[a-zA-Z0-9+\-_:\/@]+$";

  • (string) --

type ReadmeBody

string

param ReadmeBody

A text readme file in Markdown language that contains a more detailed description of the application and how it works.

Maximum size 5 MB

type ReadmeUrl

string

param ReadmeUrl

A link to the readme file in Markdown language that contains a more detailed description of the application and how it works.

Maximum size 5 MB

rtype

dict

returns

Response Syntax

{
    'ApplicationId': 'string',
    'Author': 'string',
    'CreationTime': 'string',
    'Description': 'string',
    'HomePageUrl': 'string',
    'Labels': [
        'string',
    ],
    'LicenseUrl': 'string',
    'Name': 'string',
    'ReadmeUrl': 'string',
    'SpdxLicenseId': 'string',
    'Version': {
        'ApplicationId': 'string',
        'CreationTime': 'string',
        'ParameterDefinitions': [
            {
                'AllowedPattern': 'string',
                'AllowedValues': [
                    'string',
                ],
                'ConstraintDescription': 'string',
                'DefaultValue': 'string',
                'Description': 'string',
                'MaxLength': 123,
                'MaxValue': 123,
                'MinLength': 123,
                'MinValue': 123,
                'Name': 'string',
                'NoEcho': True|False,
                'ReferencedByResources': [
                    'string',
                ],
                'Type': 'string'
            },
        ],
        'RequiredCapabilities': [
            'CAPABILITY_IAM'|'CAPABILITY_NAMED_IAM'|'CAPABILITY_AUTO_EXPAND'|'CAPABILITY_RESOURCE_POLICY',
        ],
        'ResourcesSupported': True|False,
        'SemanticVersion': 'string',
        'SourceCodeUrl': 'string',
        'TemplateUrl': 'string'
    }
}

Response Structure

  • (dict) --

    Success

    • ApplicationId (string) --

      The application Amazon Resource Name (ARN).

    • Author (string) --

      The name of the author publishing the app.

      Minimum length=1. Maximum length=127.

      Pattern "^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";

    • CreationTime (string) --

      The date and time this resource was created.

    • Description (string) --

      The description of the application.

      Minimum length=1. Maximum length=256

    • HomePageUrl (string) --

      A URL with more information about the application, for example the location of your GitHub repository for the application.

    • Labels (list) --

      Labels to improve discovery of apps in search results.

      Minimum length=1. Maximum length=127. Maximum number of labels: 10

      Pattern: "^[a-zA-Z0-9+\-_:\/@]+$";

      • (string) --

    • LicenseUrl (string) --

      A link to a license file of the app that matches the spdxLicenseID value of your application.

      Maximum size 5 MB

    • Name (string) --

      The name of the application.

      Minimum length=1. Maximum length=140

      Pattern: "[a-zA-Z0-9\-]+";

    • ReadmeUrl (string) --

      A link to the readme file in Markdown language that contains a more detailed description of the application and how it works.

      Maximum size 5 MB

    • SpdxLicenseId (string) --

      A valid identifier from https://spdx.org/licenses/.

    • Version (dict) --

      Version information about the application.

      • ApplicationId (string) --

        The application Amazon Resource Name (ARN).

      • CreationTime (string) --

        The date and time this resource was created.

      • ParameterDefinitions (list) --

        An array of parameter types supported by the application.

        • (dict) --

          Parameters supported by the application.

          • AllowedPattern (string) --

            A regular expression that represents the patterns to allow for String types.

          • AllowedValues (list) --

            An array containing the list of values allowed for the parameter.

            • (string) --

          • ConstraintDescription (string) --

            A string that explains a constraint when the constraint is violated. For example, without a constraint description, a parameter that has an allowed pattern of [A-Za-z0-9]+ displays the following error message when the user specifies an invalid value:

            Malformed input-Parameter MyParameter must match pattern [A-Za-z0-9]+

            By adding a constraint description, such as "must contain only uppercase and lowercase letters and numbers," you can display the following customized error message:

            Malformed input-Parameter MyParameter must contain only uppercase and lowercase letters and numbers.

          • DefaultValue (string) --

            A value of the appropriate type for the template to use if no value is specified when a stack is created. If you define constraints for the parameter, you must specify a value that adheres to those constraints.

          • Description (string) --

            A string of up to 4,000 characters that describes the parameter.

          • MaxLength (integer) --

            An integer value that determines the largest number of characters that you want to allow for String types.

          • MaxValue (integer) --

            A numeric value that determines the largest numeric value that you want to allow for Number types.

          • MinLength (integer) --

            An integer value that determines the smallest number of characters that you want to allow for String types.

          • MinValue (integer) --

            A numeric value that determines the smallest numeric value that you want to allow for Number types.

          • Name (string) --

            The name of the parameter.

          • NoEcho (boolean) --

            Whether to mask the parameter value whenever anyone makes a call that describes the stack. If you set the value to true, the parameter value is masked with asterisks (*).

          • ReferencedByResources (list) --

            A list of AWS SAM resources that use this parameter.

            • (string) --

          • Type (string) --

            The type of the parameter.

            Valid values: String | Number | List<Number> | CommaDelimitedList

            String: A literal string.

            For example, users can specify "MyUserName".

            Number: An integer or float. AWS CloudFormation validates the parameter value as a number. However, when you use the parameter elsewhere in your template (for example, by using the Ref intrinsic function), the parameter value becomes a string.

            For example, users might specify "8888".

            List<Number>: An array of integers or floats that are separated by commas. AWS CloudFormation validates the parameter value as numbers. However, when you use the parameter elsewhere in your template (for example, by using the Ref intrinsic function), the parameter value becomes a list of strings.

            For example, users might specify "80,20", and then Ref results in ["80","20"].

            CommaDelimitedList: An array of literal strings that are separated by commas. The total number of strings should be one more than the total number of commas. Also, each member string is space-trimmed.

            For example, users might specify "test,dev,prod", and then Ref results in ["test","dev","prod"].

      • RequiredCapabilities (list) --

        A list of values that you must specify before you can deploy certain applications. Some applications might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity and Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities by specifying this parameter.

        The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, and CAPABILITY_RESOURCE_POLICY.

        The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM: AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, and AWS::IAM::Role. If the application contains IAM resources, you can specify either CAPABILITY_IAM or CAPABILITY_NAMED_IAM. If the application contains IAM resources with custom names, you must specify CAPABILITY_NAMED_IAM.

        The following resources require you to specify CAPABILITY_RESOURCE_POLICY: AWS::ApplicationAutoScaling::ScalingPolicy, AWS::S3::BucketPolicy, AWS::SQS::QueuePolicy, and AWS::SNS:TopicPolicy.

        If your application template contains any of the above resources, we recommend that you review all permissions associated with the application before deploying. If you don't specify this parameter for an application that requires capabilities, the call will fail.

        Valid values: CAPABILITY_IAM | CAPABILITY_NAMED_IAM | CAPABILITY_RESOURCE_POLICY

        • (string) --

      • ResourcesSupported (boolean) --

        Whether all of the AWS resources contained in this application are supported in the region in which it is being retrieved.

      • SemanticVersion (string) --

        The semantic version of the application:

        https://semver.org/

      • SourceCodeUrl (string) --

        A link to a public repository for the source code of your application.

      • TemplateUrl (string) --

        A link to the packaged AWS SAM template of your application.