AppConfig / Client / get_deployment

get_deployment#

AppConfig.Client.get_deployment(**kwargs)#

Retrieves information about a configuration deployment.

See also: AWS API Documentation

Request Syntax

response = client.get_deployment(
    ApplicationId='string',
    EnvironmentId='string',
    DeploymentNumber=123
)
Parameters:
  • ApplicationId (string) –

    [REQUIRED]

    The ID of the application that includes the deployment you want to get.

  • EnvironmentId (string) –

    [REQUIRED]

    The ID of the environment that includes the deployment you want to get.

  • DeploymentNumber (integer) –

    [REQUIRED]

    The sequence number of the deployment.

Return type:

dict

Returns:

Response Syntax

{
    'ApplicationId': 'string',
    'EnvironmentId': 'string',
    'DeploymentStrategyId': 'string',
    'ConfigurationProfileId': 'string',
    'DeploymentNumber': 123,
    'ConfigurationName': 'string',
    'ConfigurationLocationUri': 'string',
    'ConfigurationVersion': 'string',
    'Description': 'string',
    'DeploymentDurationInMinutes': 123,
    'GrowthType': 'LINEAR'|'EXPONENTIAL',
    'GrowthFactor': ...,
    'FinalBakeTimeInMinutes': 123,
    'State': 'BAKING'|'VALIDATING'|'DEPLOYING'|'COMPLETE'|'ROLLING_BACK'|'ROLLED_BACK',
    'EventLog': [
        {
            'EventType': 'PERCENTAGE_UPDATED'|'ROLLBACK_STARTED'|'ROLLBACK_COMPLETED'|'BAKE_TIME_STARTED'|'DEPLOYMENT_STARTED'|'DEPLOYMENT_COMPLETED',
            'TriggeredBy': 'USER'|'APPCONFIG'|'CLOUDWATCH_ALARM'|'INTERNAL_ERROR',
            'Description': 'string',
            'ActionInvocations': [
                {
                    'ExtensionIdentifier': 'string',
                    'ActionName': 'string',
                    'Uri': 'string',
                    'RoleArn': 'string',
                    'ErrorMessage': 'string',
                    'ErrorCode': 'string',
                    'InvocationId': 'string'
                },
            ],
            'OccurredAt': datetime(2015, 1, 1)
        },
    ],
    'PercentageComplete': ...,
    'StartedAt': datetime(2015, 1, 1),
    'CompletedAt': datetime(2015, 1, 1),
    'AppliedExtensions': [
        {
            'ExtensionId': 'string',
            'ExtensionAssociationId': 'string',
            'VersionNumber': 123,
            'Parameters': {
                'string': 'string'
            }
        },
    ],
    'KmsKeyArn': 'string',
    'KmsKeyIdentifier': 'string',
    'VersionLabel': 'string'
}

Response Structure

  • (dict) –

    • ApplicationId (string) –

      The ID of the application that was deployed.

    • EnvironmentId (string) –

      The ID of the environment that was deployed.

    • DeploymentStrategyId (string) –

      The ID of the deployment strategy that was deployed.

    • ConfigurationProfileId (string) –

      The ID of the configuration profile that was deployed.

    • DeploymentNumber (integer) –

      The sequence number of the deployment.

    • ConfigurationName (string) –

      The name of the configuration.

    • ConfigurationLocationUri (string) –

      Information about the source location of the configuration.

    • ConfigurationVersion (string) –

      The configuration version that was deployed.

    • Description (string) –

      The description of the deployment.

    • DeploymentDurationInMinutes (integer) –

      Total amount of time the deployment lasted.

    • GrowthType (string) –

      The algorithm used to define how percentage grew over time.

    • GrowthFactor (float) –

      The percentage of targets to receive a deployed configuration during each interval.

    • FinalBakeTimeInMinutes (integer) –

      The amount of time that AppConfig monitored for alarms before considering the deployment to be complete and no longer eligible for automatic rollback.

    • State (string) –

      The state of the deployment.

    • EventLog (list) –

      A list containing all events related to a deployment. The most recent events are displayed first.

      • (dict) –

        An object that describes a deployment event.

        • EventType (string) –

          The type of deployment event. Deployment event types include the start, stop, or completion of a deployment; a percentage update; the start or stop of a bake period; and the start or completion of a rollback.

        • TriggeredBy (string) –

          The entity that triggered the deployment event. Events can be triggered by a user, AppConfig, an Amazon CloudWatch alarm, or an internal error.

        • Description (string) –

          A description of the deployment event. Descriptions include, but are not limited to, the following:

          • The Amazon Web Services account or the Amazon CloudWatch alarm ARN that initiated a rollback.

          • The percentage of hosts that received the deployment.

          • A recommendation to attempt a new deployment (in the case of an internal error).

        • ActionInvocations (list) –

          The list of extensions that were invoked as part of the deployment.

          • (dict) –

            An extension that was invoked as part of a deployment event.

            • ExtensionIdentifier (string) –

              The name, the ID, or the Amazon Resource Name (ARN) of the extension.

            • ActionName (string) –

              The name of the action.

            • Uri (string) –

              The extension URI associated to the action point in the extension definition. The URI can be an Amazon Resource Name (ARN) for one of the following: an Lambda function, an Amazon Simple Queue Service queue, an Amazon Simple Notification Service topic, or the Amazon EventBridge default event bus.

            • RoleArn (string) –

              An Amazon Resource Name (ARN) for an Identity and Access Management assume role.

            • ErrorMessage (string) –

              The error message when an extension invocation fails.

            • ErrorCode (string) –

              The error code when an extension invocation fails.

            • InvocationId (string) –

              A system-generated ID for this invocation.

        • OccurredAt (datetime) –

          The date and time the event occurred.

    • PercentageComplete (float) –

      The percentage of targets for which the deployment is available.

    • StartedAt (datetime) –

      The time the deployment started.

    • CompletedAt (datetime) –

      The time the deployment completed.

    • AppliedExtensions (list) –

      A list of extensions that were processed as part of the deployment. The extensions that were previously associated to the configuration profile, environment, or the application when StartDeployment was called.

      • (dict) –

        An extension that was invoked during a deployment.

        • ExtensionId (string) –

          The system-generated ID of the extension.

        • ExtensionAssociationId (string) –

          The system-generated ID for the association.

        • VersionNumber (integer) –

          The extension version number.

        • Parameters (dict) –

          One or more parameters for the actions called by the extension.

          • (string) –

            • (string) –

    • KmsKeyArn (string) –

      The Amazon Resource Name of the Key Management Service key used to encrypt configuration data. You can encrypt secrets stored in Secrets Manager, Amazon Simple Storage Service (Amazon S3) objects encrypted with SSE-KMS, or secure string parameters stored in Amazon Web Services Systems Manager Parameter Store.

    • KmsKeyIdentifier (string) –

      The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses this ID to encrypt the configuration data using a customer managed key.

    • VersionLabel (string) –

      A user-defined label for an AppConfig hosted configuration version.

