OpsWorks / Client / describe_stacks



Requests a description of one or more stacks.

Required Permissions: To use this action, an IAM user must have a Show, Deploy, or Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information about user permissions, see Managing User Permissions.

See also: AWS API Documentation

Request Syntax

response = client.describe_stacks(

StackIds (list) –

An array of stack IDs that specify the stacks to be described. If you omit this parameter, DescribeStacks returns a description of every stack.

  • (string) –

Return type:



Response Syntax

    'Stacks': [
            'StackId': 'string',
            'Name': 'string',
            'Arn': 'string',
            'Region': 'string',
            'VpcId': 'string',
            'Attributes': {
                'string': 'string'
            'ServiceRoleArn': 'string',
            'DefaultInstanceProfileArn': 'string',
            'DefaultOs': 'string',
            'HostnameTheme': 'string',
            'DefaultAvailabilityZone': 'string',
            'DefaultSubnetId': 'string',
            'CustomJson': 'string',
            'ConfigurationManager': {
                'Name': 'string',
                'Version': 'string'
            'ChefConfiguration': {
                'ManageBerkshelf': True|False,
                'BerkshelfVersion': 'string'
            'UseCustomCookbooks': True|False,
            'UseOpsworksSecurityGroups': True|False,
            'CustomCookbooksSource': {
                'Type': 'git'|'svn'|'archive'|'s3',
                'Url': 'string',
                'Username': 'string',
                'Password': 'string',
                'SshKey': 'string',
                'Revision': 'string'
            'DefaultSshKeyName': 'string',
            'CreatedAt': 'string',
            'DefaultRootDeviceType': 'ebs'|'instance-store',
            'AgentVersion': 'string'

Response Structure

  • (dict) –

    Contains the response to a DescribeStacks request.

    • Stacks (list) –

      An array of Stack objects that describe the stacks.

      • (dict) –

        Describes a stack.

        • StackId (string) –

          The stack ID.

        • Name (string) –

          The stack name.

        • Arn (string) –

          The stack’s ARN.

        • Region (string) –

          The stack AWS region, such as “ap-northeast-2”. For more information about AWS regions, see Regions and Endpoints.

        • VpcId (string) –

          The VPC ID; applicable only if the stack is running in a VPC.

        • Attributes (dict) –

          The stack’s attributes.

          • (string) –

            • (string) –

        • ServiceRoleArn (string) –

          The stack AWS Identity and Access Management (IAM) role.

        • DefaultInstanceProfileArn (string) –

          The ARN of an IAM profile that is the default profile for all of the stack’s EC2 instances. For more information about IAM ARNs, see Using Identifiers.

        • DefaultOs (string) –

          The stack’s default operating system.

        • HostnameTheme (string) –

          The stack host name theme, with spaces replaced by underscores.

        • DefaultAvailabilityZone (string) –

          The stack’s default Availability Zone. For more information, see Regions and Endpoints.

        • DefaultSubnetId (string) –

          The default subnet ID; applicable only if the stack is running in a VPC.

        • CustomJson (string) –

          A JSON object that contains user-defined attributes to be added to the stack configuration and deployment attributes. You can use custom JSON to override the corresponding default stack configuration attribute values or to pass data to recipes. The string should be in the following format:

          "{\"key1\": \"value1\", \"key2\": \"value2\",...}"

          For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes.

        • ConfigurationManager (dict) –

          The configuration manager.

          • Name (string) –

            The name. This parameter must be set to “Chef”.

          • Version (string) –

            The Chef version. This parameter must be set to 12, 11.10, or 11.4 for Linux stacks, and to 12.2 for Windows stacks. The default value for Linux stacks is 11.4.

        • ChefConfiguration (dict) –

          A ChefConfiguration object that specifies whether to enable Berkshelf and the Berkshelf version. For more information, see Create a New Stack.

          • ManageBerkshelf (boolean) –

            Whether to enable Berkshelf.

          • BerkshelfVersion (string) –

            The Berkshelf version.

        • UseCustomCookbooks (boolean) –

          Whether the stack uses custom cookbooks.

        • UseOpsworksSecurityGroups (boolean) –

          Whether the stack automatically associates the AWS OpsWorks Stacks built-in security groups with the stack’s layers.

        • CustomCookbooksSource (dict) –

          Contains the information required to retrieve an app or cookbook from a repository. For more information, see Adding Apps or Cookbooks and Recipes.

          • Type (string) –

            The repository type.

          • Url (string) –

            The source URL. The following is an example of an Amazon S3 source URL: https://s3.amazonaws.com/opsworks-demo-bucket/opsworks_cookbook_demo.tar.gz.

          • Username (string) –

            This parameter depends on the repository type.

            • For Amazon S3 bundles, set Username to the appropriate IAM access key ID.

            • For HTTP bundles, Git repositories, and Subversion repositories, set Username to the user name.

          • Password (string) –

            When included in a request, the parameter depends on the repository type.

            • For Amazon S3 bundles, set Password to the appropriate IAM secret access key.

            • For HTTP bundles and Subversion repositories, set Password to the password.

            For more information on how to safely handle IAM credentials, see https://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html.

            In responses, AWS OpsWorks Stacks returns *****FILTERED***** instead of the actual value.

          • SshKey (string) –

            In requests, the repository’s SSH key.

            In responses, AWS OpsWorks Stacks returns *****FILTERED***** instead of the actual value.

          • Revision (string) –

            The application’s version. AWS OpsWorks Stacks enables you to easily deploy new versions of an application. One of the simplest approaches is to have branches or revisions in your repository that represent different versions that can potentially be deployed.

        • DefaultSshKeyName (string) –

          A default Amazon EC2 key pair for the stack’s instances. You can override this value when you create or update an instance.

        • CreatedAt (string) –

          The date when the stack was created.

        • DefaultRootDeviceType (string) –

          The default root device type. This value is used by default for all instances in the stack, but you can override it when you create an instance. For more information, see Storage for the Root Device.

        • AgentVersion (string) –

          The agent version. This parameter is set to LATEST for auto-update. or a version number for a fixed agent version.


  • OpsWorks.Client.exceptions.ValidationException

  • OpsWorks.Client.exceptions.ResourceNotFoundException