AWS Elastic Beanstalk

2015/11/24 - AWS Elastic Beanstalk - 1 new8 updated api methods

ComposeEnvironments (new) Link ¶

Create or update a group of environments that each run a separate component of a single application. Takes a list of version labels that specify application source bundles for each of the environments to create or update. The name of each environment and other required information must be included in the source bundles in an environment manifest named env.yaml. See Compose Environments for details.

Request Syntax

client.compose_environments(
    ApplicationName='string',
    GroupName='string',
    VersionLabels=[
        'string',
    ]
)
type ApplicationName:

string

param ApplicationName:

The name of the application to which the specified source bundles belong.

type GroupName:

string

param GroupName:

The name of the group to which the target environments belong. Specify a group name only if the environment name defined in each target environment's manifest ends with a + (plus) character. See Environment Manifest (env.yaml) for details.

type VersionLabels:

list

param VersionLabels:

A list of version labels, specifying one or more application source bundles that belong to the target application. Each source bundle must include an environment manifest that specifies the name of the environment and the name of the solution stack to use, and optionally can specify environment links to create.

  • (string) --

rtype:

dict

returns:

Response Syntax

{
    'Environments': [
        {
            'EnvironmentName': 'string',
            'EnvironmentId': 'string',
            'ApplicationName': 'string',
            'VersionLabel': 'string',
            'SolutionStackName': 'string',
            'TemplateName': 'string',
            'Description': 'string',
            'EndpointURL': 'string',
            'CNAME': 'string',
            'DateCreated': datetime(2015, 1, 1),
            'DateUpdated': datetime(2015, 1, 1),
            'Status': 'Launching'|'Updating'|'Ready'|'Terminating'|'Terminated',
            'AbortableOperationInProgress': True|False,
            'Health': 'Green'|'Yellow'|'Red'|'Grey',
            'HealthStatus': 'NoData'|'Unknown'|'Pending'|'Ok'|'Info'|'Warning'|'Degraded'|'Severe',
            'Resources': {
                'LoadBalancer': {
                    'LoadBalancerName': 'string',
                    'Domain': 'string',
                    'Listeners': [
                        {
                            'Protocol': 'string',
                            'Port': 123
                        },
                    ]
                }
            },
            'Tier': {
                'Name': 'string',
                'Type': 'string',
                'Version': 'string'
            },
            'EnvironmentLinks': [
                {
                    'LinkName': 'string',
                    'EnvironmentName': 'string'
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    Result message containing a list of environment descriptions.

    • Environments (list) --

      Returns an EnvironmentDescription list.

      • (dict) --

        Describes the properties of an environment.

        • EnvironmentName (string) --

          The name of this environment.

        • EnvironmentId (string) --

          The ID of this environment.

        • ApplicationName (string) --

          The name of the application associated with this environment.

        • VersionLabel (string) --

          The application version deployed in this environment.

        • SolutionStackName (string) --

          The name of the SolutionStack deployed with this environment.

        • TemplateName (string) --

          The name of the configuration template used to originally launch this environment.

        • Description (string) --

          Describes this environment.

        • EndpointURL (string) --

          For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.

        • CNAME (string) --

          The URL to the CNAME for this environment.

        • DateCreated (datetime) --

          The creation date for this environment.

        • DateUpdated (datetime) --

          The last modified date for this environment.

        • Status (string) --

          The current operational status of the environment:

          • Launching: Environment is in the process of initial deployment.

          • Updating: Environment is in the process of updating its configuration settings or application version.

          • Ready: Environment is available to have an action performed on it, such as update or terminate.

          • Terminating: Environment is in the shut-down process.

          • Terminated: Environment is not running.

        • AbortableOperationInProgress (boolean) --

          Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.

          true: There is an update in progress.

          false: There are no updates currently in progress.

        • Health (string) --

          Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:

          • Red: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.

          • Yellow: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.

          • Green: Indicates the environment is healthy and fully functional.

          • Grey: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an UpdateEnvironment or RestartEnvironement request.

          Default: Grey

        • HealthStatus (string) --

          Returns the health status of the application running in your environment. For more information, see Health Colors and Statuses.

        • Resources (dict) --

          The description of the AWS resources used by this environment.

          • LoadBalancer (dict) --

            Describes the LoadBalancer.

            • LoadBalancerName (string) --

              The name of the LoadBalancer.

            • Domain (string) --

              The domain name of the LoadBalancer.

            • Listeners (list) --

              A list of Listeners used by the LoadBalancer.

              • (dict) --

                Describes the properties of a Listener for the LoadBalancer.

                • Protocol (string) --

                  The protocol that is used by the Listener.

                • Port (integer) --

                  The port that is used by the Listener.

        • Tier (dict) --

          Describes the current tier of this environment.

          • Name (string) --

            The name of this environment tier.

          • Type (string) --

            The type of this environment tier.

          • Version (string) --

            The version of this environment tier.

        • EnvironmentLinks (list) --

          A list of links to other environments in the same group.

          • (dict) --

            A link to another environment, defined in the environment's manifest. Links provide connection information in system properties that can be used to connect to another environment in the same group. See Environment Manifest (env.yaml) for details.

            • LinkName (string) --

              The name of the link.

            • EnvironmentName (string) --

              The name of the linked environment (the dependency).

ComposeEnvironments (updated) Link ¶
Changes (response)
{'Environments': {'EnvironmentLinks': [{'EnvironmentName': 'string',
                                        'LinkName': 'string'}]}}

Create or update a group of environments that each run a separate component of a single application. Takes a list of version labels that specify application source bundles for each of the environments to create or update. The name of each environment and other required information must be included in the source bundles in an environment manifest named env.yaml. See Compose Environments for details.

Request Syntax

client.compose_environments(
    ApplicationName='string',
    GroupName='string',
    VersionLabels=[
        'string',
    ]
)
type ApplicationName:

string

param ApplicationName:

The name of the application to which the specified source bundles belong.

type GroupName:

string

param GroupName:

The name of the group to which the target environments belong. Specify a group name only if the environment name defined in each target environment's manifest ends with a + (plus) character. See Environment Manifest (env.yaml) for details.

type VersionLabels:

list

param VersionLabels:

A list of version labels, specifying one or more application source bundles that belong to the target application. Each source bundle must include an environment manifest that specifies the name of the environment and the name of the solution stack to use, and optionally can specify environment links to create.

  • (string) --

rtype:

dict

returns:

Response Syntax

{
    'Environments': [
        {
            'EnvironmentName': 'string',
            'EnvironmentId': 'string',
            'ApplicationName': 'string',
            'VersionLabel': 'string',
            'SolutionStackName': 'string',
            'TemplateName': 'string',
            'Description': 'string',
            'EndpointURL': 'string',
            'CNAME': 'string',
            'DateCreated': datetime(2015, 1, 1),
            'DateUpdated': datetime(2015, 1, 1),
            'Status': 'Launching'|'Updating'|'Ready'|'Terminating'|'Terminated',
            'AbortableOperationInProgress': True|False,
            'Health': 'Green'|'Yellow'|'Red'|'Grey',
            'HealthStatus': 'NoData'|'Unknown'|'Pending'|'Ok'|'Info'|'Warning'|'Degraded'|'Severe',
            'Resources': {
                'LoadBalancer': {
                    'LoadBalancerName': 'string',
                    'Domain': 'string',
                    'Listeners': [
                        {
                            'Protocol': 'string',
                            'Port': 123
                        },
                    ]
                }
            },
            'Tier': {
                'Name': 'string',
                'Type': 'string',
                'Version': 'string'
            },
            'EnvironmentLinks': [
                {
                    'LinkName': 'string',
                    'EnvironmentName': 'string'
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    Result message containing a list of environment descriptions.

    • Environments (list) --

      Returns an EnvironmentDescription list.

      • (dict) --

        Describes the properties of an environment.

        • EnvironmentName (string) --

          The name of this environment.

        • EnvironmentId (string) --

          The ID of this environment.

        • ApplicationName (string) --

          The name of the application associated with this environment.

        • VersionLabel (string) --

          The application version deployed in this environment.

        • SolutionStackName (string) --

          The name of the SolutionStack deployed with this environment.

        • TemplateName (string) --

          The name of the configuration template used to originally launch this environment.

        • Description (string) --

          Describes this environment.

        • EndpointURL (string) --

          For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.

        • CNAME (string) --

          The URL to the CNAME for this environment.

        • DateCreated (datetime) --

          The creation date for this environment.

        • DateUpdated (datetime) --

          The last modified date for this environment.

        • Status (string) --

          The current operational status of the environment:

          • Launching: Environment is in the process of initial deployment.

          • Updating: Environment is in the process of updating its configuration settings or application version.

          • Ready: Environment is available to have an action performed on it, such as update or terminate.

          • Terminating: Environment is in the shut-down process.

          • Terminated: Environment is not running.

        • AbortableOperationInProgress (boolean) --

          Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.

          true: There is an update in progress.

          false: There are no updates currently in progress.

        • Health (string) --

          Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:

          • Red: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.

          • Yellow: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.

          • Green: Indicates the environment is healthy and fully functional.

          • Grey: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an UpdateEnvironment or RestartEnvironement request.

          Default: Grey

        • HealthStatus (string) --

          Returns the health status of the application running in your environment. For more information, see Health Colors and Statuses.

        • Resources (dict) --

          The description of the AWS resources used by this environment.

          • LoadBalancer (dict) --

            Describes the LoadBalancer.

            • LoadBalancerName (string) --

              The name of the LoadBalancer.

            • Domain (string) --

              The domain name of the LoadBalancer.

            • Listeners (list) --

              A list of Listeners used by the LoadBalancer.

              • (dict) --

                Describes the properties of a Listener for the LoadBalancer.

                • Protocol (string) --

                  The protocol that is used by the Listener.

                • Port (integer) --

                  The port that is used by the Listener.

        • Tier (dict) --

          Describes the current tier of this environment.

          • Name (string) --

            The name of this environment tier.

          • Type (string) --

            The type of this environment tier.

          • Version (string) --

            The version of this environment tier.

        • EnvironmentLinks (list) --

          A list of links to other environments in the same group.

          • (dict) --

            A link to another environment, defined in the environment's manifest. Links provide connection information in system properties that can be used to connect to another environment in the same group. See Environment Manifest (env.yaml) for details.

            • LinkName (string) --

              The name of the link.

            • EnvironmentName (string) --

              The name of the linked environment (the dependency).

CreateApplicationVersion (updated) Link ¶
Changes (request, response)
Request
{'Process': 'boolean'}
Response
{'ApplicationVersion': {'Status': 'Processed | Unprocessed | Failed | '
                                  'Processing'}}

Creates an application version for the specified application.

Request Syntax

client.create_application_version(
    ApplicationName='string',
    VersionLabel='string',
    Description='string',
    SourceBundle={
        'S3Bucket': 'string',
        'S3Key': 'string'
    },
    AutoCreateApplication=True|False,
    Process=True|False
)
type ApplicationName:

string

param ApplicationName:

[REQUIRED]

The name of the application. If no application is found with this name, and AutoCreateApplication is false, returns an InvalidParameterValue error.

type VersionLabel:

string

param VersionLabel:

[REQUIRED]

A label identifying this version.

Constraint: Must be unique per application. If an application version already exists with this label for the specified application, AWS Elastic Beanstalk returns an InvalidParameterValue error.

type Description:

string

param Description:

Describes this version.

type SourceBundle:

dict

param SourceBundle:

The Amazon S3 bucket and key that identify the location of the source bundle for this version.

If data found at the Amazon S3 location exceeds the maximum allowed source bundle size, AWS Elastic Beanstalk returns an InvalidParameterValue error. The maximum size allowed is 512 MB.

Default: If not specified, AWS Elastic Beanstalk uses a sample application. If only partially specified (for example, a bucket is provided but not the key) or if no data is found at the Amazon S3 location, AWS Elastic Beanstalk returns an InvalidParameterCombination error.

  • S3Bucket (string) --

    The Amazon S3 bucket where the data is located.

  • S3Key (string) --

    The Amazon S3 key where the data is located.

type AutoCreateApplication:

boolean

param AutoCreateApplication:

Determines how the system behaves if the specified application for this version does not already exist:

  • true : Automatically creates the specified application for this release if it does not already exist.

  • false : Throws an InvalidParameterValue if the specified application for this release does not already exist.

Default: false

Valid Values: true | false

type Process:

boolean

param Process:

Preprocesses and validates the environment manifest and configuration files in the source bundle. Validating configuration files can identify issues prior to deploying the application version to an environment.

rtype:

dict

returns:

Response Syntax

{
    'ApplicationVersion': {
        'ApplicationName': 'string',
        'Description': 'string',
        'VersionLabel': 'string',
        'SourceBundle': {
            'S3Bucket': 'string',
            'S3Key': 'string'
        },
        'DateCreated': datetime(2015, 1, 1),
        'DateUpdated': datetime(2015, 1, 1),
        'Status': 'Processed'|'Unprocessed'|'Failed'|'Processing'
    }
}

Response Structure

  • (dict) --

    Result message wrapping a single description of an application version.

    • ApplicationVersion (dict) --

      The ApplicationVersionDescription of the application version.

      • ApplicationName (string) --

        The name of the application associated with this release.

      • Description (string) --

        The description of this application version.

      • VersionLabel (string) --

        A label uniquely identifying the version for the associated application.

      • SourceBundle (dict) --

        The location where the source bundle is located for this version.

        • S3Bucket (string) --

          The Amazon S3 bucket where the data is located.

        • S3Key (string) --

          The Amazon S3 key where the data is located.

      • DateCreated (datetime) --

        The creation date of the application version.

      • DateUpdated (datetime) --

        The last modified date of the application version.

      • Status (string) --

        The processing status of the application version.

CreateEnvironment (updated) Link ¶
Changes (request, response)
Request
{'GroupName': 'string'}
Response
{'EnvironmentLinks': [{'EnvironmentName': 'string', 'LinkName': 'string'}]}

Launches an environment for the specified application using the specified configuration.

Request Syntax

client.create_environment(
    ApplicationName='string',
    EnvironmentName='string',
    GroupName='string',
    Description='string',
    CNAMEPrefix='string',
    Tier={
        'Name': 'string',
        'Type': 'string',
        'Version': 'string'
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    VersionLabel='string',
    TemplateName='string',
    SolutionStackName='string',
    OptionSettings=[
        {
            'ResourceName': 'string',
            'Namespace': 'string',
            'OptionName': 'string',
            'Value': 'string'
        },
    ],
    OptionsToRemove=[
        {
            'ResourceName': 'string',
            'Namespace': 'string',
            'OptionName': 'string'
        },
    ]
)
type ApplicationName:

string

param ApplicationName:

[REQUIRED]

The name of the application that contains the version to be deployed.

If no application is found with this name, CreateEnvironment returns an InvalidParameterValue error.

type EnvironmentName:

string

param EnvironmentName:

A unique name for the deployment environment. Used in the application URL.

Constraint: Must be from 4 to 23 characters in length. The name can contain only letters, numbers, and hyphens. It cannot start or end with a hyphen. This name must be unique in your account. If the specified name already exists, AWS Elastic Beanstalk returns an InvalidParameterValue error.

Default: If the CNAME parameter is not specified, the environment name becomes part of the CNAME, and therefore part of the visible URL for your application.

type GroupName:

string

param GroupName:

The name of the group to which the target environment belongs. Specify a group name only if the environment's name is specified in an environment manifest and not with the environment name parameter. See Environment Manifest (env.yaml) for details.

type Description:

string

param Description:

Describes this environment.

type CNAMEPrefix:

string

param CNAMEPrefix:

If specified, the environment attempts to use this value as the prefix for the CNAME. If not specified, the CNAME is generated automatically by appending a random alphanumeric string to the environment name.

type Tier:

dict

param Tier:

This specifies the tier to use for creating this environment.

  • Name (string) --

    The name of this environment tier.

  • Type (string) --

    The type of this environment tier.

  • Version (string) --

    The version of this environment tier.

type Tags:

list

param Tags:

This specifies the tags applied to resources in the environment.

  • (dict) --

    Describes a tag applied to a resource in an environment.

    • Key (string) --

      The key of the tag.

    • Value (string) --

      The value of the tag.

type VersionLabel:

string

param VersionLabel:

The name of the application version to deploy.

If the specified application has no associated application versions, AWS Elastic Beanstalk UpdateEnvironment returns an InvalidParameterValue error.

Default: If not specified, AWS Elastic Beanstalk attempts to launch the sample application in the container.

type TemplateName:

string

param TemplateName:

The name of the configuration template to use in deployment. If no configuration template is found with this name, AWS Elastic Beanstalk returns an InvalidParameterValue error.

Condition: You must specify either this parameter or a SolutionStackName, but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter error.

type SolutionStackName:

string

param SolutionStackName:

This is an alternative to specifying a template name. If specified, AWS Elastic Beanstalk sets the configuration values to the default values associated with the specified solution stack.

Condition: You must specify either this or a TemplateName, but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter error.

type OptionSettings:

list

param OptionSettings:

If specified, AWS Elastic Beanstalk sets the specified configuration options to the requested value in the configuration set for the new environment. These override the values obtained from the solution stack or the configuration template.

  • (dict) --

    A specification identifying an individual configuration option along with its current value. For a list of possible option values, go to Option Values in the AWS Elastic Beanstalk Developer Guide.

    • ResourceName (string) --

      A unique resource name for a time-based scaling configuration option.

    • Namespace (string) --

      A unique namespace identifying the option's associated AWS resource.

    • OptionName (string) --

      The name of the configuration option.

    • Value (string) --

      The current value for the configuration option.

type OptionsToRemove:

list

param OptionsToRemove:

A list of custom user-defined configuration options to remove from the configuration set for this new environment.

  • (dict) --

    A specification identifying an individual configuration option.

    • ResourceName (string) --

      A unique resource name for a time-based scaling configuration option.

    • Namespace (string) --

      A unique namespace identifying the option's associated AWS resource.

    • OptionName (string) --

      The name of the configuration option.

rtype:

dict

returns:

Response Syntax

{
    'EnvironmentName': 'string',
    'EnvironmentId': 'string',
    'ApplicationName': 'string',
    'VersionLabel': 'string',
    'SolutionStackName': 'string',
    'TemplateName': 'string',
    'Description': 'string',
    'EndpointURL': 'string',
    'CNAME': 'string',
    'DateCreated': datetime(2015, 1, 1),
    'DateUpdated': datetime(2015, 1, 1),
    'Status': 'Launching'|'Updating'|'Ready'|'Terminating'|'Terminated',
    'AbortableOperationInProgress': True|False,
    'Health': 'Green'|'Yellow'|'Red'|'Grey',
    'HealthStatus': 'NoData'|'Unknown'|'Pending'|'Ok'|'Info'|'Warning'|'Degraded'|'Severe',
    'Resources': {
        'LoadBalancer': {
            'LoadBalancerName': 'string',
            'Domain': 'string',
            'Listeners': [
                {
                    'Protocol': 'string',
                    'Port': 123
                },
            ]
        }
    },
    'Tier': {
        'Name': 'string',
        'Type': 'string',
        'Version': 'string'
    },
    'EnvironmentLinks': [
        {
            'LinkName': 'string',
            'EnvironmentName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    Describes the properties of an environment.

    • EnvironmentName (string) --

      The name of this environment.

    • EnvironmentId (string) --

      The ID of this environment.

    • ApplicationName (string) --

      The name of the application associated with this environment.

    • VersionLabel (string) --

      The application version deployed in this environment.

    • SolutionStackName (string) --

      The name of the SolutionStack deployed with this environment.

    • TemplateName (string) --

      The name of the configuration template used to originally launch this environment.

    • Description (string) --

      Describes this environment.

    • EndpointURL (string) --

      For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.

    • CNAME (string) --

      The URL to the CNAME for this environment.

    • DateCreated (datetime) --

      The creation date for this environment.

    • DateUpdated (datetime) --

      The last modified date for this environment.

    • Status (string) --

      The current operational status of the environment:

      • Launching: Environment is in the process of initial deployment.

      • Updating: Environment is in the process of updating its configuration settings or application version.

      • Ready: Environment is available to have an action performed on it, such as update or terminate.

      • Terminating: Environment is in the shut-down process.

      • Terminated: Environment is not running.

    • AbortableOperationInProgress (boolean) --

      Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.

      true: There is an update in progress.

      false: There are no updates currently in progress.

    • Health (string) --

      Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:

      • Red: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.

      • Yellow: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.

      • Green: Indicates the environment is healthy and fully functional.

      • Grey: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an UpdateEnvironment or RestartEnvironement request.

      Default: Grey

    • HealthStatus (string) --

      Returns the health status of the application running in your environment. For more information, see Health Colors and Statuses.

    • Resources (dict) --

      The description of the AWS resources used by this environment.

      • LoadBalancer (dict) --

        Describes the LoadBalancer.

        • LoadBalancerName (string) --

          The name of the LoadBalancer.

        • Domain (string) --

          The domain name of the LoadBalancer.

        • Listeners (list) --

          A list of Listeners used by the LoadBalancer.

          • (dict) --

            Describes the properties of a Listener for the LoadBalancer.

            • Protocol (string) --

              The protocol that is used by the Listener.

            • Port (integer) --

              The port that is used by the Listener.

    • Tier (dict) --

      Describes the current tier of this environment.

      • Name (string) --

        The name of this environment tier.

      • Type (string) --

        The type of this environment tier.

      • Version (string) --

        The version of this environment tier.

    • EnvironmentLinks (list) --

      A list of links to other environments in the same group.

      • (dict) --

        A link to another environment, defined in the environment's manifest. Links provide connection information in system properties that can be used to connect to another environment in the same group. See Environment Manifest (env.yaml) for details.

        • LinkName (string) --

          The name of the link.

        • EnvironmentName (string) --

          The name of the linked environment (the dependency).

DescribeApplicationVersions (updated) Link ¶
Changes (response)
{'ApplicationVersions': {'Status': 'Processed | Unprocessed | Failed | '
                                   'Processing'}}

Retrieve a list of application versions stored in your AWS Elastic Beanstalk storage bucket.

Request Syntax

client.describe_application_versions(
    ApplicationName='string',
    VersionLabels=[
        'string',
    ]
)
type ApplicationName:

string

param ApplicationName:

If specified, AWS Elastic Beanstalk restricts the returned descriptions to only include ones that are associated with the specified application.

type VersionLabels:

list

param VersionLabels:

If specified, restricts the returned descriptions to only include ones that have the specified version labels.

  • (string) --

rtype:

dict

returns:

Response Syntax

{
    'ApplicationVersions': [
        {
            'ApplicationName': 'string',
            'Description': 'string',
            'VersionLabel': 'string',
            'SourceBundle': {
                'S3Bucket': 'string',
                'S3Key': 'string'
            },
            'DateCreated': datetime(2015, 1, 1),
            'DateUpdated': datetime(2015, 1, 1),
            'Status': 'Processed'|'Unprocessed'|'Failed'|'Processing'
        },
    ]
}

Response Structure

  • (dict) --

    Result message wrapping a list of application version descriptions.

    • ApplicationVersions (list) --

      List of ApplicationVersionDescription objects sorted by order of creation.

      • (dict) --

        Describes the properties of an application version.

        • ApplicationName (string) --

          The name of the application associated with this release.

        • Description (string) --

          The description of this application version.

        • VersionLabel (string) --

          A label uniquely identifying the version for the associated application.

        • SourceBundle (dict) --

          The location where the source bundle is located for this version.

          • S3Bucket (string) --

            The Amazon S3 bucket where the data is located.

          • S3Key (string) --

            The Amazon S3 key where the data is located.

        • DateCreated (datetime) --

          The creation date of the application version.

        • DateUpdated (datetime) --

          The last modified date of the application version.

        • Status (string) --

          The processing status of the application version.

DescribeEnvironments (updated) Link ¶
Changes (response)
{'Environments': {'EnvironmentLinks': [{'EnvironmentName': 'string',
                                        'LinkName': 'string'}]}}

Returns descriptions for existing environments.

Request Syntax

client.describe_environments(
    ApplicationName='string',
    VersionLabel='string',
    EnvironmentIds=[
        'string',
    ],
    EnvironmentNames=[
        'string',
    ],
    IncludeDeleted=True|False,
    IncludedDeletedBackTo=datetime(2015, 1, 1)
)
type ApplicationName:

string

param ApplicationName:

If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those that are associated with this application.

type VersionLabel:

string

param VersionLabel:

If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those that are associated with this application version.

type EnvironmentIds:

list

param EnvironmentIds:

If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those that have the specified IDs.

  • (string) --

type EnvironmentNames:

list

param EnvironmentNames:

If specified, AWS Elastic Beanstalk restricts the returned descriptions to include only those that have the specified names.

  • (string) --

type IncludeDeleted:

boolean

param IncludeDeleted:

Indicates whether to include deleted environments:

true: Environments that have been deleted after IncludedDeletedBackTo are displayed.

false: Do not include deleted environments.

type IncludedDeletedBackTo:

datetime

param IncludedDeletedBackTo:

If specified when IncludeDeleted is set to true, then environments deleted after this date are displayed.

rtype:

dict

returns:

Response Syntax

{
    'Environments': [
        {
            'EnvironmentName': 'string',
            'EnvironmentId': 'string',
            'ApplicationName': 'string',
            'VersionLabel': 'string',
            'SolutionStackName': 'string',
            'TemplateName': 'string',
            'Description': 'string',
            'EndpointURL': 'string',
            'CNAME': 'string',
            'DateCreated': datetime(2015, 1, 1),
            'DateUpdated': datetime(2015, 1, 1),
            'Status': 'Launching'|'Updating'|'Ready'|'Terminating'|'Terminated',
            'AbortableOperationInProgress': True|False,
            'Health': 'Green'|'Yellow'|'Red'|'Grey',
            'HealthStatus': 'NoData'|'Unknown'|'Pending'|'Ok'|'Info'|'Warning'|'Degraded'|'Severe',
            'Resources': {
                'LoadBalancer': {
                    'LoadBalancerName': 'string',
                    'Domain': 'string',
                    'Listeners': [
                        {
                            'Protocol': 'string',
                            'Port': 123
                        },
                    ]
                }
            },
            'Tier': {
                'Name': 'string',
                'Type': 'string',
                'Version': 'string'
            },
            'EnvironmentLinks': [
                {
                    'LinkName': 'string',
                    'EnvironmentName': 'string'
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    Result message containing a list of environment descriptions.

    • Environments (list) --

      Returns an EnvironmentDescription list.

      • (dict) --

        Describes the properties of an environment.

        • EnvironmentName (string) --

          The name of this environment.

        • EnvironmentId (string) --

          The ID of this environment.

        • ApplicationName (string) --

          The name of the application associated with this environment.

        • VersionLabel (string) --

          The application version deployed in this environment.

        • SolutionStackName (string) --

          The name of the SolutionStack deployed with this environment.

        • TemplateName (string) --

          The name of the configuration template used to originally launch this environment.

        • Description (string) --

          Describes this environment.

        • EndpointURL (string) --

          For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.

        • CNAME (string) --

          The URL to the CNAME for this environment.

        • DateCreated (datetime) --

          The creation date for this environment.

        • DateUpdated (datetime) --

          The last modified date for this environment.

        • Status (string) --

          The current operational status of the environment:

          • Launching: Environment is in the process of initial deployment.

          • Updating: Environment is in the process of updating its configuration settings or application version.

          • Ready: Environment is available to have an action performed on it, such as update or terminate.

          • Terminating: Environment is in the shut-down process.

          • Terminated: Environment is not running.

        • AbortableOperationInProgress (boolean) --

          Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.

          true: There is an update in progress.

          false: There are no updates currently in progress.

        • Health (string) --

          Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:

          • Red: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.

          • Yellow: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.

          • Green: Indicates the environment is healthy and fully functional.

          • Grey: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an UpdateEnvironment or RestartEnvironement request.

          Default: Grey

        • HealthStatus (string) --

          Returns the health status of the application running in your environment. For more information, see Health Colors and Statuses.

        • Resources (dict) --

          The description of the AWS resources used by this environment.

          • LoadBalancer (dict) --

            Describes the LoadBalancer.

            • LoadBalancerName (string) --

              The name of the LoadBalancer.

            • Domain (string) --

              The domain name of the LoadBalancer.

            • Listeners (list) --

              A list of Listeners used by the LoadBalancer.

              • (dict) --

                Describes the properties of a Listener for the LoadBalancer.

                • Protocol (string) --

                  The protocol that is used by the Listener.

                • Port (integer) --

                  The port that is used by the Listener.

        • Tier (dict) --

          Describes the current tier of this environment.

          • Name (string) --

            The name of this environment tier.

          • Type (string) --

            The type of this environment tier.

          • Version (string) --

            The version of this environment tier.

        • EnvironmentLinks (list) --

          A list of links to other environments in the same group.

          • (dict) --

            A link to another environment, defined in the environment's manifest. Links provide connection information in system properties that can be used to connect to another environment in the same group. See Environment Manifest (env.yaml) for details.

            • LinkName (string) --

              The name of the link.

            • EnvironmentName (string) --

              The name of the linked environment (the dependency).

TerminateEnvironment (updated) Link ¶
Changes (request, response)
Request
{'ForceTerminate': 'boolean'}
Response
{'EnvironmentLinks': [{'EnvironmentName': 'string', 'LinkName': 'string'}]}

Terminates the specified environment.

Request Syntax

client.terminate_environment(
    EnvironmentId='string',
    EnvironmentName='string',
    TerminateResources=True|False,
    ForceTerminate=True|False
)
type EnvironmentId:

string

param EnvironmentId:

The ID of the environment to terminate.

Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

type EnvironmentName:

string

param EnvironmentName:

The name of the environment to terminate.

Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

type TerminateResources:

boolean

param TerminateResources:

Indicates whether the associated AWS resources should shut down when the environment is terminated:

  • true: The specified environment as well as the associated AWS resources, such as Auto Scaling group and LoadBalancer, are terminated.

  • false: AWS Elastic Beanstalk resource management is removed from the environment, but the AWS resources continue to operate.

For more information, see the AWS Elastic Beanstalk User Guide.

Default: true

Valid Values: true | false

type ForceTerminate:

boolean

param ForceTerminate:

Terminates the target environment even if another environment in the same group is dependent on it.

rtype:

dict

returns:

Response Syntax

{
    'EnvironmentName': 'string',
    'EnvironmentId': 'string',
    'ApplicationName': 'string',
    'VersionLabel': 'string',
    'SolutionStackName': 'string',
    'TemplateName': 'string',
    'Description': 'string',
    'EndpointURL': 'string',
    'CNAME': 'string',
    'DateCreated': datetime(2015, 1, 1),
    'DateUpdated': datetime(2015, 1, 1),
    'Status': 'Launching'|'Updating'|'Ready'|'Terminating'|'Terminated',
    'AbortableOperationInProgress': True|False,
    'Health': 'Green'|'Yellow'|'Red'|'Grey',
    'HealthStatus': 'NoData'|'Unknown'|'Pending'|'Ok'|'Info'|'Warning'|'Degraded'|'Severe',
    'Resources': {
        'LoadBalancer': {
            'LoadBalancerName': 'string',
            'Domain': 'string',
            'Listeners': [
                {
                    'Protocol': 'string',
                    'Port': 123
                },
            ]
        }
    },
    'Tier': {
        'Name': 'string',
        'Type': 'string',
        'Version': 'string'
    },
    'EnvironmentLinks': [
        {
            'LinkName': 'string',
            'EnvironmentName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    Describes the properties of an environment.

    • EnvironmentName (string) --

      The name of this environment.

    • EnvironmentId (string) --

      The ID of this environment.

    • ApplicationName (string) --

      The name of the application associated with this environment.

    • VersionLabel (string) --

      The application version deployed in this environment.

    • SolutionStackName (string) --

      The name of the SolutionStack deployed with this environment.

    • TemplateName (string) --

      The name of the configuration template used to originally launch this environment.

    • Description (string) --

      Describes this environment.

    • EndpointURL (string) --

      For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.

    • CNAME (string) --

      The URL to the CNAME for this environment.

    • DateCreated (datetime) --

      The creation date for this environment.

    • DateUpdated (datetime) --

      The last modified date for this environment.

    • Status (string) --

      The current operational status of the environment:

      • Launching: Environment is in the process of initial deployment.

      • Updating: Environment is in the process of updating its configuration settings or application version.

      • Ready: Environment is available to have an action performed on it, such as update or terminate.

      • Terminating: Environment is in the shut-down process.

      • Terminated: Environment is not running.

    • AbortableOperationInProgress (boolean) --

      Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.

      true: There is an update in progress.

      false: There are no updates currently in progress.

    • Health (string) --

      Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:

      • Red: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.

      • Yellow: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.

      • Green: Indicates the environment is healthy and fully functional.

      • Grey: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an UpdateEnvironment or RestartEnvironement request.

      Default: Grey

    • HealthStatus (string) --

      Returns the health status of the application running in your environment. For more information, see Health Colors and Statuses.

    • Resources (dict) --

      The description of the AWS resources used by this environment.

      • LoadBalancer (dict) --

        Describes the LoadBalancer.

        • LoadBalancerName (string) --

          The name of the LoadBalancer.

        • Domain (string) --

          The domain name of the LoadBalancer.

        • Listeners (list) --

          A list of Listeners used by the LoadBalancer.

          • (dict) --

            Describes the properties of a Listener for the LoadBalancer.

            • Protocol (string) --

              The protocol that is used by the Listener.

            • Port (integer) --

              The port that is used by the Listener.

    • Tier (dict) --

      Describes the current tier of this environment.

      • Name (string) --

        The name of this environment tier.

      • Type (string) --

        The type of this environment tier.

      • Version (string) --

        The version of this environment tier.

    • EnvironmentLinks (list) --

      A list of links to other environments in the same group.

      • (dict) --

        A link to another environment, defined in the environment's manifest. Links provide connection information in system properties that can be used to connect to another environment in the same group. See Environment Manifest (env.yaml) for details.

        • LinkName (string) --

          The name of the link.

        • EnvironmentName (string) --

          The name of the linked environment (the dependency).

UpdateApplicationVersion (updated) Link ¶
Changes (response)
{'ApplicationVersion': {'Status': 'Processed | Unprocessed | Failed | '
                                  'Processing'}}

Updates the specified application version to have the specified properties.

Request Syntax

client.update_application_version(
    ApplicationName='string',
    VersionLabel='string',
    Description='string'
)
type ApplicationName:

string

param ApplicationName:

[REQUIRED]

The name of the application associated with this version.

If no application is found with this name, UpdateApplication returns an InvalidParameterValue error.

type VersionLabel:

string

param VersionLabel:

[REQUIRED]

The name of the version to update.

If no application version is found with this label, UpdateApplication returns an InvalidParameterValue error.

type Description:

string

param Description:

A new description for this release.

rtype:

dict

returns:

Response Syntax

{
    'ApplicationVersion': {
        'ApplicationName': 'string',
        'Description': 'string',
        'VersionLabel': 'string',
        'SourceBundle': {
            'S3Bucket': 'string',
            'S3Key': 'string'
        },
        'DateCreated': datetime(2015, 1, 1),
        'DateUpdated': datetime(2015, 1, 1),
        'Status': 'Processed'|'Unprocessed'|'Failed'|'Processing'
    }
}

Response Structure

  • (dict) --

    Result message wrapping a single description of an application version.

    • ApplicationVersion (dict) --

      The ApplicationVersionDescription of the application version.

      • ApplicationName (string) --

        The name of the application associated with this release.

      • Description (string) --

        The description of this application version.

      • VersionLabel (string) --

        A label uniquely identifying the version for the associated application.

      • SourceBundle (dict) --

        The location where the source bundle is located for this version.

        • S3Bucket (string) --

          The Amazon S3 bucket where the data is located.

        • S3Key (string) --

          The Amazon S3 key where the data is located.

      • DateCreated (datetime) --

        The creation date of the application version.

      • DateUpdated (datetime) --

        The last modified date of the application version.

      • Status (string) --

        The processing status of the application version.

UpdateEnvironment (updated) Link ¶
Changes (request, response)
Request
{'ApplicationName': 'string', 'GroupName': 'string'}
Response
{'EnvironmentLinks': [{'EnvironmentName': 'string', 'LinkName': 'string'}]}

Updates the environment description, deploys a new application version, updates the configuration settings to an entirely new configuration template, or updates select configuration option values in the running environment.

Attempting to update both the release and configuration is not allowed and AWS Elastic Beanstalk returns an InvalidParameterCombination error.

When updating the configuration settings to a new template or individual settings, a draft configuration is created and DescribeConfigurationSettings for this environment returns two setting descriptions with different DeploymentStatus values.

Request Syntax

client.update_environment(
    ApplicationName='string',
    EnvironmentId='string',
    EnvironmentName='string',
    GroupName='string',
    Description='string',
    Tier={
        'Name': 'string',
        'Type': 'string',
        'Version': 'string'
    },
    VersionLabel='string',
    TemplateName='string',
    SolutionStackName='string',
    OptionSettings=[
        {
            'ResourceName': 'string',
            'Namespace': 'string',
            'OptionName': 'string',
            'Value': 'string'
        },
    ],
    OptionsToRemove=[
        {
            'ResourceName': 'string',
            'Namespace': 'string',
            'OptionName': 'string'
        },
    ]
)
type ApplicationName:

string

param ApplicationName:

The name of the application with which the environment is associated.

type EnvironmentId:

string

param EnvironmentId:

The ID of the environment to update.

If no environment with this ID exists, AWS Elastic Beanstalk returns an InvalidParameterValue error.

Condition: You must specify either this or an EnvironmentName, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

type EnvironmentName:

string

param EnvironmentName:

The name of the environment to update. If no environment with this name exists, AWS Elastic Beanstalk returns an InvalidParameterValue error.

Condition: You must specify either this or an EnvironmentId, or both. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter error.

type GroupName:

string

param GroupName:

The name of the group to which the target environment belongs. Specify a group name only if the environment's name is specified in an environment manifest and not with the environment name or environment ID parameters. See Environment Manifest (env.yaml) for details.

type Description:

string

param Description:

If this parameter is specified, AWS Elastic Beanstalk updates the description of this environment.

type Tier:

dict

param Tier:

This specifies the tier to use to update the environment.

Condition: At this time, if you change the tier version, name, or type, AWS Elastic Beanstalk returns InvalidParameterValue error.

  • Name (string) --

    The name of this environment tier.

  • Type (string) --

    The type of this environment tier.

  • Version (string) --

    The version of this environment tier.

type VersionLabel:

string

param VersionLabel:

If this parameter is specified, AWS Elastic Beanstalk deploys the named application version to the environment. If no such application version is found, returns an InvalidParameterValue error.

type TemplateName:

string

param TemplateName:

If this parameter is specified, AWS Elastic Beanstalk deploys this configuration template to the environment. If no such configuration template is found, AWS Elastic Beanstalk returns an InvalidParameterValue error.

type SolutionStackName:

string

param SolutionStackName:

This specifies the platform version that the environment will run after the environment is updated.

type OptionSettings:

list

param OptionSettings:

If specified, AWS Elastic Beanstalk updates the configuration set associated with the running environment and sets the specified configuration options to the requested value.

  • (dict) --

    A specification identifying an individual configuration option along with its current value. For a list of possible option values, go to Option Values in the AWS Elastic Beanstalk Developer Guide.

    • ResourceName (string) --

      A unique resource name for a time-based scaling configuration option.

    • Namespace (string) --

      A unique namespace identifying the option's associated AWS resource.

    • OptionName (string) --

      The name of the configuration option.

    • Value (string) --

      The current value for the configuration option.

type OptionsToRemove:

list

param OptionsToRemove:

A list of custom user-defined configuration options to remove from the configuration set for this environment.

  • (dict) --

    A specification identifying an individual configuration option.

    • ResourceName (string) --

      A unique resource name for a time-based scaling configuration option.

    • Namespace (string) --

      A unique namespace identifying the option's associated AWS resource.

    • OptionName (string) --

      The name of the configuration option.

rtype:

dict

returns:

Response Syntax

{
    'EnvironmentName': 'string',
    'EnvironmentId': 'string',
    'ApplicationName': 'string',
    'VersionLabel': 'string',
    'SolutionStackName': 'string',
    'TemplateName': 'string',
    'Description': 'string',
    'EndpointURL': 'string',
    'CNAME': 'string',
    'DateCreated': datetime(2015, 1, 1),
    'DateUpdated': datetime(2015, 1, 1),
    'Status': 'Launching'|'Updating'|'Ready'|'Terminating'|'Terminated',
    'AbortableOperationInProgress': True|False,
    'Health': 'Green'|'Yellow'|'Red'|'Grey',
    'HealthStatus': 'NoData'|'Unknown'|'Pending'|'Ok'|'Info'|'Warning'|'Degraded'|'Severe',
    'Resources': {
        'LoadBalancer': {
            'LoadBalancerName': 'string',
            'Domain': 'string',
            'Listeners': [
                {
                    'Protocol': 'string',
                    'Port': 123
                },
            ]
        }
    },
    'Tier': {
        'Name': 'string',
        'Type': 'string',
        'Version': 'string'
    },
    'EnvironmentLinks': [
        {
            'LinkName': 'string',
            'EnvironmentName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    Describes the properties of an environment.

    • EnvironmentName (string) --

      The name of this environment.

    • EnvironmentId (string) --

      The ID of this environment.

    • ApplicationName (string) --

      The name of the application associated with this environment.

    • VersionLabel (string) --

      The application version deployed in this environment.

    • SolutionStackName (string) --

      The name of the SolutionStack deployed with this environment.

    • TemplateName (string) --

      The name of the configuration template used to originally launch this environment.

    • Description (string) --

      Describes this environment.

    • EndpointURL (string) --

      For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.

    • CNAME (string) --

      The URL to the CNAME for this environment.

    • DateCreated (datetime) --

      The creation date for this environment.

    • DateUpdated (datetime) --

      The last modified date for this environment.

    • Status (string) --

      The current operational status of the environment:

      • Launching: Environment is in the process of initial deployment.

      • Updating: Environment is in the process of updating its configuration settings or application version.

      • Ready: Environment is available to have an action performed on it, such as update or terminate.

      • Terminating: Environment is in the shut-down process.

      • Terminated: Environment is not running.

    • AbortableOperationInProgress (boolean) --

      Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.

      true: There is an update in progress.

      false: There are no updates currently in progress.

    • Health (string) --

      Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:

      • Red: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.

      • Yellow: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.

      • Green: Indicates the environment is healthy and fully functional.

      • Grey: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an UpdateEnvironment or RestartEnvironement request.

      Default: Grey

    • HealthStatus (string) --

      Returns the health status of the application running in your environment. For more information, see Health Colors and Statuses.

    • Resources (dict) --

      The description of the AWS resources used by this environment.

      • LoadBalancer (dict) --

        Describes the LoadBalancer.

        • LoadBalancerName (string) --

          The name of the LoadBalancer.

        • Domain (string) --

          The domain name of the LoadBalancer.

        • Listeners (list) --

          A list of Listeners used by the LoadBalancer.

          • (dict) --

            Describes the properties of a Listener for the LoadBalancer.

            • Protocol (string) --

              The protocol that is used by the Listener.

            • Port (integer) --

              The port that is used by the Listener.

    • Tier (dict) --

      Describes the current tier of this environment.

      • Name (string) --

        The name of this environment tier.

      • Type (string) --

        The type of this environment tier.

      • Version (string) --

        The version of this environment tier.

    • EnvironmentLinks (list) --

      A list of links to other environments in the same group.

      • (dict) --

        A link to another environment, defined in the environment's manifest. Links provide connection information in system properties that can be used to connect to another environment in the same group. See Environment Manifest (env.yaml) for details.

        • LinkName (string) --

          The name of the link.

        • EnvironmentName (string) --

          The name of the linked environment (the dependency).