Exceptions

  • AppConfig.Client.exceptions.ResourceNotFoundException

  • AppConfig.Client.exceptions.InternalServerException

  • AppConfig.Client.exceptions.BadRequestException

Examples

The following get-deployment example lists details of the deployment to the application in the specified environment and deployment.

response = client.get_deployment(
    ApplicationId='339ohji',
    DeploymentNumber=1,
    EnvironmentId='54j1r29',
)

print(response)

Expected Output:

{
    'ApplicationId': '339ohji',
    'CompletedAt': datetime(2021, 9, 17, 21, 59, 3, 4, 260, 0),
    'ConfigurationLocationUri': 'ssm-parameter://Example-Parameter',
    'ConfigurationName': 'Example-Configuration-Profile',
    'ConfigurationProfileId': 'ur8hx2f',
    'ConfigurationVersion': '1',
    'DeploymentDurationInMinutes': 15,
    'DeploymentNumber': 1,
    'DeploymentStrategyId': '1225qzk',
    'EnvironmentId': '54j1r29',
    'EventLog': [
        {
            'Description': 'Deployment completed',
            'EventType': 'DEPLOYMENT_COMPLETED',
            'OccurredAt': datetime(2021, 9, 17, 21, 59, 3, 4, 260, 0),
            'TriggeredBy': 'APPCONFIG',
        },
        {
            'Description': 'Deployment bake time started',
            'EventType': 'BAKE_TIME_STARTED',
            'OccurredAt': datetime(2021, 9, 17, 21, 58, 57, 4, 260, 0),
            'TriggeredBy': 'APPCONFIG',
        },
        {
            'Description': 'Configuration available to 100.00% of clients',
            'EventType': 'PERCENTAGE_UPDATED',
            'OccurredAt': datetime(2021, 9, 17, 21, 55, 56, 4, 260, 0),
            'TriggeredBy': 'APPCONFIG',
        },
        {
            'Description': 'Configuration available to 75.00% of clients',
            'EventType': 'PERCENTAGE_UPDATED',
            'OccurredAt': datetime(2021, 9, 17, 21, 52, 56, 4, 260, 0),
            'TriggeredBy': 'APPCONFIG',
        },
        {
            'Description': 'Configuration available to 50.00% of clients',
            'EventType': 'PERCENTAGE_UPDATED',
            'OccurredAt': datetime(2021, 9, 17, 21, 49, 55, 4, 260, 0),
            'TriggeredBy': 'APPCONFIG',
        },
        {
            'Description': 'Configuration available to 25.00% of clients',
            'EventType': 'PERCENTAGE_UPDATED',
            'OccurredAt': datetime(2021, 9, 17, 21, 46, 55, 4, 260, 0),
            'TriggeredBy': 'APPCONFIG',
        },
        {
            'Description': 'Deployment started',
            'EventType': 'DEPLOYMENT_STARTED',
            'OccurredAt': datetime(2021, 9, 17, 21, 43, 54, 4, 260, 0),
            'TriggeredBy': 'USER',
        },
    ],
    'FinalBakeTimeInMinutes': 0,
    'GrowthFactor': 25,
    'GrowthType': 'LINEAR',
    'PercentageComplete': 100,
    'StartedAt': datetime(2021, 9, 17, 21, 43, 54, 4, 260, 0),
    'State': 'COMPLETE',
    'ResponseMetadata': {
        '...': '...',
    },
}