CodeDeploy / Client / get_deployment_config

get_deployment_config#

CodeDeploy.Client.get_deployment_config(**kwargs)#

Gets information about a deployment configuration.

See also: AWS API Documentation

Request Syntax

response = client.get_deployment_config(
    deploymentConfigName='string'
)
Parameters:

deploymentConfigName (string) –

[REQUIRED]

The name of a deployment configuration associated with the user or Amazon Web Services account.

Return type:

dict

Returns:

Response Syntax

{
    'deploymentConfigInfo': {
        'deploymentConfigId': 'string',
        'deploymentConfigName': 'string',
        'minimumHealthyHosts': {
            'type': 'HOST_COUNT'|'FLEET_PERCENT',
            'value': 123
        },
        'createTime': datetime(2015, 1, 1),
        'computePlatform': 'Server'|'Lambda'|'ECS',
        'trafficRoutingConfig': {
            'type': 'TimeBasedCanary'|'TimeBasedLinear'|'AllAtOnce',
            'timeBasedCanary': {
                'canaryPercentage': 123,
                'canaryInterval': 123
            },
            'timeBasedLinear': {
                'linearPercentage': 123,
                'linearInterval': 123
            }
        },
        'zonalConfig': {
            'firstZoneMonitorDurationInSeconds': 123,
            'monitorDurationInSeconds': 123,
            'minimumHealthyHostsPerZone': {
                'type': 'HOST_COUNT'|'FLEET_PERCENT',
                'value': 123
            }
        }
    }
}

Response Structure

  • (dict) –

    Represents the output of a GetDeploymentConfig operation.

    • deploymentConfigInfo (dict) –

      Information about the deployment configuration.

      • deploymentConfigId (string) –

        The deployment configuration ID.

      • deploymentConfigName (string) –

        The deployment configuration name.

      • minimumHealthyHosts (dict) –

        Information about the number or percentage of minimum healthy instances.

        • type (string) –

          The minimum healthy instance type:

          • HOST_COUNT: The minimum number of healthy instances as an absolute value.

          • FLEET_PERCENT: The minimum number of healthy instances as a percentage of the total number of instances in the deployment.

          In an example of nine instances, if a HOST_COUNT of six is specified, deploy to up to three instances at a time. The deployment is successful if six or more instances are deployed to successfully. Otherwise, the deployment fails. If a FLEET_PERCENT of 40 is specified, deploy to up to five instances at a time. The deployment is successful if four or more instances are deployed to successfully. Otherwise, the deployment fails.

          Note

          In a call to the GetDeploymentConfig, CodeDeployDefault.OneAtATime returns a minimum healthy instance type of MOST_CONCURRENCY and a value of 1. This means a deployment to only one instance at a time. (You cannot set the type to MOST_CONCURRENCY, only to HOST_COUNT or FLEET_PERCENT.) In addition, with CodeDeployDefault.OneAtATime, CodeDeploy attempts to ensure that all instances but one are kept in a healthy state during the deployment. Although this allows one instance at a time to be taken offline for a new deployment, it also means that if the deployment to the last instance fails, the overall deployment is still successful.

          For more information, see CodeDeploy Instance Health in the CodeDeploy User Guide.

        • value (integer) –

          The minimum healthy instance value.

      • createTime (datetime) –

        The time at which the deployment configuration was created.

      • computePlatform (string) –

        The destination platform type for the deployment ( Lambda, Server, or ECS).

      • trafficRoutingConfig (dict) –

        The configuration that specifies how the deployment traffic is routed. Used for deployments with a Lambda or Amazon ECS compute platform only.

        • type (string) –

          The type of traffic shifting ( TimeBasedCanary or TimeBasedLinear) used by a deployment configuration.

        • timeBasedCanary (dict) –

          A configuration that shifts traffic from one version of a Lambda function or ECS task set to another in two increments. The original and target Lambda function versions or ECS task sets are specified in the deployment’s AppSpec file.

          • canaryPercentage (integer) –

            The percentage of traffic to shift in the first increment of a TimeBasedCanary deployment.

          • canaryInterval (integer) –

            The number of minutes between the first and second traffic shifts of a TimeBasedCanary deployment.

        • timeBasedLinear (dict) –

          A configuration that shifts traffic from one version of a Lambda function or Amazon ECS task set to another in equal increments, with an equal number of minutes between each increment. The original and target Lambda function versions or Amazon ECS task sets are specified in the deployment’s AppSpec file.

          • linearPercentage (integer) –

            The percentage of traffic that is shifted at the start of each increment of a TimeBasedLinear deployment.

          • linearInterval (integer) –

            The number of minutes between each incremental traffic shift of a TimeBasedLinear deployment.

      • zonalConfig (dict) –

        Information about a zonal configuration.

        • firstZoneMonitorDurationInSeconds (integer) –

          The period of time, in seconds, that CodeDeploy must wait after completing a deployment to the first Availability Zone. CodeDeploy will wait this amount of time before starting a deployment to the second Availability Zone. You might set this option if you want to allow extra bake time for the first Availability Zone. If you don’t specify a value for firstZoneMonitorDurationInSeconds, then CodeDeploy uses the monitorDurationInSeconds value for the first Availability Zone.

          For more information about the zonal configuration feature, see zonal configuration in the CodeDeploy User Guide.

        • monitorDurationInSeconds (integer) –

          The period of time, in seconds, that CodeDeploy must wait after completing a deployment to an Availability Zone. CodeDeploy will wait this amount of time before starting a deployment to the next Availability Zone. Consider adding a monitor duration to give the deployment some time to prove itself (or ‘bake’) in one Availability Zone before it is released in the next zone. If you don’t specify a monitorDurationInSeconds, CodeDeploy starts deploying to the next Availability Zone immediately.

          For more information about the zonal configuration feature, see zonal configuration in the CodeDeploy User Guide.

        • minimumHealthyHostsPerZone (dict) –

          The number or percentage of instances that must remain available per Availability Zone during a deployment. This option works in conjunction with the MinimumHealthyHosts option. For more information, see About the minimum number of healthy hosts per Availability Zone in the CodeDeploy User Guide.

          If you don’t specify the minimumHealthyHostsPerZone option, then CodeDeploy uses a default value of 0 percent.

          For more information about the zonal configuration feature, see zonal configuration in the CodeDeploy User Guide.

          • type (string) –

            The type associated with the MinimumHealthyHostsPerZone option.

          • value (integer) –

            The value associated with the MinimumHealthyHostsPerZone option.

Exceptions

  • CodeDeploy.Client.exceptions.InvalidDeploymentConfigNameException

  • CodeDeploy.Client.exceptions.DeploymentConfigNameRequiredException

  • CodeDeploy.Client.exceptions.DeploymentConfigDoesNotExistException

  • CodeDeploy.Client.exceptions.InvalidComputePlatformException