From ff133e177625c7f64a61e3bd521e663471571650 Mon Sep 17 00:00:00 2001 From: nateglims Date: Tue, 21 Nov 2023 23:08:00 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20aws4embe?= =?UTF-8?q?ddedlinux/aws4embeddedlinux-ci@b26c1c36b4303c4b07d725d5ae615436?= =?UTF-8?q?48e77263=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/highlight.css | 46 +- classes/BuildImageDataStack.html | 1358 +++++++++--------- classes/BuildImagePipelineStack.html | 1297 ++++++++--------- classes/BuildImageRepoStack.html | 1315 +++++++++--------- classes/EmbeddedLinuxPipelineStack.html | 1455 ++++++++++---------- classes/PipelineNetworkStack.html | 1320 +++++++++--------- classes/SourceRepo.html | 82 +- enums/ImageKind.html | 22 +- enums/ProjectKind.html | 82 +- index.html | 125 +- interfaces/BuildImageDataProps.html | 200 +-- interfaces/BuildImagePipelineProps.html | 234 ++-- interfaces/EmbeddedLinuxPipelineProps.html | 274 ++-- interfaces/SourceRepoProps.html | 224 +-- modules.html | 71 + 15 files changed, 4127 insertions(+), 3978 deletions(-) create mode 100644 modules.html diff --git a/assets/highlight.css b/assets/highlight.css index 35e9a6c..ff01689 100644 --- a/assets/highlight.css +++ b/assets/highlight.css @@ -1,20 +1,24 @@ :root { - --light-hl-0: #008000; - --dark-hl-0: #6A9955; - --light-hl-1: #A31515; - --dark-hl-1: #CE9178; - --light-hl-2: #0000FF; - --dark-hl-2: #569CD6; - --light-hl-3: #000000; - --dark-hl-3: #D4D4D4; - --light-hl-4: #0070C1; - --dark-hl-4: #4FC1FF; - --light-hl-5: #267F99; - --dark-hl-5: #4EC9B0; - --light-hl-6: #001080; - --dark-hl-6: #9CDCFE; - --light-hl-7: #795E26; - --dark-hl-7: #DCDCAA; + --light-hl-0: #001080; + --dark-hl-0: #9CDCFE; + --light-hl-1: #000000; + --dark-hl-1: #D4D4D4; + --light-hl-2: #795E26; + --dark-hl-2: #DCDCAA; + --light-hl-3: #A31515; + --dark-hl-3: #CE9178; + --light-hl-4: #0451A5; + --dark-hl-4: #9CDCFE; + --light-hl-5: #800000; + --dark-hl-5: #569CD6; + --light-hl-6: #008000; + --dark-hl-6: #6A9955; + --light-hl-7: #0000FF; + --dark-hl-7: #569CD6; + --light-hl-8: #0070C1; + --dark-hl-8: #4FC1FF; + --light-hl-9: #267F99; + --dark-hl-9: #4EC9B0; --light-code-background: #FFFFFF; --dark-code-background: #1E1E1E; } @@ -28,6 +32,8 @@ --hl-5: var(--light-hl-5); --hl-6: var(--light-hl-6); --hl-7: var(--light-hl-7); + --hl-8: var(--light-hl-8); + --hl-9: var(--light-hl-9); --code-background: var(--light-code-background); } } @@ -40,6 +46,8 @@ --hl-5: var(--dark-hl-5); --hl-6: var(--dark-hl-6); --hl-7: var(--dark-hl-7); + --hl-8: var(--dark-hl-8); + --hl-9: var(--dark-hl-9); --code-background: var(--dark-code-background); } } @@ -52,6 +60,8 @@ --hl-5: var(--light-hl-5); --hl-6: var(--light-hl-6); --hl-7: var(--light-hl-7); + --hl-8: var(--light-hl-8); + --hl-9: var(--light-hl-9); --code-background: var(--light-code-background); } @@ -64,6 +74,8 @@ --hl-5: var(--dark-hl-5); --hl-6: var(--dark-hl-6); --hl-7: var(--dark-hl-7); + --hl-8: var(--dark-hl-8); + --hl-9: var(--dark-hl-9); --code-background: var(--dark-code-background); } @@ -75,4 +87,6 @@ .hl-5 { color: var(--hl-5); } .hl-6 { color: var(--hl-6); } .hl-7 { color: var(--hl-7); } +.hl-8 { color: var(--hl-8); } +.hl-9 { color: var(--hl-9); } pre, code { background: var(--code-background); } diff --git a/classes/BuildImageDataStack.html b/classes/BuildImageDataStack.html index f898ce5..ed7c1bb 100644 --- a/classes/BuildImageDataStack.html +++ b/classes/BuildImageDataStack.html @@ -12,11 +12,11 @@
-

Input (Source) data for our Build Image Pipeline.

+

Input (Source) data for our BuildImagePipelineStack.

@@ -26,7 +26,7 @@

Hierarchy

  • BuildImageDataStack
+
  • Defined in lib/build-image-data.ts:22
  • @@ -38,64 +38,64 @@

    Constructors

    Properties

    -

    Accessors

    -

    Methods

    -

    Constructors

    @@ -116,28 +116,60 @@
    props: Returns BuildImageDataStack
    +
  • Defined in lib/build-image-data.ts:26
  • Properties

    -
    - -
    _crossRegionReferences: boolean
    -

    Whether cross region references are enabled for this stack

    +
    + +
    bucket: IBucket
    +

    The bucket which will be consumed by the BuildImagePipelineStack.

    -
    - -
    _versionReportingEnabled: boolean
    -

    Whether version reporting is enabled for this stack

    -

    Controls whether the CDK Metadata resource is injected

    +
  • Defined in lib/build-image-data.ts:24
  • +
    + +
    tags: TagManager
    +

    Tags to be applied to the stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:174
  • +
    + +
    templateOptions: ITemplateOptions
    +

    Options for CloudFormation template (like version, transform, description).

    +
    +
    +
    + +
    region: string
    +

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    +

    This value is resolved according to the following rules:

    +
      +
    1. The value provided to env.region when the stack is defined. This can +either be a concrete region (e.g. us-west-2) or the Aws.REGION +token.
    2. +
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference +{ "Ref": "AWS::Region" } encoded as a string token.
    4. +
    +

    Preferably, you should use the return value as an opaque string and not +attempt to parse it to implement your logic. If you do, you must first +check that it is a concrete value an not an unresolved token. If this +value is an unresolved token (Token.isUnresolved(stack.region) returns +true), this implies that the user wishes that this stack will synthesize +into a region-agnostic template. In this case, your code should either +fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or +implement some other region-agnostic behavior.

    +
    +
    account: string
    @@ -163,23 +195,6 @@
    -
    - -
    artifactId: string
    -

    The ID of the cloud assembly artifact for this stack.

    -
    -
    -
    - -
    bucket: IBucket
    -

    The bucket where source for Build Images are.

    -
    -
    environment: string
    @@ -197,6 +212,15 @@
    +
    + +
    terminationProtection?: boolean
    +

    Whether termination protection is enabled for this stack.

    +
    +
    nestedStackResource?: CfnResource
    @@ -207,40 +231,26 @@
    -
    - -
    node: Node
    -

    The tree node.

    +
    + +
    templateFile: string
    +

    The name of the CloudFormation template file emitted to the output +directory during synthesis.

    +

    Example value: MyStack.template.json

    -
    - -
    region: string
    -

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    -

    This value is resolved according to the following rules:

    -
      -
    1. The value provided to env.region when the stack is defined. This can -either be a concrete region (e.g. us-west-2) or the Aws.REGION -token.
    2. -
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference -{ "Ref": "AWS::Region" } encoded as a string token.
    4. -
    -

    Preferably, you should use the return value as an opaque string and not -attempt to parse it to implement your logic. If you do, you must first -check that it is a concrete value an not an unresolved token. If this -value is an unresolved token (Token.isUnresolved(stack.region) returns -true), this implies that the user wishes that this stack will synthesize -into a region-agnostic template. In this case, your code should either -fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or -implement some other region-agnostic behavior.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:251
  • +
    + +
    artifactId: string
    +

    The ID of the cloud assembly artifact for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:255
  • synthesizer: IStackSynthesizer
    @@ -250,79 +260,60 @@
    -
    - -
    tags: TagManager
    -

    Tags to be applied to the stack.

    -
    -
    -
    - -
    templateFile: string
    -

    The name of the CloudFormation template file emitted to the output -directory during synthesis.

    -

    Example value: MyStack.template.json

    +
    + +
    _versionReportingEnabled: boolean
    +

    Whether version reporting is enabled for this stack

    +

    Controls whether the CDK Metadata resource is injected

    -
    - -
    templateOptions: ITemplateOptions
    -

    Options for CloudFormation template (like version, transform, description).

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:268
  • +
    + +
    _crossRegionReferences: boolean
    +

    Whether cross region references are enabled for this stack

    -
    - -
    terminationProtection?: boolean
    -

    Whether termination protection is enabled for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:274
  • +
    + +
    node: Node
    +

    The tree node.

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:265
  • Accessors

    -
    - -
      -
    • get availabilityZones(): string[]
    • +
      + +
        +
      • get permissionsBoundaryArn(): any
      • -

        Returns the list of AZs that are available in the AWS environment -(account/region) associated with this stack.

        -

        If the stack is environment-agnostic (either account and/or region are -tokens), this property will return an array with 2 tokens that will resolve -at deploy-time to the first two availability zones returned from CloudFormation's -Fn::GetAZs intrinsic function.

        -

        If they are not available in the context, returns a set of dummy values and -reports them as missing, and let the CLI resolve them by calling EC2 -DescribeAvailabilityZones on the target environment.

        -

        To specify a different strategy for selecting availability zones override this method.

        -
        -

        Returns string[]

        -
      -
      - -
        -
      • get bundlingRequired(): boolean
      • -
      • -

        Indicates whether the stack requires bundling or not

        +

        If a permissions boundary has been applied on this scope or any parent scope +then this will return the ARN of the permissions boundary.

        +

        This will return the permissions boundary that has been applied to the most +specific scope.

        +

        For example:

        +

        const stage = new Stage(app, 'stage', { + permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), +});

        +

        const stack = new Stack(stage, 'Stack', { + permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), +});

        +

        Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

        -

        Returns boolean

        +

        Returns any

        the name of the permissions boundary or undefined if not set

        +
      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:333
      @@ -335,43 +326,64 @@

      Returns StackInherited from cdk.Stack.dependencies

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:393

    -
    - -
      -
    • get maxResources(): any
    • +
      + +
        +
      • get stackName(): string
      • -

        Maximum number of resources in the stack

        -

        Set to 0 to mean "unlimited".

        +

        The concrete CloudFormation physical stack name.

        +

        This is either the name defined explicitly in the stackName prop or +allocated based on the stack's location in the construct tree. Stacks that +are directly defined under the app use their construct id as their stack +name. Stacks that are defined deeper within the tree will use a hashed naming +scheme based on the construct path to ensure uniqueness.

        +

        If you wish to obtain the deploy-time AWS::StackName intrinsic, +you can use Aws.STACK_NAME directly.

        -

        Returns any

        +

        Returns string

      -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:406
    +
    +
      -
    • get nested(): boolean
    • +
    • get partition(): string
    • -

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      +

      The partition in which this stack is defined

      -

      Returns boolean

      +

      Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:410
  • +
    +
      -
    • get nestedStackParent(): undefined | Stack
    • +
    • get urlSuffix(): string
    • -

      If this is a nested stack, returns it's parent stack.

      +

      The Amazon domain suffix for the region in which this stack is defined

      -

      Returns undefined | Stack

      +

      Returns string

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:414
  • +
    + +
    -
    - +
    +
      -
    • get partition(): string
    • +
    • get nested(): boolean
    • -

      The partition in which this stack is defined

      +

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      -

      Returns string

      +

      Returns boolean

    -
    - -
      -
    • get permissionsBoundaryArn(): any
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:430
    +
    + +
      +
    • get availabilityZones(): string[]
    • -

      If a permissions boundary has been applied on this scope or any parent scope -then this will return the ARN of the permissions boundary.

      -

      This will return the permissions boundary that has been applied to the most -specific scope.

      -

      For example:

      -

      const stage = new Stage(app, 'stage', { - permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), -});

      -

      const stack = new Stack(stage, 'Stack', { - permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), -});

      -

      Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

      +

      Returns the list of AZs that are available in the AWS environment +(account/region) associated with this stack.

      +

      If the stack is environment-agnostic (either account and/or region are +tokens), this property will return an array with 2 tokens that will resolve +at deploy-time to the first two availability zones returned from CloudFormation's +Fn::GetAZs intrinsic function.

      +

      If they are not available in the context, returns a set of dummy values and +reports them as missing, and let the CLI resolve them by calling EC2 +DescribeAvailabilityZones on the target environment.

      +

      To specify a different strategy for selecting availability zones override this method.

      -

      Returns any

      the name of the permissions boundary or undefined if not set

      - +

      Returns string[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:475
  • +
    +
      -
    • get stackId(): string
    • +
    • get nestedStackParent(): undefined | Stack
    • -

      The ID of the stack

      +

      If this is a nested stack, returns it's parent stack.

      -

      Returns string

      -
      -

      Example

      // After resolving, looks like
      'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123' -
      -
    -
    - -
      -
    • get stackName(): string
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:479
    +
    + +
      +
    • get maxResources(): any
    • -

      The concrete CloudFormation physical stack name.

      -

      This is either the name defined explicitly in the stackName prop or -allocated based on the stack's location in the construct tree. Stacks that -are directly defined under the app use their construct id as their stack -name. Stacks that are defined deeper within the tree will use a hashed naming -scheme based on the construct path to ensure uniqueness.

      -

      If you wish to obtain the deploy-time AWS::StackName intrinsic, -you can use Aws.STACK_NAME directly.

      +

      Maximum number of resources in the stack

      +

      Set to 0 to mean "unlimited".

      -

      Returns string

      +

      Returns any

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:692
  • +
    +
      -
    • get urlSuffix(): string
    • +
    • get bundlingRequired(): boolean
    • -

      The Amazon domain suffix for the region in which this stack is defined

      +

      Indicates whether the stack requires bundling or not

      -

      Returns string

      +

      Returns boolean

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:735
  • Methods

    -
    - -
      - -
    • Internal -

      Called implicitly by the addDependency helper function in order to -realize a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
      + +
        + +
      • +

        Create a bucket and S3 deployment to this bucket.

        Parameters

        • -
          target: Stack
        • -
        • -
          Optional reason: StackDependencyReason
        -

        Returns void

        +
        bucketName: string
        +

        The name of the bucket. Must be globally unique.

        +
        +
      +

      Returns IBucket

    -
    - +
  • Defined in lib/build-image-data.ts:38
  • +
    +
      - -
    • Internal -

      Called implicitly by the obtainDependencies helper function in order to -collect resource dependencies across two top-level stacks at the assembly level.

      -

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      +
    • +
    • +

      Return whether the given object is a Stack.

      +

      We do attribute detection since we can't reliably use 'instanceof'.

      Parameters

      • -
        reasonFilter: StackDependencyReason
      -

      Returns Element[]

      +
      x: any
    +

    Returns x is Stack

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:165
  • +
    +
      - -
    • Internal -

      Called implicitly by the removeDependency helper function in order to -remove a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
    • +
    • +

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      Parameters

      • -
        target: Stack
      • +
        construct: IConstruct
        +

        The construct to start the search from.

        +
        +
      +

      Returns Stack

      +
    +
    + +
      + +
    • +

      Resolve a tokenized value in the context of the current stack.

      +
      +
      +

      Parameters

      +
      • -
        Optional reasonFilter: StackDependencyReason
      -

      Returns void

      +
      obj: any
    +

    Returns any

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:342
  • +
    +
      - -
    • Internal -

      Synthesizes the cloudformation template into a cloud assembly.

      +
    • +
    • +

      Convert an object, potentially containing tokens, to a JSON string

      Parameters

      • -
        session: ISynthesisSession
      • +
        obj: any
      • -
        Optional lookupRoleArn: string
      -

      Returns void

      +
      Optional space: number
    +

    Returns string

    -
    - -
      - -
    • Internal -

      Returns the CloudFormation template for this stack by traversing -the tree and invoking _toCloudFormation() on all Entity objects.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:346
    +
    + +
      + +
    • +

      Convert an object, potentially containing tokens, to a YAML string

      -

      Returns any

      +
      +

      Parameters

      +
        +
      • +
        obj: any
      +

      Returns string

    -
    - -
      - -
    • Internal -

      Validate stack name

      -

      CloudFormation stack names can include dashes in addition to the regular identifier -character classes, and we don't allow one of the magic markers.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:350
    +
    + +
      + +
    • +

      Indicate that a context key was expected

      +

      Contains instructions which will be emitted into the cloud assembly on how +the key should be supplied.

      Parameters

      • -
        name: string
      +
      report: MissingContext
      +

      The set of parameters needed to obtain the context

      +
      +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:359
  • +
    + +
    +
    + +
    -
    - +
    +
      - +
    • -

      Adds an arbitary key-value pair, with information you want to record about the stack. -These get translated to the Metadata section of the generated template.

      +

      Creates an ARN from components.

      +

      If partition, region or account are not specified, the stack's +partition, region and account will be used.

      +

      If any component is the empty string, an empty string will be inserted +into the generated ARN at the location that component corresponds to.

      +

      The ARN will be formatted as follows:

      +

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      +

      The required ARN pieces that are omitted will be taken from the stack that +the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope +can be 'undefined'.

      Parameters

      • -
        key: string
      • +
        components: ArnComponents
      +

      Returns string

      +
    +
    + +
      + +
    • +

      Splits the provided ARN into its components. +Works both if 'arn' is a string like 'arn:aws:s3:::bucket', +and a Token representing a dynamic CloudFormation expression +(in which case the returned components will also be dynamic CloudFormation expressions, +encoded as Tokens).

      +
      +
      +

      Parameters

      +
      • -
        value: any
      -

      Returns void

      -
    • +
    • +
      arnFormat: ArnFormat
      +

      the expected format of 'arn' - depends on what format the service 'arn' represents uses

      +
      +
    +

    Returns ArnComponents

    +
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:459
  • -
    - -
      - +
      + +
        +
      • -

        Returns the naming scheme used to allocate logical IDs. By default, uses -the HashedAddressingScheme but this method can be overridden to customize -this behavior.

        -

        In order to make sure logical IDs are unique and stable, we hash the resource -construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as -a suffix to the path components joined without a separator (CloudFormation -IDs only allow alphanumeric characters).

        -

        The result will be:

        -

        <path.join('')><md5(path.join('/')> - "human" "hash"

        -

        If the "human" part of the ID exceeds 240 characters, we simply trim it so -the total ID doesn't exceed CloudFormation's 255 character limit.

        -

        We only take 8 characters from the md5 hash (0.000005 chance of collision).

        -

        Special cases:

        -
          -
        • If the path only contains a single component (i.e. it's a top-level -resource), we won't add the hash to it. The hash is not needed for -disambiguation and also, it allows for a more straightforward migration an -existing CloudFormation template to a CDK stack without logical ID changes -(or renames).
        • -
        • For aesthetic reasons, if the last components of the path are the same -(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the -resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> -instead of L1L2PipelinePipeline<HASH>
        • -
        • If a component is named "Default" it will be omitted from the path. This -allows refactoring higher level abstractions around constructs without affecting -the IDs of already deployed resources.
        • -
        • If a component is named "Resource" it will be omitted from the user-visible -path, but included in the hash. This reduces visual noise in the human readable -part of the identifier.
        • -
        +

        Adds an arbitary key-value pair, with information you want to record about the stack. +These get translated to the Metadata section of the generated template.

        Parameters

        • -
          cfnElement: CfnElement
          -

          The element for which the logical ID is allocated.

          -
          -
        -

        Returns string

        -
      -
      - -
        - -
      • -

        Create a bucket and S3 deployment to this bucket.

        -
        -
        -

        Parameters

        -
          +
          key: string
        • -
          bucketName: string
          -

          The name of the bucket. Must be globally unique.

          -
          -
        -

        Returns IBucket

        -
      +

      Returns void

      +
    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:501
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string list value

      -

      Returns a string list representing the corresponding Fn.importValue() -expression for this Export. The export expression is automatically wrapped with an -Fn::Join and the import value with an Fn::Split, since CloudFormation can only -export strings. You can control the name for the export by passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      See exportValue for an example of this process.

      +
    • +
    • Internal +

      Called implicitly by the addDependency helper function in order to +realize a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        exportedValue: any
      • +
        target: Stack
      • -
        Optional options: ExportValueOptions
      -

      Returns string[]

      +
      Optional reason: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:511
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string value

      -

      Returns a string representing the corresponding Fn.importValue() -expression for this Export. You can control the name for the export by -passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      Example

      Here is how the process works. Let's say there are two stacks, -producerStack and consumerStack, and producerStack has a bucket -called bucket, which is referenced by consumerStack (perhaps because -an AWS Lambda Function writes into it, or something like that).

      -

      It is not safe to remove producerStack.bucket because as the bucket is being -deleted, consumerStack might still be using it.

      -

      Instead, the process takes two deployments:

      -

      Deployment 1: break the relationship

        -
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer -stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just -remove the Lambda Function altogether).
      • -
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This -will make sure the CloudFormation Export continues to exist while the relationship -between the two stacks is being broken.
      • -
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • -
      -

      Deployment 2: remove the bucket resource

        -
      • You are now free to remove the bucket resource from producerStack.
      • -
      • Don't forget to remove the exportValue() call as well.
      • -
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • -
      +
    • +
    • Internal +

      Called implicitly by the obtainDependencies helper function in order to +collect resource dependencies across two top-level stacks at the assembly level.

      +

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      Parameters

      • -
        exportedValue: any
      • -
      • -
        Optional options: ExportValueOptions
      -

      Returns string

      +
      reasonFilter: StackDependencyReason
    +

    Returns Element[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:520
  • +
    +
      - -
    • -

      Creates an ARN from components.

      -

      If partition, region or account are not specified, the stack's -partition, region and account will be used.

      -

      If any component is the empty string, an empty string will be inserted -into the generated ARN at the location that component corresponds to.

      -

      The ARN will be formatted as follows:

      -

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      -

      The required ARN pieces that are omitted will be taken from the stack that -the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope -can be 'undefined'.

      +
    • +
    • Internal +

      Called implicitly by the removeDependency helper function in order to +remove a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        components: ArnComponents
      -

      Returns string

      +
      target: Stack
    • +
    • +
      Optional reasonFilter: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:530
  • +
    +
      - -
    • -

      Allocates a stack-unique CloudFormation-compatible logical identity for a -specific resource.

      -

      This method is called when a CfnElement is created and used to render the -initial logical identity of resources. Logical ID renames are applied at -this stage.

      -

      This method uses the protected method allocateLogicalId to render the -logical ID for an element. To modify the naming scheme, extend the Stack -class and override this method.

      +
    • +
    • Internal +

      Synthesizes the cloudformation template into a cloud assembly.

      Parameters

      • -
        element: CfnElement
        -

        The CloudFormation element for which a logical identity is -needed.

        -
        -
      -

      Returns string

      +
      session: ISynthesisSession
    • +
    • +
      Optional lookupRoleArn: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:535
    • @@ -891,143 +887,173 @@

      Returns stringInherited from cdk.Stack.regionalFact

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:555

    -
    - -
      - -
    • -

      Rename a generated logical identities

      -

      To modify the naming scheme strategy, extend the Stack class and -override the allocateLogicalId method.

      -
      -
      -

      Parameters

      -
        -
      • -
        oldId: string
      • -
      • -
        newId: string
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Indicate that a context key was expected

      -

      Contains instructions which will be emitted into the cloud assembly on how -the key should be supplied.

      -
      -
      -

      Parameters

      -
        -
      • -
        report: MissingContext
        -

        The set of parameters needed to obtain the context

        -
        -
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Resolve a tokenized value in the context of the current stack.

      -
      -
      -

      Parameters

      -
        -
      • -
        obj: any
      -

      Returns any

      -
    -
    - +
    +
      - +
    • -

      Splits the provided ARN into its components. -Works both if 'arn' is a string like 'arn:aws:s3:::bucket', -and a Token representing a dynamic CloudFormation expression -(in which case the returned components will also be dynamic CloudFormation expressions, -encoded as Tokens).

      +

      Create a CloudFormation Export for a string value

      +

      Returns a string representing the corresponding Fn.importValue() +expression for this Export. You can control the name for the export by +passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      Example

      Here is how the process works. Let's say there are two stacks, +producerStack and consumerStack, and producerStack has a bucket +called bucket, which is referenced by consumerStack (perhaps because +an AWS Lambda Function writes into it, or something like that).

      +

      It is not safe to remove producerStack.bucket because as the bucket is being +deleted, consumerStack might still be using it.

      +

      Instead, the process takes two deployments:

      +

      Deployment 1: break the relationship

        +
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer +stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just +remove the Lambda Function altogether).
      • +
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This +will make sure the CloudFormation Export continues to exist while the relationship +between the two stacks is being broken.
      • +
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • +
      +

      Deployment 2: remove the bucket resource

        +
      • You are now free to remove the bucket resource from producerStack.
      • +
      • Don't forget to remove the exportValue() call as well.
      • +
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • +

      Parameters

      • -
        arn: string
        -

        the ARN to split into its components

        -
        -
      • +
        exportedValue: any
      • -
        arnFormat: ArnFormat
        -

        the expected format of 'arn' - depends on what format the service 'arn' represents uses

        -
        -
      -

      Returns ArnComponents

      +
      Optional options: ExportValueOptions
    +

    Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:602
  • +
    +
      - +
    • -

      Convert an object, potentially containing tokens, to a JSON string

      +

      Create a CloudFormation Export for a string list value

      +

      Returns a string list representing the corresponding Fn.importValue() +expression for this Export. The export expression is automatically wrapped with an +Fn::Join and the import value with an Fn::Split, since CloudFormation can only +export strings. You can control the name for the export by passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      See exportValue for an example of this process.

      Parameters

      • -
        obj: any
      • +
        exportedValue: any
      • -
        Optional space: number
      -

      Returns string

      +
      Optional options: ExportValueOptions
    +

    Returns string[]

    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:624
    +
    + +
      +
    • -

      Returns a string representation of this construct.

      +

      Returns the naming scheme used to allocate logical IDs. By default, uses +the HashedAddressingScheme but this method can be overridden to customize +this behavior.

      +

      In order to make sure logical IDs are unique and stable, we hash the resource +construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as +a suffix to the path components joined without a separator (CloudFormation +IDs only allow alphanumeric characters).

      +

      The result will be:

      +

      <path.join('')><md5(path.join('/')> + "human" "hash"

      +

      If the "human" part of the ID exceeds 240 characters, we simply trim it so +the total ID doesn't exceed CloudFormation's 255 character limit.

      +

      We only take 8 characters from the md5 hash (0.000005 chance of collision).

      +

      Special cases:

      +
        +
      • If the path only contains a single component (i.e. it's a top-level +resource), we won't add the hash to it. The hash is not needed for +disambiguation and also, it allows for a more straightforward migration an +existing CloudFormation template to a CDK stack without logical ID changes +(or renames).
      • +
      • For aesthetic reasons, if the last components of the path are the same +(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the +resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> +instead of L1L2PipelinePipeline<HASH>
      • +
      • If a component is named "Default" it will be omitted from the path. This +allows refactoring higher level abstractions around constructs without affecting +the IDs of already deployed resources.
      • +
      • If a component is named "Resource" it will be omitted from the user-visible +path, but included in the hash. This reduces visual noise in the human readable +part of the identifier.
      • +
      +
      +

      Parameters

      +
        +
      • +
        cfnElement: CfnElement
        +

        The element for which the logical ID is allocated.

        +
        +

      Returns string

    -
    - -
      - -
    • -

      Convert an object, potentially containing tokens, to a YAML string

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:665
    +
    + +
      + +
    • Internal +

      Validate stack name

      +

      CloudFormation stack names can include dashes in addition to the regular identifier +character classes, and we don't allow one of the magic markers.

      Parameters

      • -
        obj: any
      -

      Returns string

      +
      name: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:674
  • +
    + +
      + +
    • Internal +

      Returns the CloudFormation template for this stack by traversing +the tree and invoking _toCloudFormation() on all Entity objects.

      +
      +

      Returns any

      +
      @@ -1061,44 +1087,18 @@

      Returns x<

      Inherited from cdk.Stack.isConstruct

      • Defined in node_modules/constructs/lib/construct.d.ts:261

    -
    - -
      - -
    • -

      Return whether the given object is a Stack.

      -

      We do attribute detection since we can't reliably use 'instanceof'.

      -
      -
      -

      Parameters

      -
        -
      • -
        x: any
      -

      Returns x is Stack

      -
    -
    - +
    +
      - +
    • -

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      -
      -
      -

      Parameters

      -
        -
      • -
        construct: IConstruct
        -

        The construct to start the search from.

        +

        Returns a string representation of this construct.

        -
      -

      Returns Stack

      +

      Returns string

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:278
  • +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/classes/BuildImagePipelineStack.html b/classes/BuildImagePipelineStack.html index 29431ac..12730ad 100644 --- a/classes/BuildImagePipelineStack.html +++ b/classes/BuildImagePipelineStack.html @@ -12,12 +12,13 @@

    The pipeline for building the CodeBuild Image used in other pipelines. This will produce an image for an OS based on verified Yocto hosts.

    +

    For configuration options see BuildImagePipelineProps.

    @@ -27,7 +28,7 @@

    Hierarchy

    • BuildImagePipelineStack
    +
  • Defined in lib/build-image-pipeline.ts:40
  • @@ -39,62 +40,62 @@

    Constructors

    Properties

    -

    Accessors

    -

    Methods

    -

    Constructors

    @@ -115,28 +116,52 @@
    props: Returns BuildImagePipelineStack
    +
  • Defined in lib/build-image-pipeline.ts:41
  • Properties

    -
    - -
    _crossRegionReferences: boolean
    -

    Whether cross region references are enabled for this stack

    +
    + +
    tags: TagManager
    +

    Tags to be applied to the stack.

    -
    - -
    _versionReportingEnabled: boolean
    -

    Whether version reporting is enabled for this stack

    -

    Controls whether the CDK Metadata resource is injected

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:174
  • +
    + +
    templateOptions: ITemplateOptions
    +

    Options for CloudFormation template (like version, transform, description).

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:178
  • +
    + +
    region: string
    +

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    +

    This value is resolved according to the following rules:

    +
      +
    1. The value provided to env.region when the stack is defined. This can +either be a concrete region (e.g. us-west-2) or the Aws.REGION +token.
    2. +
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference +{ "Ref": "AWS::Region" } encoded as a string token.
    4. +
    +

    Preferably, you should use the return value as an opaque string and not +attempt to parse it to implement your logic. If you do, you must first +check that it is a concrete value an not an unresolved token. If this +value is an unresolved token (Token.isUnresolved(stack.region) returns +true), this implies that the user wishes that this stack will synthesize +into a region-agnostic template. In this case, your code should either +fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or +implement some other region-agnostic behavior.

    +
    +
    account: string
    @@ -162,15 +187,6 @@
    -
    - -
    artifactId: string
    -

    The ID of the cloud assembly artifact for this stack.

    -
    -
    environment: string
    @@ -188,6 +204,15 @@
    +
    + +
    terminationProtection?: boolean
    +

    Whether termination protection is enabled for this stack.

    +
    +
    nestedStackResource?: CfnResource
    @@ -198,40 +223,26 @@
    -
    - -
    node: Node
    -

    The tree node.

    +
    + +
    templateFile: string
    +

    The name of the CloudFormation template file emitted to the output +directory during synthesis.

    +

    Example value: MyStack.template.json

    -
    - -
    region: string
    -

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    -

    This value is resolved according to the following rules:

    -
      -
    1. The value provided to env.region when the stack is defined. This can -either be a concrete region (e.g. us-west-2) or the Aws.REGION -token.
    2. -
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference -{ "Ref": "AWS::Region" } encoded as a string token.
    4. -
    -

    Preferably, you should use the return value as an opaque string and not -attempt to parse it to implement your logic. If you do, you must first -check that it is a concrete value an not an unresolved token. If this -value is an unresolved token (Token.isUnresolved(stack.region) returns -true), this implies that the user wishes that this stack will synthesize -into a region-agnostic template. In this case, your code should either -fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or -implement some other region-agnostic behavior.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:251
  • +
    + +
    artifactId: string
    +

    The ID of the cloud assembly artifact for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:255
  • synthesizer: IStackSynthesizer
    @@ -241,79 +252,60 @@
    -
    - -
    tags: TagManager
    -

    Tags to be applied to the stack.

    -
    -
    -
    - -
    templateFile: string
    -

    The name of the CloudFormation template file emitted to the output -directory during synthesis.

    -

    Example value: MyStack.template.json

    +
    + +
    _versionReportingEnabled: boolean
    +

    Whether version reporting is enabled for this stack

    +

    Controls whether the CDK Metadata resource is injected

    -
    - -
    templateOptions: ITemplateOptions
    -

    Options for CloudFormation template (like version, transform, description).

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:268
  • +
    + +
    _crossRegionReferences: boolean
    +

    Whether cross region references are enabled for this stack

    -
    - -
    terminationProtection?: boolean
    -

    Whether termination protection is enabled for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:274
  • +
    + +
    node: Node
    +

    The tree node.

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:265
  • Accessors

    -
    - -
      -
    • get availabilityZones(): string[]
    • +
      + +
        +
      • get permissionsBoundaryArn(): any
      • -

        Returns the list of AZs that are available in the AWS environment -(account/region) associated with this stack.

        -

        If the stack is environment-agnostic (either account and/or region are -tokens), this property will return an array with 2 tokens that will resolve -at deploy-time to the first two availability zones returned from CloudFormation's -Fn::GetAZs intrinsic function.

        -

        If they are not available in the context, returns a set of dummy values and -reports them as missing, and let the CLI resolve them by calling EC2 -DescribeAvailabilityZones on the target environment.

        -

        To specify a different strategy for selecting availability zones override this method.

        +

        If a permissions boundary has been applied on this scope or any parent scope +then this will return the ARN of the permissions boundary.

        +

        This will return the permissions boundary that has been applied to the most +specific scope.

        +

        For example:

        +

        const stage = new Stage(app, 'stage', { + permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), +});

        +

        const stack = new Stack(stage, 'Stack', { + permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), +});

        +

        Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

        -

        Returns string[]

        +

        Returns any

        the name of the permissions boundary or undefined if not set

        +
      -
      - -
        -
      • get bundlingRequired(): boolean
      • -
      • -

        Indicates whether the stack requires bundling or not

        -
        -

        Returns boolean

        -
      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:333
      @@ -326,43 +318,64 @@

      Returns StackInherited from cdk.Stack.dependencies

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:393

    -
    - -
      -
    • get maxResources(): any
    • +
      + +
        +
      • get stackName(): string
      • -

        Maximum number of resources in the stack

        -

        Set to 0 to mean "unlimited".

        +

        The concrete CloudFormation physical stack name.

        +

        This is either the name defined explicitly in the stackName prop or +allocated based on the stack's location in the construct tree. Stacks that +are directly defined under the app use their construct id as their stack +name. Stacks that are defined deeper within the tree will use a hashed naming +scheme based on the construct path to ensure uniqueness.

        +

        If you wish to obtain the deploy-time AWS::StackName intrinsic, +you can use Aws.STACK_NAME directly.

        -

        Returns any

        +

        Returns string

      -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:406
    +
    +
      -
    • get nested(): boolean
    • +
    • get partition(): string
    • -

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      +

      The partition in which this stack is defined

      -

      Returns boolean

      +

      Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:410
  • +
    +
      -
    • get nestedStackParent(): undefined | Stack
    • +
    • get urlSuffix(): string
    • -

      If this is a nested stack, returns it's parent stack.

      +

      The Amazon domain suffix for the region in which this stack is defined

      -

      Returns undefined | Stack

      +

      Returns string

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:414
  • +
    + +
      +
    • get stackId(): string
    • +
    • +

      The ID of the stack

      +
      +

      Returns string

      +
      +

      Example

      // After resolving, looks like
      'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123' +
      +
      @@ -375,204 +388,240 @@

      Returns stringInherited from cdk.Stack.notificationArns

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:426

    -
    - +
    +
      -
    • get partition(): string
    • +
    • get nested(): boolean
    • -

      The partition in which this stack is defined

      +

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      -

      Returns string

      +

      Returns boolean

    -
    - -
      -
    • get permissionsBoundaryArn(): any
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:430
    +
    + +
      +
    • get availabilityZones(): string[]
    • -

      If a permissions boundary has been applied on this scope or any parent scope -then this will return the ARN of the permissions boundary.

      -

      This will return the permissions boundary that has been applied to the most -specific scope.

      -

      For example:

      -

      const stage = new Stage(app, 'stage', { - permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), -});

      -

      const stack = new Stack(stage, 'Stack', { - permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), -});

      -

      Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

      +

      Returns the list of AZs that are available in the AWS environment +(account/region) associated with this stack.

      +

      If the stack is environment-agnostic (either account and/or region are +tokens), this property will return an array with 2 tokens that will resolve +at deploy-time to the first two availability zones returned from CloudFormation's +Fn::GetAZs intrinsic function.

      +

      If they are not available in the context, returns a set of dummy values and +reports them as missing, and let the CLI resolve them by calling EC2 +DescribeAvailabilityZones on the target environment.

      +

      To specify a different strategy for selecting availability zones override this method.

      -

      Returns any

      the name of the permissions boundary or undefined if not set

      - +

      Returns string[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:475
  • +
    +
      -
    • get stackId(): string
    • +
    • get nestedStackParent(): undefined | Stack
    • -

      The ID of the stack

      +

      If this is a nested stack, returns it's parent stack.

      -

      Returns string

      -
      -

      Example

      // After resolving, looks like
      'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123' -
      -
    -
    - -
      -
    • get stackName(): string
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:479
    +
    + +
      +
    • get maxResources(): any
    • -

      The concrete CloudFormation physical stack name.

      -

      This is either the name defined explicitly in the stackName prop or -allocated based on the stack's location in the construct tree. Stacks that -are directly defined under the app use their construct id as their stack -name. Stacks that are defined deeper within the tree will use a hashed naming -scheme based on the construct path to ensure uniqueness.

      -

      If you wish to obtain the deploy-time AWS::StackName intrinsic, -you can use Aws.STACK_NAME directly.

      +

      Maximum number of resources in the stack

      +

      Set to 0 to mean "unlimited".

      -

      Returns string

      +

      Returns any

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:692
  • +
    +
      -
    • get urlSuffix(): string
    • +
    • get bundlingRequired(): boolean
    • -

      The Amazon domain suffix for the region in which this stack is defined

      +

      Indicates whether the stack requires bundling or not

      -

      Returns string

      +

      Returns boolean

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:735
  • Methods

    -
    - +
    +
      - -
    • Internal -

      Called implicitly by the addDependency helper function in order to -realize a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
    • +
    • +

      Return whether the given object is a Stack.

      +

      We do attribute detection since we can't reliably use 'instanceof'.

      Parameters

      • -
        target: Stack
      • -
      • -
        Optional reason: StackDependencyReason
      -

      Returns void

      +
      x: any
    +

    Returns x is Stack

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:165
  • +
    +
      - -
    • Internal -

      Called implicitly by the obtainDependencies helper function in order to -collect resource dependencies across two top-level stacks at the assembly level.

      -

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      +
    • +
    • +

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      Parameters

      • -
        reasonFilter: StackDependencyReason
      -

      Returns Element[]

      +
      construct: IConstruct
      +

      The construct to start the search from.

      +
      +
    +

    Returns Stack

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:170
  • +
    +
      - -
    • Internal -

      Called implicitly by the removeDependency helper function in order to -remove a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
    • +
    • +

      Resolve a tokenized value in the context of the current stack.

      Parameters

      • -
        target: Stack
      • -
      • -
        Optional reasonFilter: StackDependencyReason
      -

      Returns void

      +
      obj: any
    +

    Returns any

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:342
  • +
    +
      - -
    • Internal -

      Synthesizes the cloudformation template into a cloud assembly.

      +
    • +
    • +

      Convert an object, potentially containing tokens, to a JSON string

      Parameters

      • -
        session: ISynthesisSession
      • +
        obj: any
      • -
        Optional lookupRoleArn: string
      -

      Returns void

      +
      Optional space: number
    +

    Returns string

    -
    - -
      - -
    • Internal -

      Returns the CloudFormation template for this stack by traversing -the tree and invoking _toCloudFormation() on all Entity objects.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:346
    +
    + +
      + +
    • +

      Convert an object, potentially containing tokens, to a YAML string

      -

      Returns any

      +
      +

      Parameters

      +
        +
      • +
        obj: any
      +

      Returns string

    -
    - -
      - -
    • Internal -

      Validate stack name

      -

      CloudFormation stack names can include dashes in addition to the regular identifier -character classes, and we don't allow one of the magic markers.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:350
    +
    + +
      + +
    • +

      Indicate that a context key was expected

      +

      Contains instructions which will be emitted into the cloud assembly on how +the key should be supplied.

      Parameters

      • -
        name: string
      +
      report: MissingContext
      +

      The set of parameters needed to obtain the context

      +
      +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:359
  • +
    + +
      + +
    • +

      Rename a generated logical identities

      +

      To modify the naming scheme strategy, extend the Stack class and +override the allocateLogicalId method.

      +
      +
      +

      Parameters

      +
        +
      • +
        oldId: string
      • +
      • +
        newId: string
      +

      Returns void

      +
    +
    + +
      + +
    • +

      Allocates a stack-unique CloudFormation-compatible logical identity for a +specific resource.

      +

      This method is called when a CfnElement is created and used to render the +initial logical identity of resources. Logical ID renames are applied at +this stage.

      +

      This method uses the protected method allocateLogicalId to render the +logical ID for an element. To modify the naming scheme, extend the Stack +class and override this method.

      +
      +
      +

      Parameters

      +
        +
      • +
        element: CfnElement
        +

        The CloudFormation element for which a logical identity is +needed.

        +
        +
      +

      Returns string

      +
      @@ -594,28 +643,61 @@

      Returns voidInherited from cdk.Stack.addDependency

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:389

    -
    - +
    +
      - +
    • -

      Adds an arbitary key-value pair, with information you want to record about the stack. -These get translated to the Metadata section of the generated template.

      +

      Creates an ARN from components.

      +

      If partition, region or account are not specified, the stack's +partition, region and account will be used.

      +

      If any component is the empty string, an empty string will be inserted +into the generated ARN at the location that component corresponds to.

      +

      The ARN will be formatted as follows:

      +

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      +

      The required ARN pieces that are omitted will be taken from the stack that +the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope +can be 'undefined'.

      Parameters

      • -
        key: string
      • +
        components: ArnComponents
      +

      Returns string

      +
    +
    + +
      + +
    • +

      Splits the provided ARN into its components. +Works both if 'arn' is a string like 'arn:aws:s3:::bucket', +and a Token representing a dynamic CloudFormation expression +(in which case the returned components will also be dynamic CloudFormation expressions, +encoded as Tokens).

      +
      +
      +

      Parameters

      +
      • -
        value: any
      -

      Returns void

      -
    • +
    • +
      arnFormat: ArnFormat
      +

      the expected format of 'arn' - depends on what format the service 'arn' represents uses

      +
      +
    +

    Returns ArnComponents

    +
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:459
  • -
    - -
      - +
      + +
        +
      • -

        Returns the naming scheme used to allocate logical IDs. By default, uses -the HashedAddressingScheme but this method can be overridden to customize -this behavior.

        -

        In order to make sure logical IDs are unique and stable, we hash the resource -construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as -a suffix to the path components joined without a separator (CloudFormation -IDs only allow alphanumeric characters).

        -

        The result will be:

        -

        <path.join('')><md5(path.join('/')> - "human" "hash"

        -

        If the "human" part of the ID exceeds 240 characters, we simply trim it so -the total ID doesn't exceed CloudFormation's 255 character limit.

        -

        We only take 8 characters from the md5 hash (0.000005 chance of collision).

        -

        Special cases:

        -
          -
        • If the path only contains a single component (i.e. it's a top-level -resource), we won't add the hash to it. The hash is not needed for -disambiguation and also, it allows for a more straightforward migration an -existing CloudFormation template to a CDK stack without logical ID changes -(or renames).
        • -
        • For aesthetic reasons, if the last components of the path are the same -(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the -resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> -instead of L1L2PipelinePipeline<HASH>
        • -
        • If a component is named "Default" it will be omitted from the path. This -allows refactoring higher level abstractions around constructs without affecting -the IDs of already deployed resources.
        • -
        • If a component is named "Resource" it will be omitted from the user-visible -path, but included in the hash. This reduces visual noise in the human readable -part of the identifier.
        • -
        +

        Adds an arbitary key-value pair, with information you want to record about the stack. +These get translated to the Metadata section of the generated template.

        Parameters

        • -
          cfnElement: CfnElement
          -

          The element for which the logical ID is allocated.

          -
          -
        -

        Returns string

        -
      • +
      • +
        value: any
      +

      Returns void

      +
    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:501
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string list value

      -

      Returns a string list representing the corresponding Fn.importValue() -expression for this Export. The export expression is automatically wrapped with an -Fn::Join and the import value with an Fn::Split, since CloudFormation can only -export strings. You can control the name for the export by passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      See exportValue for an example of this process.

      +
    • +
    • Internal +

      Called implicitly by the addDependency helper function in order to +realize a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        exportedValue: any
      • +
        target: Stack
      • -
        Optional options: ExportValueOptions
      -

      Returns string[]

      +
      Optional reason: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:511
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string value

      -

      Returns a string representing the corresponding Fn.importValue() -expression for this Export. You can control the name for the export by -passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      Example

      Here is how the process works. Let's say there are two stacks, -producerStack and consumerStack, and producerStack has a bucket -called bucket, which is referenced by consumerStack (perhaps because -an AWS Lambda Function writes into it, or something like that).

      -

      It is not safe to remove producerStack.bucket because as the bucket is being -deleted, consumerStack might still be using it.

      -

      Instead, the process takes two deployments:

      -

      Deployment 1: break the relationship

        -
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer -stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just -remove the Lambda Function altogether).
      • -
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This -will make sure the CloudFormation Export continues to exist while the relationship -between the two stacks is being broken.
      • -
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • -
      -

      Deployment 2: remove the bucket resource

        -
      • You are now free to remove the bucket resource from producerStack.
      • -
      • Don't forget to remove the exportValue() call as well.
      • -
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • -
      +
    • +
    • Internal +

      Called implicitly by the obtainDependencies helper function in order to +collect resource dependencies across two top-level stacks at the assembly level.

      +

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      Parameters

      • -
        exportedValue: any
      • -
      • -
        Optional options: ExportValueOptions
      -

      Returns string

      +
      reasonFilter: StackDependencyReason
    +

    Returns Element[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:520
  • +
    +
      - -
    • -

      Creates an ARN from components.

      -

      If partition, region or account are not specified, the stack's -partition, region and account will be used.

      -

      If any component is the empty string, an empty string will be inserted -into the generated ARN at the location that component corresponds to.

      -

      The ARN will be formatted as follows:

      -

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      -

      The required ARN pieces that are omitted will be taken from the stack that -the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope -can be 'undefined'.

      +
    • +
    • Internal +

      Called implicitly by the removeDependency helper function in order to +remove a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        components: ArnComponents
      -

      Returns string

      +
      target: Stack
    • +
    • +
      Optional reasonFilter: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:530
  • +
    +
      - -
    • -

      Allocates a stack-unique CloudFormation-compatible logical identity for a -specific resource.

      -

      This method is called when a CfnElement is created and used to render the -initial logical identity of resources. Logical ID renames are applied at -this stage.

      -

      This method uses the protected method allocateLogicalId to render the -logical ID for an element. To modify the naming scheme, extend the Stack -class and override this method.

      +
    • +
    • Internal +

      Synthesizes the cloudformation template into a cloud assembly.

      Parameters

      • -
        element: CfnElement
        -

        The CloudFormation element for which a logical identity is -needed.

        -
        -
      -

      Returns string

      +
      session: ISynthesisSession
    • +
    • +
      Optional lookupRoleArn: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:535
    • @@ -863,143 +860,173 @@

      Returns stringInherited from cdk.Stack.regionalFact

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:555

    -
    - -
      - -
    • -

      Rename a generated logical identities

      -

      To modify the naming scheme strategy, extend the Stack class and -override the allocateLogicalId method.

      -
      -
      -

      Parameters

      -
        -
      • -
        oldId: string
      • -
      • -
        newId: string
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Indicate that a context key was expected

      -

      Contains instructions which will be emitted into the cloud assembly on how -the key should be supplied.

      -
      -
      -

      Parameters

      -
        -
      • -
        report: MissingContext
        -

        The set of parameters needed to obtain the context

        -
        -
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Resolve a tokenized value in the context of the current stack.

      -
      -
      -

      Parameters

      -
        -
      • -
        obj: any
      -

      Returns any

      -
    -
    - +
    +
      - +
    • -

      Splits the provided ARN into its components. -Works both if 'arn' is a string like 'arn:aws:s3:::bucket', -and a Token representing a dynamic CloudFormation expression -(in which case the returned components will also be dynamic CloudFormation expressions, -encoded as Tokens).

      +

      Create a CloudFormation Export for a string value

      +

      Returns a string representing the corresponding Fn.importValue() +expression for this Export. You can control the name for the export by +passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      Example

      Here is how the process works. Let's say there are two stacks, +producerStack and consumerStack, and producerStack has a bucket +called bucket, which is referenced by consumerStack (perhaps because +an AWS Lambda Function writes into it, or something like that).

      +

      It is not safe to remove producerStack.bucket because as the bucket is being +deleted, consumerStack might still be using it.

      +

      Instead, the process takes two deployments:

      +

      Deployment 1: break the relationship

        +
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer +stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just +remove the Lambda Function altogether).
      • +
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This +will make sure the CloudFormation Export continues to exist while the relationship +between the two stacks is being broken.
      • +
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • +
      +

      Deployment 2: remove the bucket resource

        +
      • You are now free to remove the bucket resource from producerStack.
      • +
      • Don't forget to remove the exportValue() call as well.
      • +
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • +

      Parameters

      • -
        arn: string
        -

        the ARN to split into its components

        -
        -
      • +
        exportedValue: any
      • -
        arnFormat: ArnFormat
        -

        the expected format of 'arn' - depends on what format the service 'arn' represents uses

        -
        -
      -

      Returns ArnComponents

      +
      Optional options: ExportValueOptions
    +

    Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:602
  • +
    +
      - +
    • -

      Convert an object, potentially containing tokens, to a JSON string

      +

      Create a CloudFormation Export for a string list value

      +

      Returns a string list representing the corresponding Fn.importValue() +expression for this Export. The export expression is automatically wrapped with an +Fn::Join and the import value with an Fn::Split, since CloudFormation can only +export strings. You can control the name for the export by passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      See exportValue for an example of this process.

      Parameters

      • -
        obj: any
      • +
        exportedValue: any
      • -
        Optional space: number
      -

      Returns string

      +
      Optional options: ExportValueOptions
    +

    Returns string[]

    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:624
    +
    + +
      +
    • -

      Returns a string representation of this construct.

      +

      Returns the naming scheme used to allocate logical IDs. By default, uses +the HashedAddressingScheme but this method can be overridden to customize +this behavior.

      +

      In order to make sure logical IDs are unique and stable, we hash the resource +construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as +a suffix to the path components joined without a separator (CloudFormation +IDs only allow alphanumeric characters).

      +

      The result will be:

      +

      <path.join('')><md5(path.join('/')> + "human" "hash"

      +

      If the "human" part of the ID exceeds 240 characters, we simply trim it so +the total ID doesn't exceed CloudFormation's 255 character limit.

      +

      We only take 8 characters from the md5 hash (0.000005 chance of collision).

      +

      Special cases:

      +
        +
      • If the path only contains a single component (i.e. it's a top-level +resource), we won't add the hash to it. The hash is not needed for +disambiguation and also, it allows for a more straightforward migration an +existing CloudFormation template to a CDK stack without logical ID changes +(or renames).
      • +
      • For aesthetic reasons, if the last components of the path are the same +(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the +resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> +instead of L1L2PipelinePipeline<HASH>
      • +
      • If a component is named "Default" it will be omitted from the path. This +allows refactoring higher level abstractions around constructs without affecting +the IDs of already deployed resources.
      • +
      • If a component is named "Resource" it will be omitted from the user-visible +path, but included in the hash. This reduces visual noise in the human readable +part of the identifier.
      • +
      +
      +
      +

      Parameters

      +
        +
      • +
        cfnElement: CfnElement
        +

        The element for which the logical ID is allocated.

        +

      Returns string

    -
    - -
      - -
    • -

      Convert an object, potentially containing tokens, to a YAML string

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:665
    +
    + +
      + +
    • Internal +

      Validate stack name

      +

      CloudFormation stack names can include dashes in addition to the regular identifier +character classes, and we don't allow one of the magic markers.

      Parameters

      • -
        obj: any
      -

      Returns string

      +
      name: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:674
  • +
    + +
      + +
    • Internal +

      Returns the CloudFormation template for this stack by traversing +the tree and invoking _toCloudFormation() on all Entity objects.

      +
      +

      Returns any

      +
      @@ -1033,44 +1060,18 @@

      Returns x<

      Inherited from cdk.Stack.isConstruct

      • Defined in node_modules/constructs/lib/construct.d.ts:261

    -
    - -
      - -
    • -

      Return whether the given object is a Stack.

      -

      We do attribute detection since we can't reliably use 'instanceof'.

      -
      -
      -

      Parameters

      -
        -
      • -
        x: any
      -

      Returns x is Stack

      -
    -
    - +
    +
      - +
    • -

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      -
      -
      -

      Parameters

      -
        -
      • -
        construct: IConstruct
        -

        The construct to start the search from.

        +

        Returns a string representation of this construct.

        -
      -

      Returns Stack

      +

      Returns string

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:278
  • +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/classes/BuildImageRepoStack.html b/classes/BuildImageRepoStack.html index 9cf78c9..e30c6ae 100644 --- a/classes/BuildImageRepoStack.html +++ b/classes/BuildImageRepoStack.html @@ -12,11 +12,12 @@

    The ECR Repository to store build host images.

    +

    This is the output of the BuildImagePipelineStack

    @@ -26,7 +27,7 @@

    Hierarchy

    • BuildImageRepoStack
    +
  • Defined in lib/build-image-repo.ts:10
  • @@ -38,63 +39,63 @@

    Constructors

    Properties

    -

    Accessors

    -

    Methods

    -

    Constructors

    @@ -115,28 +116,60 @@
    Optional Returns BuildImageRepoStack
    +
  • Defined in lib/build-image-repo.ts:14
  • Properties

    -
    - -
    _crossRegionReferences: boolean
    -

    Whether cross region references are enabled for this stack

    +
    + +
    repository: IRepository
    +

    The respository to put the build host container in.

    -
    - -
    _versionReportingEnabled: boolean
    -

    Whether version reporting is enabled for this stack

    -

    Controls whether the CDK Metadata resource is injected

    +
  • Defined in lib/build-image-repo.ts:12
  • +
    + +
    tags: TagManager
    +

    Tags to be applied to the stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:174
  • +
    + +
    templateOptions: ITemplateOptions
    +

    Options for CloudFormation template (like version, transform, description).

    +
    +
    +
    + +
    region: string
    +

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    +

    This value is resolved according to the following rules:

    +
      +
    1. The value provided to env.region when the stack is defined. This can +either be a concrete region (e.g. us-west-2) or the Aws.REGION +token.
    2. +
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference +{ "Ref": "AWS::Region" } encoded as a string token.
    4. +
    +

    Preferably, you should use the return value as an opaque string and not +attempt to parse it to implement your logic. If you do, you must first +check that it is a concrete value an not an unresolved token. If this +value is an unresolved token (Token.isUnresolved(stack.region) returns +true), this implies that the user wishes that this stack will synthesize +into a region-agnostic template. In this case, your code should either +fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or +implement some other region-agnostic behavior.

    +
    +
    account: string
    @@ -162,15 +195,6 @@
    -
    - -
    artifactId: string
    -

    The ID of the cloud assembly artifact for this stack.

    -
    -
    environment: string
    @@ -188,6 +212,15 @@
    +
    + +
    terminationProtection?: boolean
    +

    Whether termination protection is enabled for this stack.

    +
    +
    nestedStackResource?: CfnResource
    @@ -198,48 +231,26 @@
    -
    - -
    node: Node
    -

    The tree node.

    -
    -
    -
    - -
    region: string
    -

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    -

    This value is resolved according to the following rules:

    -
      -
    1. The value provided to env.region when the stack is defined. This can -either be a concrete region (e.g. us-west-2) or the Aws.REGION -token.
    2. -
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference -{ "Ref": "AWS::Region" } encoded as a string token.
    4. -
    -

    Preferably, you should use the return value as an opaque string and not -attempt to parse it to implement your logic. If you do, you must first -check that it is a concrete value an not an unresolved token. If this -value is an unresolved token (Token.isUnresolved(stack.region) returns -true), this implies that the user wishes that this stack will synthesize -into a region-agnostic template. In this case, your code should either -fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or -implement some other region-agnostic behavior.

    +
    + +
    templateFile: string
    +

    The name of the CloudFormation template file emitted to the output +directory during synthesis.

    +

    Example value: MyStack.template.json

    -
    - -
    repository: IRepository
    -

    The respository to put the build host container in.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:251
  • +
    + +
    artifactId: string
    +

    The ID of the cloud assembly artifact for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:255
  • synthesizer: IStackSynthesizer
    @@ -249,79 +260,60 @@
    -
    - -
    tags: TagManager
    -

    Tags to be applied to the stack.

    -
    -
    -
    - -
    templateFile: string
    -

    The name of the CloudFormation template file emitted to the output -directory during synthesis.

    -

    Example value: MyStack.template.json

    +
    + +
    _versionReportingEnabled: boolean
    +

    Whether version reporting is enabled for this stack

    +

    Controls whether the CDK Metadata resource is injected

    -
    - -
    templateOptions: ITemplateOptions
    -

    Options for CloudFormation template (like version, transform, description).

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:268
  • +
    + +
    _crossRegionReferences: boolean
    +

    Whether cross region references are enabled for this stack

    -
    - -
    terminationProtection?: boolean
    -

    Whether termination protection is enabled for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:274
  • +
    + +
    node: Node
    +

    The tree node.

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:265
  • Accessors

    -
    - -
      -
    • get availabilityZones(): string[]
    • +
      + +
        +
      • get permissionsBoundaryArn(): any
      • -

        Returns the list of AZs that are available in the AWS environment -(account/region) associated with this stack.

        -

        If the stack is environment-agnostic (either account and/or region are -tokens), this property will return an array with 2 tokens that will resolve -at deploy-time to the first two availability zones returned from CloudFormation's -Fn::GetAZs intrinsic function.

        -

        If they are not available in the context, returns a set of dummy values and -reports them as missing, and let the CLI resolve them by calling EC2 -DescribeAvailabilityZones on the target environment.

        -

        To specify a different strategy for selecting availability zones override this method.

        -
        -

        Returns string[]

        -
      -
      - -
        -
      • get bundlingRequired(): boolean
      • -
      • -

        Indicates whether the stack requires bundling or not

        +

        If a permissions boundary has been applied on this scope or any parent scope +then this will return the ARN of the permissions boundary.

        +

        This will return the permissions boundary that has been applied to the most +specific scope.

        +

        For example:

        +

        const stage = new Stage(app, 'stage', { + permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), +});

        +

        const stack = new Stack(stage, 'Stack', { + permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), +});

        +

        Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

        -

        Returns boolean

        +

        Returns any

        the name of the permissions boundary or undefined if not set

        +
      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:333
      @@ -334,43 +326,64 @@

      Returns StackInherited from cdk.Stack.dependencies

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:393

    -
    - -
      -
    • get maxResources(): any
    • +
      + +
        +
      • get stackName(): string
      • -

        Maximum number of resources in the stack

        -

        Set to 0 to mean "unlimited".

        +

        The concrete CloudFormation physical stack name.

        +

        This is either the name defined explicitly in the stackName prop or +allocated based on the stack's location in the construct tree. Stacks that +are directly defined under the app use their construct id as their stack +name. Stacks that are defined deeper within the tree will use a hashed naming +scheme based on the construct path to ensure uniqueness.

        +

        If you wish to obtain the deploy-time AWS::StackName intrinsic, +you can use Aws.STACK_NAME directly.

        -

        Returns any

        +

        Returns string

      -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:406
    +
    +
      -
    • get nested(): boolean
    • +
    • get partition(): string
    • -

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      +

      The partition in which this stack is defined

      -

      Returns boolean

      +

      Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:410
  • +
    +
      -
    • get nestedStackParent(): undefined | Stack
    • +
    • get urlSuffix(): string
    • -

      If this is a nested stack, returns it's parent stack.

      +

      The Amazon domain suffix for the region in which this stack is defined

      -

      Returns undefined | Stack

      +

      Returns string

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:414
  • +
    + +
      +
    • get stackId(): string
    • +
    • +

      The ID of the stack

      +
      +

      Returns string

      +
      +

      Example

      // After resolving, looks like
      'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123' +
      +
      @@ -383,204 +396,240 @@

      Returns stringInherited from cdk.Stack.notificationArns

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:426

    -
    - +
    +
      -
    • get partition(): string
    • +
    • get nested(): boolean
    • -

      The partition in which this stack is defined

      +

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      -

      Returns string

      +

      Returns boolean

    -
    - -
      -
    • get permissionsBoundaryArn(): any
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:430
    +
    + +
      +
    • get availabilityZones(): string[]
    • -

      If a permissions boundary has been applied on this scope or any parent scope -then this will return the ARN of the permissions boundary.

      -

      This will return the permissions boundary that has been applied to the most -specific scope.

      -

      For example:

      -

      const stage = new Stage(app, 'stage', { - permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), -});

      -

      const stack = new Stack(stage, 'Stack', { - permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), -});

      -

      Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

      +

      Returns the list of AZs that are available in the AWS environment +(account/region) associated with this stack.

      +

      If the stack is environment-agnostic (either account and/or region are +tokens), this property will return an array with 2 tokens that will resolve +at deploy-time to the first two availability zones returned from CloudFormation's +Fn::GetAZs intrinsic function.

      +

      If they are not available in the context, returns a set of dummy values and +reports them as missing, and let the CLI resolve them by calling EC2 +DescribeAvailabilityZones on the target environment.

      +

      To specify a different strategy for selecting availability zones override this method.

      -

      Returns any

      the name of the permissions boundary or undefined if not set

      - +

      Returns string[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:475
  • +
    +
      -
    • get stackId(): string
    • +
    • get nestedStackParent(): undefined | Stack
    • -

      The ID of the stack

      +

      If this is a nested stack, returns it's parent stack.

      -

      Returns string

      -
      -

      Example

      // After resolving, looks like
      'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123' -
      -
    -
    - -
      -
    • get stackName(): string
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:479
    +
    + +
      +
    • get maxResources(): any
    • -

      The concrete CloudFormation physical stack name.

      -

      This is either the name defined explicitly in the stackName prop or -allocated based on the stack's location in the construct tree. Stacks that -are directly defined under the app use their construct id as their stack -name. Stacks that are defined deeper within the tree will use a hashed naming -scheme based on the construct path to ensure uniqueness.

      -

      If you wish to obtain the deploy-time AWS::StackName intrinsic, -you can use Aws.STACK_NAME directly.

      +

      Maximum number of resources in the stack

      +

      Set to 0 to mean "unlimited".

      -

      Returns string

      +

      Returns any

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:692
  • +
    +
      -
    • get urlSuffix(): string
    • +
    • get bundlingRequired(): boolean
    • -

      The Amazon domain suffix for the region in which this stack is defined

      +

      Indicates whether the stack requires bundling or not

      -

      Returns string

      +

      Returns boolean

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:735
  • Methods

    -
    - +
    +
      - -
    • Internal -

      Called implicitly by the addDependency helper function in order to -realize a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
    • +
    • +

      Return whether the given object is a Stack.

      +

      We do attribute detection since we can't reliably use 'instanceof'.

      Parameters

      • -
        target: Stack
      • -
      • -
        Optional reason: StackDependencyReason
      -

      Returns void

      +
      x: any
    +

    Returns x is Stack

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:165
  • +
    +
      - -
    • Internal -

      Called implicitly by the obtainDependencies helper function in order to -collect resource dependencies across two top-level stacks at the assembly level.

      -

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      +
    • +
    • +

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      Parameters

      • -
        reasonFilter: StackDependencyReason
      -

      Returns Element[]

      +
      construct: IConstruct
      +

      The construct to start the search from.

      +
      +
    +

    Returns Stack

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:170
  • +
    +
      - -
    • Internal -

      Called implicitly by the removeDependency helper function in order to -remove a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
    • +
    • +

      Resolve a tokenized value in the context of the current stack.

      Parameters

      • -
        target: Stack
      • +
        obj: any
      +

      Returns any

      +
    +
    + +
      + +
    • +

      Convert an object, potentially containing tokens, to a JSON string

      +
      +
      +

      Parameters

      +
      • -
        Optional reasonFilter: StackDependencyReason
      -

      Returns void

      +
      obj: any
    • +
    • +
      Optional space: number
    +

    Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:346
  • +
    +
      - -
    • Internal -

      Synthesizes the cloudformation template into a cloud assembly.

      +
    • +
    • +

      Convert an object, potentially containing tokens, to a YAML string

      Parameters

      • -
        session: ISynthesisSession
      • +
        obj: any
      +

      Returns string

      +
    +
    + +
      + +
    • +

      Indicate that a context key was expected

      +

      Contains instructions which will be emitted into the cloud assembly on how +the key should be supplied.

      +
      +
      +

      Parameters

      +
      • -
        Optional lookupRoleArn: string
      +
      report: MissingContext
      +

      The set of parameters needed to obtain the context

      +
      +

    Returns void

    -
    - -
      - -
    • Internal -

      Returns the CloudFormation template for this stack by traversing -the tree and invoking _toCloudFormation() on all Entity objects.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:359
    +
    + +
      + +
    • +

      Rename a generated logical identities

      +

      To modify the naming scheme strategy, extend the Stack class and +override the allocateLogicalId method.

      -

      Returns any

      +
      +

      Parameters

      +
        +
      • +
        oldId: string
      • +
      • +
        newId: string
      +

      Returns void

    -
    - -
      - -
    • Internal -

      Validate stack name

      -

      CloudFormation stack names can include dashes in addition to the regular identifier -character classes, and we don't allow one of the magic markers.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:366
    +
    + +
      + +
    • +

      Allocates a stack-unique CloudFormation-compatible logical identity for a +specific resource.

      +

      This method is called when a CfnElement is created and used to render the +initial logical identity of resources. Logical ID renames are applied at +this stage.

      +

      This method uses the protected method allocateLogicalId to render the +logical ID for an element. To modify the naming scheme, extend the Stack +class and override this method.

      Parameters

      • -
        name: string
      -

      Returns void

      +
      element: CfnElement
      +

      The CloudFormation element for which a logical identity is +needed.

      +
      +
    +

    Returns string

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:382
    • @@ -602,28 +651,61 @@

      Returns voidInherited from cdk.Stack.addDependency

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:389

    -
    - +
    +
      - +
    • -

      Adds an arbitary key-value pair, with information you want to record about the stack. -These get translated to the Metadata section of the generated template.

      +

      Creates an ARN from components.

      +

      If partition, region or account are not specified, the stack's +partition, region and account will be used.

      +

      If any component is the empty string, an empty string will be inserted +into the generated ARN at the location that component corresponds to.

      +

      The ARN will be formatted as follows:

      +

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      +

      The required ARN pieces that are omitted will be taken from the stack that +the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope +can be 'undefined'.

      Parameters

      • -
        key: string
      • +
        components: ArnComponents
      +

      Returns string

      +
    +
    + +
      + +
    • +

      Splits the provided ARN into its components. +Works both if 'arn' is a string like 'arn:aws:s3:::bucket', +and a Token representing a dynamic CloudFormation expression +(in which case the returned components will also be dynamic CloudFormation expressions, +encoded as Tokens).

      +
      +
      +

      Parameters

      +
      • -
        value: any
      -

      Returns void

      -
    • +
    • +
      arnFormat: ArnFormat
      +

      the expected format of 'arn' - depends on what format the service 'arn' represents uses

      +
      +
    +

    Returns ArnComponents

    +
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:459
  • -
    - -
      - +
      + +
        +
      • -

        Returns the naming scheme used to allocate logical IDs. By default, uses -the HashedAddressingScheme but this method can be overridden to customize -this behavior.

        -

        In order to make sure logical IDs are unique and stable, we hash the resource -construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as -a suffix to the path components joined without a separator (CloudFormation -IDs only allow alphanumeric characters).

        -

        The result will be:

        -

        <path.join('')><md5(path.join('/')> - "human" "hash"

        -

        If the "human" part of the ID exceeds 240 characters, we simply trim it so -the total ID doesn't exceed CloudFormation's 255 character limit.

        -

        We only take 8 characters from the md5 hash (0.000005 chance of collision).

        -

        Special cases:

        -
          -
        • If the path only contains a single component (i.e. it's a top-level -resource), we won't add the hash to it. The hash is not needed for -disambiguation and also, it allows for a more straightforward migration an -existing CloudFormation template to a CDK stack without logical ID changes -(or renames).
        • -
        • For aesthetic reasons, if the last components of the path are the same -(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the -resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> -instead of L1L2PipelinePipeline<HASH>
        • -
        • If a component is named "Default" it will be omitted from the path. This -allows refactoring higher level abstractions around constructs without affecting -the IDs of already deployed resources.
        • -
        • If a component is named "Resource" it will be omitted from the user-visible -path, but included in the hash. This reduces visual noise in the human readable -part of the identifier.
        • -
        +

        Adds an arbitary key-value pair, with information you want to record about the stack. +These get translated to the Metadata section of the generated template.

        Parameters

        • -
          cfnElement: CfnElement
          -

          The element for which the logical ID is allocated.

          -
          -
        -

        Returns string

        -
      • +
      • +
        value: any
      +

      Returns void

      +
    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:501
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string list value

      -

      Returns a string list representing the corresponding Fn.importValue() -expression for this Export. The export expression is automatically wrapped with an -Fn::Join and the import value with an Fn::Split, since CloudFormation can only -export strings. You can control the name for the export by passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      See exportValue for an example of this process.

      +
    • +
    • Internal +

      Called implicitly by the addDependency helper function in order to +realize a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        exportedValue: any
      • +
        target: Stack
      • -
        Optional options: ExportValueOptions
      -

      Returns string[]

      +
      Optional reason: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:511
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string value

      -

      Returns a string representing the corresponding Fn.importValue() -expression for this Export. You can control the name for the export by -passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      Example

      Here is how the process works. Let's say there are two stacks, -producerStack and consumerStack, and producerStack has a bucket -called bucket, which is referenced by consumerStack (perhaps because -an AWS Lambda Function writes into it, or something like that).

      -

      It is not safe to remove producerStack.bucket because as the bucket is being -deleted, consumerStack might still be using it.

      -

      Instead, the process takes two deployments:

      -

      Deployment 1: break the relationship

        -
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer -stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just -remove the Lambda Function altogether).
      • -
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This -will make sure the CloudFormation Export continues to exist while the relationship -between the two stacks is being broken.
      • -
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • -
      -

      Deployment 2: remove the bucket resource

        -
      • You are now free to remove the bucket resource from producerStack.
      • -
      • Don't forget to remove the exportValue() call as well.
      • -
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • -
      +
    • +
    • Internal +

      Called implicitly by the obtainDependencies helper function in order to +collect resource dependencies across two top-level stacks at the assembly level.

      +

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      Parameters

      • -
        exportedValue: any
      • -
      • -
        Optional options: ExportValueOptions
      -

      Returns string

      +
      reasonFilter: StackDependencyReason
    +

    Returns Element[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:520
  • +
    +
      - -
    • -

      Creates an ARN from components.

      -

      If partition, region or account are not specified, the stack's -partition, region and account will be used.

      -

      If any component is the empty string, an empty string will be inserted -into the generated ARN at the location that component corresponds to.

      -

      The ARN will be formatted as follows:

      -

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      -

      The required ARN pieces that are omitted will be taken from the stack that -the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope -can be 'undefined'.

      +
    • +
    • Internal +

      Called implicitly by the removeDependency helper function in order to +remove a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        components: ArnComponents
      -

      Returns string

      +
      target: Stack
    • +
    • +
      Optional reasonFilter: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:530
  • +
    +
      - -
    • -

      Allocates a stack-unique CloudFormation-compatible logical identity for a -specific resource.

      -

      This method is called when a CfnElement is created and used to render the -initial logical identity of resources. Logical ID renames are applied at -this stage.

      -

      This method uses the protected method allocateLogicalId to render the -logical ID for an element. To modify the naming scheme, extend the Stack -class and override this method.

      +
    • +
    • Internal +

      Synthesizes the cloudformation template into a cloud assembly.

      Parameters

      • -
        element: CfnElement
        -

        The CloudFormation element for which a logical identity is -needed.

        -
        -
      -

      Returns string

      +
      session: ISynthesisSession
    • +
    • +
      Optional lookupRoleArn: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:535
    • @@ -871,143 +868,173 @@

      Returns stringInherited from cdk.Stack.regionalFact

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:555

    -
    - -
      - -
    • -

      Rename a generated logical identities

      -

      To modify the naming scheme strategy, extend the Stack class and -override the allocateLogicalId method.

      -
      -
      -

      Parameters

      -
        -
      • -
        oldId: string
      • -
      • -
        newId: string
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Indicate that a context key was expected

      -

      Contains instructions which will be emitted into the cloud assembly on how -the key should be supplied.

      -
      -
      -

      Parameters

      -
        -
      • -
        report: MissingContext
        -

        The set of parameters needed to obtain the context

        -
        -
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Resolve a tokenized value in the context of the current stack.

      -
      -
      -

      Parameters

      -
        -
      • -
        obj: any
      -

      Returns any

      -
    -
    - +
    +
      - +
    • -

      Splits the provided ARN into its components. -Works both if 'arn' is a string like 'arn:aws:s3:::bucket', -and a Token representing a dynamic CloudFormation expression -(in which case the returned components will also be dynamic CloudFormation expressions, -encoded as Tokens).

      +

      Create a CloudFormation Export for a string value

      +

      Returns a string representing the corresponding Fn.importValue() +expression for this Export. You can control the name for the export by +passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      Example

      Here is how the process works. Let's say there are two stacks, +producerStack and consumerStack, and producerStack has a bucket +called bucket, which is referenced by consumerStack (perhaps because +an AWS Lambda Function writes into it, or something like that).

      +

      It is not safe to remove producerStack.bucket because as the bucket is being +deleted, consumerStack might still be using it.

      +

      Instead, the process takes two deployments:

      +

      Deployment 1: break the relationship

        +
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer +stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just +remove the Lambda Function altogether).
      • +
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This +will make sure the CloudFormation Export continues to exist while the relationship +between the two stacks is being broken.
      • +
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • +
      +

      Deployment 2: remove the bucket resource

        +
      • You are now free to remove the bucket resource from producerStack.
      • +
      • Don't forget to remove the exportValue() call as well.
      • +
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • +

      Parameters

      • -
        arn: string
        -

        the ARN to split into its components

        -
        -
      • +
        exportedValue: any
      • -
        arnFormat: ArnFormat
        -

        the expected format of 'arn' - depends on what format the service 'arn' represents uses

        -
        -
      -

      Returns ArnComponents

      +
      Optional options: ExportValueOptions
    +

    Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:602
  • +
    +
      - +
    • -

      Convert an object, potentially containing tokens, to a JSON string

      +

      Create a CloudFormation Export for a string list value

      +

      Returns a string list representing the corresponding Fn.importValue() +expression for this Export. The export expression is automatically wrapped with an +Fn::Join and the import value with an Fn::Split, since CloudFormation can only +export strings. You can control the name for the export by passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      See exportValue for an example of this process.

      Parameters

      • -
        obj: any
      • +
        exportedValue: any
      • -
        Optional space: number
      -

      Returns string

      +
      Optional options: ExportValueOptions
    +

    Returns string[]

    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:624
    +
    + +
      +
    • -

      Returns a string representation of this construct.

      +

      Returns the naming scheme used to allocate logical IDs. By default, uses +the HashedAddressingScheme but this method can be overridden to customize +this behavior.

      +

      In order to make sure logical IDs are unique and stable, we hash the resource +construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as +a suffix to the path components joined without a separator (CloudFormation +IDs only allow alphanumeric characters).

      +

      The result will be:

      +

      <path.join('')><md5(path.join('/')> + "human" "hash"

      +

      If the "human" part of the ID exceeds 240 characters, we simply trim it so +the total ID doesn't exceed CloudFormation's 255 character limit.

      +

      We only take 8 characters from the md5 hash (0.000005 chance of collision).

      +

      Special cases:

      +
        +
      • If the path only contains a single component (i.e. it's a top-level +resource), we won't add the hash to it. The hash is not needed for +disambiguation and also, it allows for a more straightforward migration an +existing CloudFormation template to a CDK stack without logical ID changes +(or renames).
      • +
      • For aesthetic reasons, if the last components of the path are the same +(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the +resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> +instead of L1L2PipelinePipeline<HASH>
      • +
      • If a component is named "Default" it will be omitted from the path. This +allows refactoring higher level abstractions around constructs without affecting +the IDs of already deployed resources.
      • +
      • If a component is named "Resource" it will be omitted from the user-visible +path, but included in the hash. This reduces visual noise in the human readable +part of the identifier.
      • +
      +
      +
      +

      Parameters

      +
        +
      • +
        cfnElement: CfnElement
        +

        The element for which the logical ID is allocated.

        +

      Returns string

    -
    - -
      - -
    • -

      Convert an object, potentially containing tokens, to a YAML string

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:665
    +
    + +
      + +
    • Internal +

      Validate stack name

      +

      CloudFormation stack names can include dashes in addition to the regular identifier +character classes, and we don't allow one of the magic markers.

      Parameters

      • -
        obj: any
      -

      Returns string

      +
      name: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:674
  • +
    + +
      + +
    • Internal +

      Returns the CloudFormation template for this stack by traversing +the tree and invoking _toCloudFormation() on all Entity objects.

      +
      +

      Returns any

      +
      @@ -1041,44 +1068,18 @@

      Returns x<

      Inherited from cdk.Stack.isConstruct

      • Defined in node_modules/constructs/lib/construct.d.ts:261

    -
    - -
      - -
    • -

      Return whether the given object is a Stack.

      -

      We do attribute detection since we can't reliably use 'instanceof'.

      -
      -
      -

      Parameters

      -
        -
      • -
        x: any
      -

      Returns x is Stack

      -
    -
    - +
    +
      - +
    • -

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      -
      -
      -

      Parameters

      -
        -
      • -
        construct: IConstruct
        -

        The construct to start the search from.

        +

        Returns a string representation of this construct.

        -
      -

      Returns Stack

      +

      Returns string

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:278
  • +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/classes/EmbeddedLinuxPipelineStack.html b/classes/EmbeddedLinuxPipelineStack.html index 8cc8570..a1ea5c6 100644 --- a/classes/EmbeddedLinuxPipelineStack.html +++ b/classes/EmbeddedLinuxPipelineStack.html @@ -12,11 +12,12 @@
    -

    The stack demonstrating how to build a pipeline for meta-aws-demos

    +

    The stack for creating a build pipeline.

    +

    See EmbeddedLinuxPipelineProps for configration options.

    @@ -26,7 +27,7 @@

    Hierarchy

    • EmbeddedLinuxPipelineStack
    +
  • Defined in lib/embedded-linux-pipeline.ts:58
  • @@ -38,68 +39,68 @@

    Constructors

    Properties

    -

    Accessors

    -

    Methods

    -

    Constructors

    @@ -120,28 +121,52 @@
    props: Returns EmbeddedLinuxPipelineStack
    +
  • Defined in lib/embedded-linux-pipeline.ts:59
  • Properties

    -
    - -
    _crossRegionReferences: boolean
    -

    Whether cross region references are enabled for this stack

    +
    + +
    tags: TagManager
    +

    Tags to be applied to the stack.

    -
    - -
    _versionReportingEnabled: boolean
    -

    Whether version reporting is enabled for this stack

    -

    Controls whether the CDK Metadata resource is injected

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:174
  • +
    + +
    templateOptions: ITemplateOptions
    +

    Options for CloudFormation template (like version, transform, description).

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:178
  • +
    + +
    region: string
    +

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    +

    This value is resolved according to the following rules:

    +
      +
    1. The value provided to env.region when the stack is defined. This can +either be a concrete region (e.g. us-west-2) or the Aws.REGION +token.
    2. +
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference +{ "Ref": "AWS::Region" } encoded as a string token.
    4. +
    +

    Preferably, you should use the return value as an opaque string and not +attempt to parse it to implement your logic. If you do, you must first +check that it is a concrete value an not an unresolved token. If this +value is an unresolved token (Token.isUnresolved(stack.region) returns +true), this implies that the user wishes that this stack will synthesize +into a region-agnostic template. In this case, your code should either +fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or +implement some other region-agnostic behavior.

    +
    +
    account: string
    @@ -167,15 +192,6 @@
    -
    - -
    artifactId: string
    -

    The ID of the cloud assembly artifact for this stack.

    -
    -
    environment: string
    @@ -193,6 +209,15 @@
    +
    + +
    terminationProtection?: boolean
    +

    Whether termination protection is enabled for this stack.

    +
    +
    nestedStackResource?: CfnResource
    @@ -203,40 +228,26 @@
    -
    - -
    node: Node
    -

    The tree node.

    +
    + +
    templateFile: string
    +

    The name of the CloudFormation template file emitted to the output +directory during synthesis.

    +

    Example value: MyStack.template.json

    -
    - -
    region: string
    -

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    -

    This value is resolved according to the following rules:

    -
      -
    1. The value provided to env.region when the stack is defined. This can -either be a concrete region (e.g. us-west-2) or the Aws.REGION -token.
    2. -
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference -{ "Ref": "AWS::Region" } encoded as a string token.
    4. -
    -

    Preferably, you should use the return value as an opaque string and not -attempt to parse it to implement your logic. If you do, you must first -check that it is a concrete value an not an unresolved token. If this -value is an unresolved token (Token.isUnresolved(stack.region) returns -true), this implies that the user wishes that this stack will synthesize -into a region-agnostic template. In this case, your code should either -fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or -implement some other region-agnostic behavior.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:251
  • +
    + +
    artifactId: string
    +

    The ID of the cloud assembly artifact for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:255
  • synthesizer: IStackSynthesizer
    @@ -246,128 +257,130 @@
    -
    - -
    tags: TagManager
    -

    Tags to be applied to the stack.

    +
    + +
    _versionReportingEnabled: boolean
    +

    Whether version reporting is enabled for this stack

    +

    Controls whether the CDK Metadata resource is injected

    -
    - -
    templateFile: string
    -

    The name of the CloudFormation template file emitted to the output -directory during synthesis.

    -

    Example value: MyStack.template.json

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:268
  • +
    + +
    _crossRegionReferences: boolean
    +

    Whether cross region references are enabled for this stack

    -
    - -
    templateOptions: ITemplateOptions
    -

    Options for CloudFormation template (like version, transform, description).

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:274
  • +
    + +
    node: Node
    +

    The tree node.

    -
    - -
    terminationProtection?: boolean
    -

    Whether termination protection is enabled for this stack.

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:265
  • +
    +

    Accessors

    +
    + +
      +
    • get permissionsBoundaryArn(): any
    • +
    • +

      If a permissions boundary has been applied on this scope or any parent scope +then this will return the ARN of the permissions boundary.

      +

      This will return the permissions boundary that has been applied to the most +specific scope.

      +

      For example:

      +

      const stage = new Stage(app, 'stage', { + permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), +});

      +

      const stack = new Stack(stage, 'Stack', { + permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), +});

      +

      Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

      +

      Returns any

      the name of the permissions boundary or undefined if not set

      +
    -
    -

    Accessors

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:333
  • +
    +
      -
    • get availabilityZones(): string[]
    • +
    • get dependencies(): Stack[]
    • -

      Returns the list of AZs that are available in the AWS environment -(account/region) associated with this stack.

      -

      If the stack is environment-agnostic (either account and/or region are -tokens), this property will return an array with 2 tokens that will resolve -at deploy-time to the first two availability zones returned from CloudFormation's -Fn::GetAZs intrinsic function.

      -

      If they are not available in the context, returns a set of dummy values and -reports them as missing, and let the CLI resolve them by calling EC2 -DescribeAvailabilityZones on the target environment.

      -

      To specify a different strategy for selecting availability zones override this method.

      +

      Return the stacks this stack depends on

      -

      Returns string[]

      +

      Returns Stack[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:393
  • +
    +
      -
    • get bundlingRequired(): boolean
    • +
    • get stackName(): string
    • -

      Indicates whether the stack requires bundling or not

      +

      The concrete CloudFormation physical stack name.

      +

      This is either the name defined explicitly in the stackName prop or +allocated based on the stack's location in the construct tree. Stacks that +are directly defined under the app use their construct id as their stack +name. Stacks that are defined deeper within the tree will use a hashed naming +scheme based on the construct path to ensure uniqueness.

      +

      If you wish to obtain the deploy-time AWS::StackName intrinsic, +you can use Aws.STACK_NAME directly.

      -

      Returns boolean

      +

      Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:406
  • +
    +
      -
    • get dependencies(): Stack[]
    • -
    • -

      Return the stacks this stack depends on

      -
      -

      Returns Stack[]

      -
    -
    - -
      -
    • get maxResources(): any
    • +
    • get partition(): string
    • -

      Maximum number of resources in the stack

      -

      Set to 0 to mean "unlimited".

      +

      The partition in which this stack is defined

      -

      Returns any

      +

      Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:410
  • +
    +
      -
    • get nested(): boolean
    • +
    • get urlSuffix(): string
    • -

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      +

      The Amazon domain suffix for the region in which this stack is defined

      -

      Returns boolean

      +

      Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:414
  • +
    +
      -
    • get nestedStackParent(): undefined | Stack
    • +
    • get stackId(): string
    • -

      If this is a nested stack, returns it's parent stack.

      +

      The ID of the stack

      -

      Returns undefined | Stack

      -
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:422
    • @@ -380,251 +393,325 @@

      Returns stringInherited from cdk.Stack.notificationArns

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:426

    -
    - +
    +
      -
    • get partition(): string
    • +
    • get nested(): boolean
    • -

      The partition in which this stack is defined

      +

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      -

      Returns string

      +

      Returns boolean

    -
    - -
      -
    • get permissionsBoundaryArn(): any
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:430
    +
    + +
      +
    • get availabilityZones(): string[]
    • -

      If a permissions boundary has been applied on this scope or any parent scope -then this will return the ARN of the permissions boundary.

      -

      This will return the permissions boundary that has been applied to the most -specific scope.

      -

      For example:

      -

      const stage = new Stage(app, 'stage', { - permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), -});

      -

      const stack = new Stack(stage, 'Stack', { - permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), -});

      -

      Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

      +

      Returns the list of AZs that are available in the AWS environment +(account/region) associated with this stack.

      +

      If the stack is environment-agnostic (either account and/or region are +tokens), this property will return an array with 2 tokens that will resolve +at deploy-time to the first two availability zones returned from CloudFormation's +Fn::GetAZs intrinsic function.

      +

      If they are not available in the context, returns a set of dummy values and +reports them as missing, and let the CLI resolve them by calling EC2 +DescribeAvailabilityZones on the target environment.

      +

      To specify a different strategy for selecting availability zones override this method.

      -

      Returns any

      the name of the permissions boundary or undefined if not set

      - +

      Returns string[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:475
  • +
    +
      -
    • get stackId(): string
    • +
    • get nestedStackParent(): undefined | Stack
    • -

      The ID of the stack

      +

      If this is a nested stack, returns it's parent stack.

      -

      Returns string

      -
      -

      Example

      // After resolving, looks like
      'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123' -
      -
    -
    - -
      -
    • get stackName(): string
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:479
    +
    + +
      +
    • get maxResources(): any
    • -

      The concrete CloudFormation physical stack name.

      -

      This is either the name defined explicitly in the stackName prop or -allocated based on the stack's location in the construct tree. Stacks that -are directly defined under the app use their construct id as their stack -name. Stacks that are defined deeper within the tree will use a hashed naming -scheme based on the construct path to ensure uniqueness.

      -

      If you wish to obtain the deploy-time AWS::StackName intrinsic, -you can use Aws.STACK_NAME directly.

      +

      Maximum number of resources in the stack

      +

      Set to 0 to mean "unlimited".

      -

      Returns string

      +

      Returns any

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:692
  • +
    +
      -
    • get urlSuffix(): string
    • +
    • get bundlingRequired(): boolean
    • -

      The Amazon domain suffix for the region in which this stack is defined

      +

      Indicates whether the stack requires bundling or not

      -

      Returns string

      +

      Returns boolean

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:735
  • Methods

    -
    - -
      - -
    • Internal -

      Called implicitly by the addDependency helper function in order to -realize a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
      + +
        + +
      • +

        Adds an EFS FileSystem to the VPC and SecurityGroup.

        Parameters

        • -
          target: Stack
        • +
          name: string
          +

          A name to differentiate the filesystem.

          +
          +
        • -
          Optional reason: StackDependencyReason
        -

        Returns void

        +
        vpc: IVpc
        +

        The VPC the Filesystem resides in.

        +
        +
      • +
      • +
        securityGroup: ISecurityGroup
        +

        A SecurityGroup to allow access to the filesystem from.

        +
        +
      +

      Returns string

      The filesystem location URL.

      +
    -
    - -
      - -
    • Internal -

      Called implicitly by the obtainDependencies helper function in order to -collect resource dependencies across two top-level stacks at the assembly level.

      -

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      -
      +
    • Defined in lib/embedded-linux-pipeline.ts:338
    +
    + +
    +
    + +
      + +
    • Parameters

      • -
        reasonFilter: StackDependencyReason
      -

      Returns Element[]

      -
    +

    Returns PolicyStatement

    -
    - +
  • Defined in lib/embedded-linux-pipeline.ts:370
  • +
    + +
    +
    + +
    +
    + +
    +
    +
      - -
    • Internal -

      Called implicitly by the removeDependency helper function in order to -remove a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
    • +
    • +

      Return whether the given object is a Stack.

      +

      We do attribute detection since we can't reliably use 'instanceof'.

      Parameters

      • -
        target: Stack
      • -
      • -
        Optional reasonFilter: StackDependencyReason
      -

      Returns void

      +
      x: any
    +

    Returns x is Stack

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:165
  • +
    +
      - -
    • Internal -

      Synthesizes the cloudformation template into a cloud assembly.

      +
    • +
    • +

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      Parameters

      • -
        session: ISynthesisSession
      • -
      • -
        Optional lookupRoleArn: string
      -

      Returns void

      +
      construct: IConstruct
      +

      The construct to start the search from.

      +
      +
    +

    Returns Stack

    -
    - -
      - -
    • Internal -

      Returns the CloudFormation template for this stack by traversing -the tree and invoking _toCloudFormation() on all Entity objects.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:170
    +
    + +
      + +
    • +

      Resolve a tokenized value in the context of the current stack.

      +
      +

      Parameters

      +
        +
      • +
        obj: any

      Returns any

    -
    - -
      - -
    • Internal -

      Validate stack name

      -

      CloudFormation stack names can include dashes in addition to the regular identifier -character classes, and we don't allow one of the magic markers.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:342
    +
    + +
      + +
    • +

      Convert an object, potentially containing tokens, to a JSON string

      Parameters

      • -
        name: string
      -

      Returns void

      +
      obj: any
    • +
    • +
      Optional space: number
    +

    Returns string

    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:346
    +
    + +
      +
    • -

      Returns PolicyStatement

    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:350
    +
    + +
      +
    • +

      Indicate that a context key was expected

      +

      Contains instructions which will be emitted into the cloud assembly on how +the key should be supplied.

      +

      Parameters

      • -
        region: string
      -

      Returns PolicyStatement

    +

    Returns void

    +
    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:359
    +
    + +
      +
    • +

      Rename a generated logical identities

      +

      To modify the naming scheme strategy, extend the Stack class and +override the allocateLogicalId method.

      +

      Parameters

      • -
        region: string
      -

      Returns PolicyStatement

    • +
    • +
      newId: string
    +

    Returns void

    +
    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:366
    +
    + +
      +
    • +

      Allocates a stack-unique CloudFormation-compatible logical identity for a +specific resource.

      +

      This method is called when a CfnElement is created and used to render the +initial logical identity of resources. Logical ID renames are applied at +this stage.

      +

      This method uses the protected method allocateLogicalId to render the +logical ID for an element. To modify the naming scheme, extend the Stack +class and override this method.

      +

      Parameters

      • -
        artifactBucketArn: string
      -

      Returns PolicyStatement

    +

    Returns string

    +
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:382
    • @@ -646,58 +733,61 @@

      Returns voidInherited from cdk.Stack.addDependency

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:389

    -
    - -
      - +
      + +
        +
      • -

        Adds an EFS FileSystem to the VPC and SecurityGroup.

        +

        Creates an ARN from components.

        +

        If partition, region or account are not specified, the stack's +partition, region and account will be used.

        +

        If any component is the empty string, an empty string will be inserted +into the generated ARN at the location that component corresponds to.

        +

        The ARN will be formatted as follows:

        +

        arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

        +

        The required ARN pieces that are omitted will be taken from the stack that +the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope +can be 'undefined'.

        Parameters

        • -
          name: string
          -

          A name to differentiate the filesystem.

          -
          -
        • -
        • -
          vpc: IVpc
          -

          The VPC the Filesystem resides in.

          -
          -
        • -
        • -
          securityGroup: ISecurityGroup
          -

          A SecurityGroup to allow access to the filesystem from.

          -
          -
        -

        Returns string

        The filesystem location URL.

        - +
        components: ArnComponents
      +

      Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:448
  • +
    +
      - +
    • -

      Adds an arbitary key-value pair, with information you want to record about the stack. -These get translated to the Metadata section of the generated template.

      +

      Splits the provided ARN into its components. +Works both if 'arn' is a string like 'arn:aws:s3:::bucket', +and a Token representing a dynamic CloudFormation expression +(in which case the returned components will also be dynamic CloudFormation expressions, +encoded as Tokens).

      Parameters

      • -
        key: string
      • +
        arn: string
        +

        the ARN to split into its components

        +
        +
      • -
        value: any
      -

      Returns void

      -
    +

    Returns ArnComponents

    +
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:459
  • -
    - -
    -
    - -
      - -
    • -

      Returns the naming scheme used to allocate logical IDs. By default, uses -the HashedAddressingScheme but this method can be overridden to customize -this behavior.

      -

      In order to make sure logical IDs are unique and stable, we hash the resource -construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as -a suffix to the path components joined without a separator (CloudFormation -IDs only allow alphanumeric characters).

      -

      The result will be:

      -

      <path.join('')><md5(path.join('/')> - "human" "hash"

      -

      If the "human" part of the ID exceeds 240 characters, we simply trim it so -the total ID doesn't exceed CloudFormation's 255 character limit.

      -

      We only take 8 characters from the md5 hash (0.000005 chance of collision).

      -

      Special cases:

      -
        -
      • If the path only contains a single component (i.e. it's a top-level -resource), we won't add the hash to it. The hash is not needed for -disambiguation and also, it allows for a more straightforward migration an -existing CloudFormation template to a CDK stack without logical ID changes -(or renames).
      • -
      • For aesthetic reasons, if the last components of the path are the same -(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the -resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> -instead of L1L2PipelinePipeline<HASH>
      • -
      • If a component is named "Default" it will be omitted from the path. This -allows refactoring higher level abstractions around constructs without affecting -the IDs of already deployed resources.
      • -
      • If a component is named "Resource" it will be omitted from the user-visible -path, but included in the hash. This reduces visual noise in the human readable -part of the identifier.
      • -
      -
      -
      -

      Parameters

      -
        -
      • -
        cfnElement: CfnElement
        -

        The element for which the logical ID is allocated.

        -
        -
      -

      Returns string

      -
    -
    - +
    +
      - -
    • -

      Create a CloudFormation Export for a string list value

      -

      Returns a string list representing the corresponding Fn.importValue() -expression for this Export. The export expression is automatically wrapped with an -Fn::Join and the import value with an Fn::Split, since CloudFormation can only -export strings. You can control the name for the export by passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      See exportValue for an example of this process.

      +
    • +
    • +

      Adds an arbitary key-value pair, with information you want to record about the stack. +These get translated to the Metadata section of the generated template.

      Parameters

      • -
        exportedValue: any
      • +
        key: string
      • -
        Optional options: ExportValueOptions
      -

      Returns string[]

      -
    +

    Returns void

    +
    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:501
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string value

      -

      Returns a string representing the corresponding Fn.importValue() -expression for this Export. You can control the name for the export by -passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      Example

      Here is how the process works. Let's say there are two stacks, -producerStack and consumerStack, and producerStack has a bucket -called bucket, which is referenced by consumerStack (perhaps because -an AWS Lambda Function writes into it, or something like that).

      -

      It is not safe to remove producerStack.bucket because as the bucket is being -deleted, consumerStack might still be using it.

      -

      Instead, the process takes two deployments:

      -

      Deployment 1: break the relationship

        -
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer -stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just -remove the Lambda Function altogether).
      • -
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This -will make sure the CloudFormation Export continues to exist while the relationship -between the two stacks is being broken.
      • -
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • -
      -

      Deployment 2: remove the bucket resource

        -
      • You are now free to remove the bucket resource from producerStack.
      • -
      • Don't forget to remove the exportValue() call as well.
      • -
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • -
      +
    • +
    • Internal +

      Called implicitly by the addDependency helper function in order to +realize a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        exportedValue: any
      • +
        target: Stack
      • -
        Optional options: ExportValueOptions
      -

      Returns string

      +
      Optional reason: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:511
  • +
    +
      - -
    • -

      Creates an ARN from components.

      -

      If partition, region or account are not specified, the stack's -partition, region and account will be used.

      -

      If any component is the empty string, an empty string will be inserted -into the generated ARN at the location that component corresponds to.

      -

      The ARN will be formatted as follows:

      -

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      -

      The required ARN pieces that are omitted will be taken from the stack that -the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope -can be 'undefined'.

      +
    • +
    • Internal +

      Called implicitly by the obtainDependencies helper function in order to +collect resource dependencies across two top-level stacks at the assembly level.

      +

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      Parameters

      • -
        components: ArnComponents
      -

      Returns string

      +
      reasonFilter: StackDependencyReason
    +

    Returns Element[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:520
  • +
    +
      - -
    • -

      Allocates a stack-unique CloudFormation-compatible logical identity for a -specific resource.

      -

      This method is called when a CfnElement is created and used to render the -initial logical identity of resources. Logical ID renames are applied at -this stage.

      -

      This method uses the protected method allocateLogicalId to render the -logical ID for an element. To modify the naming scheme, extend the Stack -class and override this method.

      +
    • +
    • Internal +

      Called implicitly by the removeDependency helper function in order to +remove a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        element: CfnElement
        -

        The CloudFormation element for which a logical identity is -needed.

        +
        target: Stack
      • +
      • +
        Optional reasonFilter: StackDependencyReason
      +

      Returns void

      +
    +
    + +
      + +
    • Internal +

      Synthesizes the cloudformation template into a cloud assembly.

      -
    -

    Returns string

    +
    +

    Parameters

    +
      +
    • +
      session: ISynthesisSession
    • +
    • +
      Optional lookupRoleArn: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:535
    • @@ -953,143 +950,173 @@

      Returns stringInherited from cdk.Stack.regionalFact

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:555

    -
    - -
      - -
    • -

      Rename a generated logical identities

      -

      To modify the naming scheme strategy, extend the Stack class and -override the allocateLogicalId method.

      -
      -
      -

      Parameters

      -
        -
      • -
        oldId: string
      • -
      • -
        newId: string
      -

      Returns void

      -
    -
    - +
    +
      - +
    • -

      Indicate that a context key was expected

      -

      Contains instructions which will be emitted into the cloud assembly on how -the key should be supplied.

      +

      Create a CloudFormation Export for a string value

      +

      Returns a string representing the corresponding Fn.importValue() +expression for this Export. You can control the name for the export by +passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      Example

      Here is how the process works. Let's say there are two stacks, +producerStack and consumerStack, and producerStack has a bucket +called bucket, which is referenced by consumerStack (perhaps because +an AWS Lambda Function writes into it, or something like that).

      +

      It is not safe to remove producerStack.bucket because as the bucket is being +deleted, consumerStack might still be using it.

      +

      Instead, the process takes two deployments:

      +

      Deployment 1: break the relationship

        +
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer +stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just +remove the Lambda Function altogether).
      • +
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This +will make sure the CloudFormation Export continues to exist while the relationship +between the two stacks is being broken.
      • +
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • +
      +

      Deployment 2: remove the bucket resource

        +
      • You are now free to remove the bucket resource from producerStack.
      • +
      • Don't forget to remove the exportValue() call as well.
      • +
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • +

      Parameters

      • -
        report: MissingContext
        -

        The set of parameters needed to obtain the context

        -
        -
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Resolve a tokenized value in the context of the current stack.

      -
      -
      -

      Parameters

      -
        +
        exportedValue: any
      • -
        obj: any
      -

      Returns any

      +
      Optional options: ExportValueOptions
    +

    Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:602
  • +
    +
      - +
    • -

      Splits the provided ARN into its components. -Works both if 'arn' is a string like 'arn:aws:s3:::bucket', -and a Token representing a dynamic CloudFormation expression -(in which case the returned components will also be dynamic CloudFormation expressions, -encoded as Tokens).

      +

      Create a CloudFormation Export for a string list value

      +

      Returns a string list representing the corresponding Fn.importValue() +expression for this Export. The export expression is automatically wrapped with an +Fn::Join and the import value with an Fn::Split, since CloudFormation can only +export strings. You can control the name for the export by passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      See exportValue for an example of this process.

      Parameters

      • -
        arn: string
        -

        the ARN to split into its components

        -
        -
      • +
        exportedValue: any
      • -
        arnFormat: ArnFormat
        -

        the expected format of 'arn' - depends on what format the service 'arn' represents uses

        -
        -
      -

      Returns ArnComponents

      +
      Optional options: ExportValueOptions
    +

    Returns string[]

    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:624
    +
    + +
      +
    • -

      Convert an object, potentially containing tokens, to a JSON string

      +

      Returns the naming scheme used to allocate logical IDs. By default, uses +the HashedAddressingScheme but this method can be overridden to customize +this behavior.

      +

      In order to make sure logical IDs are unique and stable, we hash the resource +construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as +a suffix to the path components joined without a separator (CloudFormation +IDs only allow alphanumeric characters).

      +

      The result will be:

      +

      <path.join('')><md5(path.join('/')> + "human" "hash"

      +

      If the "human" part of the ID exceeds 240 characters, we simply trim it so +the total ID doesn't exceed CloudFormation's 255 character limit.

      +

      We only take 8 characters from the md5 hash (0.000005 chance of collision).

      +

      Special cases:

      +
        +
      • If the path only contains a single component (i.e. it's a top-level +resource), we won't add the hash to it. The hash is not needed for +disambiguation and also, it allows for a more straightforward migration an +existing CloudFormation template to a CDK stack without logical ID changes +(or renames).
      • +
      • For aesthetic reasons, if the last components of the path are the same +(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the +resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> +instead of L1L2PipelinePipeline<HASH>
      • +
      • If a component is named "Default" it will be omitted from the path. This +allows refactoring higher level abstractions around constructs without affecting +the IDs of already deployed resources.
      • +
      • If a component is named "Resource" it will be omitted from the user-visible +path, but included in the hash. This reduces visual noise in the human readable +part of the identifier.
      • +

      Parameters

      • -
        obj: any
      • -
      • -
        Optional space: number
      -

      Returns string

      -
    -
    - -
      - -
    • -

      Returns a string representation of this construct.

      +
      cfnElement: CfnElement
      +

      The element for which the logical ID is allocated.

      +

    Returns string

    -
    - -
      - -
    • -

      Convert an object, potentially containing tokens, to a YAML string

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:665
    +
    + +
      + +
    • Internal +

      Validate stack name

      +

      CloudFormation stack names can include dashes in addition to the regular identifier +character classes, and we don't allow one of the magic markers.

      Parameters

      • -
        obj: any
      -

      Returns string

      +
      name: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:674
  • +
    + +
      + +
    • Internal +

      Returns the CloudFormation template for this stack by traversing +the tree and invoking _toCloudFormation() on all Entity objects.

      +
      +

      Returns any

      +
      @@ -1123,44 +1150,18 @@

      Returns x<

      Inherited from cdk.Stack.isConstruct

      • Defined in node_modules/constructs/lib/construct.d.ts:261

    -
    - -
      - -
    • -

      Return whether the given object is a Stack.

      -

      We do attribute detection since we can't reliably use 'instanceof'.

      -
      -
      -

      Parameters

      -
        -
      • -
        x: any
      -

      Returns x is Stack

      -
    -
    - +
    +
      - +
    • -

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      -
      -
      -

      Parameters

      -
        -
      • -
        construct: IConstruct
        -

        The construct to start the search from.

        +

        Returns a string representation of this construct.

        -
      -

      Returns Stack

      +

      Returns string

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:278
  • +
  • toString
  • +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/classes/PipelineNetworkStack.html b/classes/PipelineNetworkStack.html index 0df86a3..5a0f080 100644 --- a/classes/PipelineNetworkStack.html +++ b/classes/PipelineNetworkStack.html @@ -12,11 +12,13 @@

    The network resources to run the pipeline in.

    +

    This stack is provided for when users do not have an existing VPC with +private and public subnets for the pipeline.

    @@ -26,7 +28,7 @@

    Hierarchy

    • PipelineNetworkStack
    +
  • Defined in lib/network.ts:12
  • @@ -38,63 +40,63 @@

    Constructors

    Properties

    -

    Accessors

    -

    Methods

    -

    Constructors

    @@ -113,28 +115,60 @@
    Optional Returns PipelineNetworkStack
    +
  • Defined in lib/network.ts:16
  • Properties

    -
    - -
    _crossRegionReferences: boolean
    -

    Whether cross region references are enabled for this stack

    +
    + +
    vpc: IVpc
    +

    The VPC for the pipeline to reside in.

    -
    - -
    _versionReportingEnabled: boolean
    -

    Whether version reporting is enabled for this stack

    -

    Controls whether the CDK Metadata resource is injected

    +
  • Defined in lib/network.ts:14
  • +
    + +
    tags: TagManager
    +

    Tags to be applied to the stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:174
  • +
    + +
    templateOptions: ITemplateOptions
    +

    Options for CloudFormation template (like version, transform, description).

    +
    +
    +
    + +
    region: string
    +

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    +

    This value is resolved according to the following rules:

    +
      +
    1. The value provided to env.region when the stack is defined. This can +either be a concrete region (e.g. us-west-2) or the Aws.REGION +token.
    2. +
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference +{ "Ref": "AWS::Region" } encoded as a string token.
    4. +
    +

    Preferably, you should use the return value as an opaque string and not +attempt to parse it to implement your logic. If you do, you must first +check that it is a concrete value an not an unresolved token. If this +value is an unresolved token (Token.isUnresolved(stack.region) returns +true), this implies that the user wishes that this stack will synthesize +into a region-agnostic template. In this case, your code should either +fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or +implement some other region-agnostic behavior.

    +
    +
    account: string
    @@ -160,15 +194,6 @@
    -
    - -
    artifactId: string
    -

    The ID of the cloud assembly artifact for this stack.

    -
    -
    environment: string
    @@ -186,6 +211,15 @@
    +
    + +
    terminationProtection?: boolean
    +

    Whether termination protection is enabled for this stack.

    +
    +
    nestedStackResource?: CfnResource
    @@ -196,40 +230,26 @@
    -
    - -
    node: Node
    -

    The tree node.

    +
    + +
    templateFile: string
    +

    The name of the CloudFormation template file emitted to the output +directory during synthesis.

    +

    Example value: MyStack.template.json

    -
    - -
    region: string
    -

    The AWS region into which this stack will be deployed (e.g. us-west-2).

    -

    This value is resolved according to the following rules:

    -
      -
    1. The value provided to env.region when the stack is defined. This can -either be a concrete region (e.g. us-west-2) or the Aws.REGION -token.
    2. -
    3. Aws.REGION, which is represents the CloudFormation intrinsic reference -{ "Ref": "AWS::Region" } encoded as a string token.
    4. -
    -

    Preferably, you should use the return value as an opaque string and not -attempt to parse it to implement your logic. If you do, you must first -check that it is a concrete value an not an unresolved token. If this -value is an unresolved token (Token.isUnresolved(stack.region) returns -true), this implies that the user wishes that this stack will synthesize -into a region-agnostic template. In this case, your code should either -fail (throw an error, emit a synth error using Annotations.of(construct).addError()) or -implement some other region-agnostic behavior.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:251
  • +
    + +
    artifactId: string
    +

    The ID of the cloud assembly artifact for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:255
  • synthesizer: IStackSynthesizer
    @@ -239,87 +259,60 @@
    -
    - -
    tags: TagManager
    -

    Tags to be applied to the stack.

    -
    -
    -
    - -
    templateFile: string
    -

    The name of the CloudFormation template file emitted to the output -directory during synthesis.

    -

    Example value: MyStack.template.json

    -
    -
    -
    - -
    templateOptions: ITemplateOptions
    -

    Options for CloudFormation template (like version, transform, description).

    +
    + +
    _versionReportingEnabled: boolean
    +

    Whether version reporting is enabled for this stack

    +

    Controls whether the CDK Metadata resource is injected

    -
    - -
    terminationProtection?: boolean
    -

    Whether termination protection is enabled for this stack.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:268
  • +
    + +
    _crossRegionReferences: boolean
    +

    Whether cross region references are enabled for this stack

    -
    - -
    vpc: IVpc
    -

    The VPC for the pipeline to reside in.

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:274
  • +
    + +
    node: Node
    +

    The tree node.

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:265
  • Accessors

    -
    - -
      -
    • get availabilityZones(): string[]
    • +
      + +
        +
      • get permissionsBoundaryArn(): any
      • -

        Returns the list of AZs that are available in the AWS environment -(account/region) associated with this stack.

        -

        If the stack is environment-agnostic (either account and/or region are -tokens), this property will return an array with 2 tokens that will resolve -at deploy-time to the first two availability zones returned from CloudFormation's -Fn::GetAZs intrinsic function.

        -

        If they are not available in the context, returns a set of dummy values and -reports them as missing, and let the CLI resolve them by calling EC2 -DescribeAvailabilityZones on the target environment.

        -

        To specify a different strategy for selecting availability zones override this method.

        -
        -

        Returns string[]

        -
      -
      - -
        -
      • get bundlingRequired(): boolean
      • -
      • -

        Indicates whether the stack requires bundling or not

        +

        If a permissions boundary has been applied on this scope or any parent scope +then this will return the ARN of the permissions boundary.

        +

        This will return the permissions boundary that has been applied to the most +specific scope.

        +

        For example:

        +

        const stage = new Stage(app, 'stage', { + permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), +});

        +

        const stack = new Stack(stage, 'Stack', { + permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), +});

        +

        Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

        -

        Returns boolean

        +

        Returns any

        the name of the permissions boundary or undefined if not set

        +
      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:333
      @@ -332,43 +325,64 @@

      Returns StackInherited from cdk.Stack.dependencies

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:393

    -
    - -
      -
    • get maxResources(): any
    • +
      + +
        +
      • get stackName(): string
      • -

        Maximum number of resources in the stack

        -

        Set to 0 to mean "unlimited".

        +

        The concrete CloudFormation physical stack name.

        +

        This is either the name defined explicitly in the stackName prop or +allocated based on the stack's location in the construct tree. Stacks that +are directly defined under the app use their construct id as their stack +name. Stacks that are defined deeper within the tree will use a hashed naming +scheme based on the construct path to ensure uniqueness.

        +

        If you wish to obtain the deploy-time AWS::StackName intrinsic, +you can use Aws.STACK_NAME directly.

        -

        Returns any

        +

        Returns string

      -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:406
    +
    +
      -
    • get nested(): boolean
    • +
    • get partition(): string
    • -

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      +

      The partition in which this stack is defined

      -

      Returns boolean

      +

      Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:410
  • +
    +
      -
    • get nestedStackParent(): undefined | Stack
    • +
    • get urlSuffix(): string
    • -

      If this is a nested stack, returns it's parent stack.

      +

      The Amazon domain suffix for the region in which this stack is defined

      -

      Returns undefined | Stack

      +

      Returns string

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:414
  • +
    + +
      +
    • get stackId(): string
    • +
    • +

      The ID of the stack

      +
      +

      Returns string

      +
      +

      Example

      // After resolving, looks like
      'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123' +
      +
      @@ -381,204 +395,240 @@

      Returns stringInherited from cdk.Stack.notificationArns

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:426

    -
    - +
    +
      -
    • get partition(): string
    • +
    • get nested(): boolean
    • -

      The partition in which this stack is defined

      +

      Indicates if this is a nested stack, in which case parentStack will include a reference to it's parent.

      -

      Returns string

      +

      Returns boolean

    -
    - -
      -
    • get permissionsBoundaryArn(): any
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:430
    +
    + +
      +
    • get availabilityZones(): string[]
    • -

      If a permissions boundary has been applied on this scope or any parent scope -then this will return the ARN of the permissions boundary.

      -

      This will return the permissions boundary that has been applied to the most -specific scope.

      -

      For example:

      -

      const stage = new Stage(app, 'stage', { - permissionsBoundary: PermissionsBoundary.fromName('stage-pb'), -});

      -

      const stack = new Stack(stage, 'Stack', { - permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'), -});

      -

      Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';

      +

      Returns the list of AZs that are available in the AWS environment +(account/region) associated with this stack.

      +

      If the stack is environment-agnostic (either account and/or region are +tokens), this property will return an array with 2 tokens that will resolve +at deploy-time to the first two availability zones returned from CloudFormation's +Fn::GetAZs intrinsic function.

      +

      If they are not available in the context, returns a set of dummy values and +reports them as missing, and let the CLI resolve them by calling EC2 +DescribeAvailabilityZones on the target environment.

      +

      To specify a different strategy for selecting availability zones override this method.

      -

      Returns any

      the name of the permissions boundary or undefined if not set

      - +

      Returns string[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:475
  • +
    +
      -
    • get stackId(): string
    • +
    • get nestedStackParent(): undefined | Stack
    • -

      The ID of the stack

      +

      If this is a nested stack, returns it's parent stack.

      -

      Returns string

      -
      -

      Example

      // After resolving, looks like
      'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123' -
      -
    -
    - -
      -
    • get stackName(): string
    • +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:479
    +
    + +
      +
    • get maxResources(): any
    • -

      The concrete CloudFormation physical stack name.

      -

      This is either the name defined explicitly in the stackName prop or -allocated based on the stack's location in the construct tree. Stacks that -are directly defined under the app use their construct id as their stack -name. Stacks that are defined deeper within the tree will use a hashed naming -scheme based on the construct path to ensure uniqueness.

      -

      If you wish to obtain the deploy-time AWS::StackName intrinsic, -you can use Aws.STACK_NAME directly.

      +

      Maximum number of resources in the stack

      +

      Set to 0 to mean "unlimited".

      -

      Returns string

      +

      Returns any

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:692
  • +
    +
      -
    • get urlSuffix(): string
    • +
    • get bundlingRequired(): boolean
    • -

      The Amazon domain suffix for the region in which this stack is defined

      +

      Indicates whether the stack requires bundling or not

      -

      Returns string

      +

      Returns boolean

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:735
  • Methods

    -
    - +
    +
      - -
    • Internal -

      Called implicitly by the addDependency helper function in order to -realize a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      +
    • +
    • +

      Return whether the given object is a Stack.

      +

      We do attribute detection since we can't reliably use 'instanceof'.

      Parameters

      • -
        target: Stack
      • -
      • -
        Optional reason: StackDependencyReason
      -

      Returns void

      +
      x: any
    +

    Returns x is Stack

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:165
  • +
    +
      - -
    • Internal -

      Called implicitly by the obtainDependencies helper function in order to -collect resource dependencies across two top-level stacks at the assembly level.

      -

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      +
    • +
    • +

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      Parameters

      • -
        reasonFilter: StackDependencyReason
      -

      Returns Element[]

      +
      construct: IConstruct
      +

      The construct to start the search from.

      +
      +
    +

    Returns Stack

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:170
  • +
    +
      - -
    • Internal -

      Called implicitly by the removeDependency helper function in order to -remove a dependency between two top-level stacks at the assembly level.

      -

      Use stack.addDependency to define the dependency between any two stacks, -and take into account nested stack relationships.

      -
      -
      +
    • +
    • +

      Resolve a tokenized value in the context of the current stack.

      +
      +

      Parameters

      • -
        target: Stack
      • +
        obj: any
      +

      Returns any

      +
    +
    + +
      + +
    • +

      Convert an object, potentially containing tokens, to a JSON string

      +
      +
      +

      Parameters

      +
      • -
        Optional reasonFilter: StackDependencyReason
      -

      Returns void

      +
      obj: any
    • +
    • +
      Optional space: number
    +

    Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:346
  • +
    +
      - -
    • Internal -

      Synthesizes the cloudformation template into a cloud assembly.

      +
    • +
    • +

      Convert an object, potentially containing tokens, to a YAML string

      Parameters

      • -
        session: ISynthesisSession
      • +
        obj: any
      +

      Returns string

      +
    +
    + +
      + +
    • +

      Indicate that a context key was expected

      +

      Contains instructions which will be emitted into the cloud assembly on how +the key should be supplied.

      +
      +
      +

      Parameters

      +
      • -
        Optional lookupRoleArn: string
      +
      report: MissingContext
      +

      The set of parameters needed to obtain the context

      +
      +

    Returns void

    -
    - -
      - -
    • Internal -

      Returns the CloudFormation template for this stack by traversing -the tree and invoking _toCloudFormation() on all Entity objects.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:359
    +
    + +
      + +
    • +

      Rename a generated logical identities

      +

      To modify the naming scheme strategy, extend the Stack class and +override the allocateLogicalId method.

      -

      Returns any

      +
      +

      Parameters

      +
        +
      • +
        oldId: string
      • +
      • +
        newId: string
      +

      Returns void

    -
    - -
      - -
    • Internal -

      Validate stack name

      -

      CloudFormation stack names can include dashes in addition to the regular identifier -character classes, and we don't allow one of the magic markers.

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:366
    +
    + +
      + +
    • +

      Allocates a stack-unique CloudFormation-compatible logical identity for a +specific resource.

      +

      This method is called when a CfnElement is created and used to render the +initial logical identity of resources. Logical ID renames are applied at +this stage.

      +

      This method uses the protected method allocateLogicalId to render the +logical ID for an element. To modify the naming scheme, extend the Stack +class and override this method.

      Parameters

      • -
        name: string
      -

      Returns void

      +
      element: CfnElement
      +

      The CloudFormation element for which a logical identity is +needed.

      +
      +
    +

    Returns string

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:382
    • @@ -600,28 +650,61 @@

      Returns voidInherited from cdk.Stack.addDependency

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:389

    -
    - +
    +
      - +
    • -

      Adds an arbitary key-value pair, with information you want to record about the stack. -These get translated to the Metadata section of the generated template.

      +

      Creates an ARN from components.

      +

      If partition, region or account are not specified, the stack's +partition, region and account will be used.

      +

      If any component is the empty string, an empty string will be inserted +into the generated ARN at the location that component corresponds to.

      +

      The ARN will be formatted as follows:

      +

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      +

      The required ARN pieces that are omitted will be taken from the stack that +the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope +can be 'undefined'.

      Parameters

      • -
        key: string
      • +
        components: ArnComponents
      +

      Returns string

      +
    +
    + +
      + +
    • +

      Splits the provided ARN into its components. +Works both if 'arn' is a string like 'arn:aws:s3:::bucket', +and a Token representing a dynamic CloudFormation expression +(in which case the returned components will also be dynamic CloudFormation expressions, +encoded as Tokens).

      +
      +
      +

      Parameters

      +
      • -
        value: any
      -

      Returns void

      -
    • +
    • +
      arnFormat: ArnFormat
      +

      the expected format of 'arn' - depends on what format the service 'arn' represents uses

      +
      +
    +

    Returns ArnComponents

    +
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:459
  • -
    - -
      - +
      + +
        +
      • -

        Returns the naming scheme used to allocate logical IDs. By default, uses -the HashedAddressingScheme but this method can be overridden to customize -this behavior.

        -

        In order to make sure logical IDs are unique and stable, we hash the resource -construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as -a suffix to the path components joined without a separator (CloudFormation -IDs only allow alphanumeric characters).

        -

        The result will be:

        -

        <path.join('')><md5(path.join('/')> - "human" "hash"

        -

        If the "human" part of the ID exceeds 240 characters, we simply trim it so -the total ID doesn't exceed CloudFormation's 255 character limit.

        -

        We only take 8 characters from the md5 hash (0.000005 chance of collision).

        -

        Special cases:

        -
          -
        • If the path only contains a single component (i.e. it's a top-level -resource), we won't add the hash to it. The hash is not needed for -disambiguation and also, it allows for a more straightforward migration an -existing CloudFormation template to a CDK stack without logical ID changes -(or renames).
        • -
        • For aesthetic reasons, if the last components of the path are the same -(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the -resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> -instead of L1L2PipelinePipeline<HASH>
        • -
        • If a component is named "Default" it will be omitted from the path. This -allows refactoring higher level abstractions around constructs without affecting -the IDs of already deployed resources.
        • -
        • If a component is named "Resource" it will be omitted from the user-visible -path, but included in the hash. This reduces visual noise in the human readable -part of the identifier.
        • -
        +

        Adds an arbitary key-value pair, with information you want to record about the stack. +These get translated to the Metadata section of the generated template.

        Parameters

        • -
          cfnElement: CfnElement
          -

          The element for which the logical ID is allocated.

          -
          -
        -

        Returns string

        -
      • +
      • +
        value: any
      +

      Returns void

      +
    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:501
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string list value

      -

      Returns a string list representing the corresponding Fn.importValue() -expression for this Export. The export expression is automatically wrapped with an -Fn::Join and the import value with an Fn::Split, since CloudFormation can only -export strings. You can control the name for the export by passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      See exportValue for an example of this process.

      +
    • +
    • Internal +

      Called implicitly by the addDependency helper function in order to +realize a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        exportedValue: any
      • +
        target: Stack
      • -
        Optional options: ExportValueOptions
      -

      Returns string[]

      +
      Optional reason: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:511
  • +
    +
      - -
    • -

      Create a CloudFormation Export for a string value

      -

      Returns a string representing the corresponding Fn.importValue() -expression for this Export. You can control the name for the export by -passing the name option.

      -

      If you don't supply a value for name, the value you're exporting must be -a Resource attribute (for example: bucket.bucketName) and it will be -given the same name as the automatic cross-stack reference that would be created -if you used the attribute in another Stack.

      -

      One of the uses for this method is to remove the relationship between -two Stacks established by automatic cross-stack references. It will -temporarily ensure that the CloudFormation Export still exists while you -remove the reference from the consuming stack. After that, you can remove -the resource and the manual export.

      -

      Example

      Here is how the process works. Let's say there are two stacks, -producerStack and consumerStack, and producerStack has a bucket -called bucket, which is referenced by consumerStack (perhaps because -an AWS Lambda Function writes into it, or something like that).

      -

      It is not safe to remove producerStack.bucket because as the bucket is being -deleted, consumerStack might still be using it.

      -

      Instead, the process takes two deployments:

      -

      Deployment 1: break the relationship

        -
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer -stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just -remove the Lambda Function altogether).
      • -
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This -will make sure the CloudFormation Export continues to exist while the relationship -between the two stacks is being broken.
      • -
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • -
      -

      Deployment 2: remove the bucket resource

        -
      • You are now free to remove the bucket resource from producerStack.
      • -
      • Don't forget to remove the exportValue() call as well.
      • -
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • -
      +
    • +
    • Internal +

      Called implicitly by the obtainDependencies helper function in order to +collect resource dependencies across two top-level stacks at the assembly level.

      +

      Use stack.obtainDependencies to see the dependencies between any two stacks.

      Parameters

      • -
        exportedValue: any
      • -
      • -
        Optional options: ExportValueOptions
      -

      Returns string

      +
      reasonFilter: StackDependencyReason
    +

    Returns Element[]

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:520
  • +
    +
      - -
    • -

      Creates an ARN from components.

      -

      If partition, region or account are not specified, the stack's -partition, region and account will be used.

      -

      If any component is the empty string, an empty string will be inserted -into the generated ARN at the location that component corresponds to.

      -

      The ARN will be formatted as follows:

      -

      arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}

      -

      The required ARN pieces that are omitted will be taken from the stack that -the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope -can be 'undefined'.

      +
    • +
    • Internal +

      Called implicitly by the removeDependency helper function in order to +remove a dependency between two top-level stacks at the assembly level.

      +

      Use stack.addDependency to define the dependency between any two stacks, +and take into account nested stack relationships.

      Parameters

      • -
        components: ArnComponents
      -

      Returns string

      +
      target: Stack
    • +
    • +
      Optional reasonFilter: StackDependencyReason
    +

    Returns void

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:530
  • +
    +
      - -
    • -

      Allocates a stack-unique CloudFormation-compatible logical identity for a -specific resource.

      -

      This method is called when a CfnElement is created and used to render the -initial logical identity of resources. Logical ID renames are applied at -this stage.

      -

      This method uses the protected method allocateLogicalId to render the -logical ID for an element. To modify the naming scheme, extend the Stack -class and override this method.

      +
    • +
    • Internal +

      Synthesizes the cloudformation template into a cloud assembly.

      Parameters

      • -
        element: CfnElement
        -

        The CloudFormation element for which a logical identity is -needed.

        -
        -
      -

      Returns string

      +
      session: ISynthesisSession
    • +
    • +
      Optional lookupRoleArn: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:535
    • @@ -869,143 +867,173 @@

      Returns stringInherited from cdk.Stack.regionalFact

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:555

    -
    - -
      - -
    • -

      Rename a generated logical identities

      -

      To modify the naming scheme strategy, extend the Stack class and -override the allocateLogicalId method.

      -
      -
      -

      Parameters

      -
        -
      • -
        oldId: string
      • -
      • -
        newId: string
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Indicate that a context key was expected

      -

      Contains instructions which will be emitted into the cloud assembly on how -the key should be supplied.

      -
      -
      -

      Parameters

      -
        -
      • -
        report: MissingContext
        -

        The set of parameters needed to obtain the context

        -
        -
      -

      Returns void

      -
    -
    - -
      - -
    • -

      Resolve a tokenized value in the context of the current stack.

      -
      -
      -

      Parameters

      -
        -
      • -
        obj: any
      -

      Returns any

      -
    -
    - +
    +
      - +
    • -

      Splits the provided ARN into its components. -Works both if 'arn' is a string like 'arn:aws:s3:::bucket', -and a Token representing a dynamic CloudFormation expression -(in which case the returned components will also be dynamic CloudFormation expressions, -encoded as Tokens).

      +

      Create a CloudFormation Export for a string value

      +

      Returns a string representing the corresponding Fn.importValue() +expression for this Export. You can control the name for the export by +passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      Example

      Here is how the process works. Let's say there are two stacks, +producerStack and consumerStack, and producerStack has a bucket +called bucket, which is referenced by consumerStack (perhaps because +an AWS Lambda Function writes into it, or something like that).

      +

      It is not safe to remove producerStack.bucket because as the bucket is being +deleted, consumerStack might still be using it.

      +

      Instead, the process takes two deployments:

      +

      Deployment 1: break the relationship

        +
      • Make sure consumerStack no longer references bucket.bucketName (maybe the consumer +stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just +remove the Lambda Function altogether).
      • +
      • In the ProducerStack class, call this.exportValue(this.bucket.bucketName). This +will make sure the CloudFormation Export continues to exist while the relationship +between the two stacks is being broken.
      • +
      • Deploy (this will effectively only change the consumerStack, but it's safe to deploy both).
      • +
      +

      Deployment 2: remove the bucket resource

        +
      • You are now free to remove the bucket resource from producerStack.
      • +
      • Don't forget to remove the exportValue() call as well.
      • +
      • Deploy again (this time only the producerStack will be changed -- the bucket will be deleted).
      • +

      Parameters

      • -
        arn: string
        -

        the ARN to split into its components

        -
        -
      • +
        exportedValue: any
      • -
        arnFormat: ArnFormat
        -

        the expected format of 'arn' - depends on what format the service 'arn' represents uses

        -
        -
      -

      Returns ArnComponents

      +
      Optional options: ExportValueOptions
    +

    Returns string

    -
    - +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:602
  • +
    +
      - +
    • -

      Convert an object, potentially containing tokens, to a JSON string

      +

      Create a CloudFormation Export for a string list value

      +

      Returns a string list representing the corresponding Fn.importValue() +expression for this Export. The export expression is automatically wrapped with an +Fn::Join and the import value with an Fn::Split, since CloudFormation can only +export strings. You can control the name for the export by passing the name option.

      +

      If you don't supply a value for name, the value you're exporting must be +a Resource attribute (for example: bucket.bucketName) and it will be +given the same name as the automatic cross-stack reference that would be created +if you used the attribute in another Stack.

      +

      One of the uses for this method is to remove the relationship between +two Stacks established by automatic cross-stack references. It will +temporarily ensure that the CloudFormation Export still exists while you +remove the reference from the consuming stack. After that, you can remove +the resource and the manual export.

      +

      See exportValue for an example of this process.

      Parameters

      • -
        obj: any
      • +
        exportedValue: any
      • -
        Optional space: number
      -

      Returns string

      +
      Optional options: ExportValueOptions
    +

    Returns string[]

    -
    - -
      - +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:624
    +
    + +
      +
    • -

      Returns a string representation of this construct.

      +

      Returns the naming scheme used to allocate logical IDs. By default, uses +the HashedAddressingScheme but this method can be overridden to customize +this behavior.

      +

      In order to make sure logical IDs are unique and stable, we hash the resource +construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as +a suffix to the path components joined without a separator (CloudFormation +IDs only allow alphanumeric characters).

      +

      The result will be:

      +

      <path.join('')><md5(path.join('/')> + "human" "hash"

      +

      If the "human" part of the ID exceeds 240 characters, we simply trim it so +the total ID doesn't exceed CloudFormation's 255 character limit.

      +

      We only take 8 characters from the md5 hash (0.000005 chance of collision).

      +

      Special cases:

      +
        +
      • If the path only contains a single component (i.e. it's a top-level +resource), we won't add the hash to it. The hash is not needed for +disambiguation and also, it allows for a more straightforward migration an +existing CloudFormation template to a CDK stack without logical ID changes +(or renames).
      • +
      • For aesthetic reasons, if the last components of the path are the same +(i.e. L1/L2/Pipeline/Pipeline), they will be de-duplicated to make the +resulting human portion of the ID more pleasing: L1L2Pipeline<HASH> +instead of L1L2PipelinePipeline<HASH>
      • +
      • If a component is named "Default" it will be omitted from the path. This +allows refactoring higher level abstractions around constructs without affecting +the IDs of already deployed resources.
      • +
      • If a component is named "Resource" it will be omitted from the user-visible +path, but included in the hash. This reduces visual noise in the human readable +part of the identifier.
      • +
      +
      +
      +

      Parameters

      +
        +
      • +
        cfnElement: CfnElement
        +

        The element for which the logical ID is allocated.

        +

      Returns string

    -
    - -
      - -
    • -

      Convert an object, potentially containing tokens, to a YAML string

      +
    • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:665
    +
    + +
      + +
    • Internal +

      Validate stack name

      +

      CloudFormation stack names can include dashes in addition to the regular identifier +character classes, and we don't allow one of the magic markers.

      Parameters

      • -
        obj: any
      -

      Returns string

      +
      name: string
    +

    Returns void

    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:674
  • +
    + +
      + +
    • Internal +

      Returns the CloudFormation template for this stack by traversing +the tree and invoking _toCloudFormation() on all Entity objects.

      +
      +

      Returns any

      +
      @@ -1039,44 +1067,18 @@

      Returns x<

      Inherited from cdk.Stack.isConstruct

      • Defined in node_modules/constructs/lib/construct.d.ts:261

    -
    - -
      - -
    • -

      Return whether the given object is a Stack.

      -

      We do attribute detection since we can't reliably use 'instanceof'.

      -
      -
      -

      Parameters

      -
        -
      • -
        x: any
      -

      Returns x is Stack

      -
    -
    - +
    +
      - +
    • -

      Looks up the first stack scope in which construct is defined. Fails if there is no stack up the tree.

      -
      -
      -

      Parameters

      -
        -
      • -
        construct: IConstruct
        -

        The construct to start the search from.

        +

        Returns a string representation of this construct.

        -
      -

      Returns Stack

      +

      Returns string

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:278
  • +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/classes/SourceRepo.html b/classes/SourceRepo.html index b3fc4b6..6cb4d1f 100644 --- a/classes/SourceRepo.html +++ b/classes/SourceRepo.html @@ -12,11 +12,13 @@

    The repository for the Source Stage of the pipeline.

    +

    The initial contents of this repository are seeded by the assets contained +in the source-repo/ folder of this library.

    @@ -26,7 +28,7 @@

    Hierarchy

    • SourceRepo
    +
  • Defined in lib/constructs/source-repo.ts:38
  • @@ -38,13 +40,13 @@

    Constructors

    Properties

    -

    Methods

    -

    Constructors

    @@ -65,18 +67,9 @@
    props: Returns SourceRepo
    +
  • Defined in lib/constructs/source-repo.ts:42
  • Properties

    -
    - -
    node: Node
    -

    The tree node.

    -
    -
    repo: Repository
    @@ -84,21 +77,18 @@
    -
    -

    Methods

    -
    - -
    +
    + +
    node: Node
    +

    The tree node.

    -

    Returns string

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:265
  • +
    +

    Methods

      @@ -131,7 +121,19 @@

      Returns x<

    +
  • Defined in node_modules/constructs/lib/construct.d.ts:261
  • +
    + +
      + +
    • +

      Returns a string representation of this construct.

      +
      +

      Returns string

      +
    +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/enums/ImageKind.html b/enums/ImageKind.html index 01717ce..66f12a1 100644 --- a/enums/ImageKind.html +++ b/enums/ImageKind.html @@ -12,7 +12,7 @@
    @@ -20,7 +20,7 @@

    Enumeration ImageKind

    +
  • Defined in lib/build-image-pipeline.ts:17
  • @@ -39,7 +39,7 @@
    +
  • Defined in lib/build-image-pipeline.ts:19
  • +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/enums/ProjectKind.html b/enums/ProjectKind.html index bb8800a..533b376 100644 --- a/enums/ProjectKind.html +++ b/enums/ProjectKind.html @@ -12,7 +12,7 @@
    @@ -20,7 +20,7 @@

    Enumeration ProjectKind

    +
  • Defined in lib/constructs/source-repo.ts:10
  • @@ -28,23 +28,23 @@

    Enumeration Members

    -
    - -
    Kas: "kas"
    -

    Build an kas based image

    +
    + +
    Poky: "poky"
    +

    Build core-image-minimal from poky.

    +
  • Defined in lib/constructs/source-repo.ts:12
  • MetaAwsDemo: "meta-aws-demo"
    @@ -52,23 +52,7 @@
    -
    - -
    NxpImx: "nxp-imx"
    -

    Build an IMX image using NXP layers.

    -
    -
    -
    - -
    Poky: "poky"
    -

    Build core-image-minimal from poky.

    -
    -
    +
  • Defined in lib/constructs/source-repo.ts:14
  • PokyAmi: "poky-ami"
    @@ -76,7 +60,15 @@
    +
  • Defined in lib/constructs/source-repo.ts:16
  • +
    + +
    Kas: "kas"
    +

    Build an kas based image

    +
    +
    Renesas: "renesas"
    @@ -84,7 +76,15 @@
    +
  • Defined in lib/constructs/source-repo.ts:20
  • +
    + +
    NxpImx: "nxp-imx"
    +

    Build an IMX image using NXP layers.

    +
    +
    +

    Theme

    +
    +

    On This Page

    +
    +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/interfaces/BuildImageDataProps.html b/interfaces/BuildImageDataProps.html index 8c9fc49..92da540 100644 --- a/interfaces/BuildImageDataProps.html +++ b/interfaces/BuildImageDataProps.html @@ -12,11 +12,11 @@

    Properties

    -
    - -
    analyticsReporting?: boolean
    -

    Include runtime versioning information in this Stack

    -
    -
    -

    Default

    analyticsReporting setting of containing App, or value of -'aws:cdk:version-reporting' context key

    -
    - +
    bucketName: string

    The bucket name for image build sources. This must be globally unique.

    -
    - -
    crossRegionReferences?: boolean
    -

    Enable this flag to allow native cross region stack references.

    -

    Enabling this will create a CloudFormation custom resource -in both the producing stack and consuming stack in order to perform the export/import

    -

    This feature is currently experimental

    -
    -
    -

    Default

    false
    -
    -
    +
  • Defined in lib/build-image-data.ts:16
  • description?: string

    A description of the stack.

    -

    Default

    - No description.
    +

    Default

    - No description.
     
    -
    - -
    permissionsBoundary?: PermissionsBoundary
    -

    Options for applying a permissions boundary to all IAM Roles -and Users created within this Stage

    -
    -
    -

    Default

    - no permissions boundary is applied
    -
    -
    stackName?: string

    Name to deploy the stack with

    -

    Default

    - Derived from construct path.
    +

    Default

    - Derived from construct path.
     
    -
    - -
    suppressTemplateIndentation?: boolean
    -

    Enable this flag to suppress indentation in generated -CloudFormation templates.

    -

    If not specified, the value of the @aws-cdk/core:suppressTemplateIndentation -context key will be used. If that is not specified, then the -default value false will be used.

    +
    + +
    tags?: {
        [key: string]: string;
    }
    +

    Stack tags that will be applied to all the taggable resources and the stack itself.

    +
    +

    Type declaration

    +
      +
    • +
      [key: string]: string
    -

    Default

      -
    • the value of @aws-cdk/core:suppressTemplateIndentation, or false if that is not set.
    • -
    +

    Default

    {}
    +
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:94
  • synthesizer?: IStackSynthesizer
    @@ -191,35 +151,75 @@

    Default

      Inherited from cdk.StackProps.synthesizer

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:112
    -
    - -
    tags?: {
        [key: string]: string;
    }
    -

    Stack tags that will be applied to all the taggable resources and the stack itself.

    -
    -
    -

    Type declaration

    -
      -
    • -
      [key: string]: string
    -
    -

    Default

    {}
    -
    -
    terminationProtection?: boolean

    Whether to enable termination protection for this stack.

    -

    Default

    false
    +

    Default

    false
     
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:118
  • +
    + +
    analyticsReporting?: boolean
    +

    Include runtime versioning information in this Stack

    +
    +
    +

    Default

    analyticsReporting setting of containing App, or value of +'aws:cdk:version-reporting' context key

    +
    +
    + +
    crossRegionReferences?: boolean
    +

    Enable this flag to allow native cross region stack references.

    +

    Enabling this will create a CloudFormation custom resource +in both the producing stack and consuming stack in order to perform the export/import

    +

    This feature is currently experimental

    +
    +
    +

    Default

    false
    +
    +
    +
    + +
    permissionsBoundary?: PermissionsBoundary
    +

    Options for applying a permissions boundary to all IAM Roles +and Users created within this Stage

    +
    +
    +

    Default

    - no permissions boundary is applied
    +
    +
    +
    + +
    suppressTemplateIndentation?: boolean
    +

    Enable this flag to suppress indentation in generated +CloudFormation templates.

    +

    If not specified, the value of the @aws-cdk/core:suppressTemplateIndentation +context key will be used. If that is not specified, then the +default value false will be used.

    +
    +
    +

    Default

      +
    • the value of @aws-cdk/core:suppressTemplateIndentation, or false if that is not set.
    • +
    +
    +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/interfaces/EmbeddedLinuxPipelineProps.html b/interfaces/EmbeddedLinuxPipelineProps.html index 4ba8869..9ac6d45 100644 --- a/interfaces/EmbeddedLinuxPipelineProps.html +++ b/interfaces/EmbeddedLinuxPipelineProps.html @@ -12,7 +12,7 @@

    Properties

    -
    - -
    analyticsReporting?: boolean
    -

    Include runtime versioning information in this Stack

    +
    + +
    imageRepo: IRepository
    +

    ECR Repository where the Build Host Image resides.

    -
    -

    Default

    analyticsReporting setting of containing App, or value of -'aws:cdk:version-reporting' context key

    -
    -
    - -
    crossRegionReferences?: boolean
    -

    Enable this flag to allow native cross region stack references.

    -

    Enabling this will create a CloudFormation custom resource -in both the producing stack and consuming stack in order to perform the export/import

    -

    This feature is currently experimental

    +
  • Defined in lib/embedded-linux-pipeline.ts:42
  • +
    + +
    imageTag?: string
    +

    Tag for the Build Host Image

    -
    -

    Default

    false
    -
    -
    +
  • Defined in lib/embedded-linux-pipeline.ts:44
  • +
    + +
    vpc: IVpc
    +

    VPC where the networking setup resides.

    +
    +
    +
    + +
    projectKind?: ProjectKind
    +

    The type of project being built.

    +
    +
    +
    + +
    layerRepoName?: string
    +

    A name for the layer-repo that is created. Default is 'layer-repo'

    +
    +
    description?: string

    A description of the stack.

    -

    Default

    - No description.
    +

    Default

    - No description.
     
    -
    - -
    imageRepo: IRepository
    -

    ECR Repository where the Build Host Image resides.

    -
    -
    -
    - -
    imageTag?: string
    -

    Tag for the Build Host Image

    -
    -
    -
    - -
    layerRepoName?: string
    -

    A name for the layer-repo that is created. Default is 'layer-repo'

    -
    -
    -
    - -
    permissionsBoundary?: PermissionsBoundary
    -

    Options for applying a permissions boundary to all IAM Roles -and Users created within this Stage

    -
    -
    -

    Default

    - no permissions boundary is applied
    -
    -
    -
    - -
    projectKind?: ProjectKind
    -

    The type of project being built.

    -
    -
    stackName?: string

    Name to deploy the stack with

    -

    Default

    - Derived from construct path.
    +

    Default

    - Derived from construct path.
     
    -
    - -
    suppressTemplateIndentation?: boolean
    -

    Enable this flag to suppress indentation in generated -CloudFormation templates.

    -

    If not specified, the value of the @aws-cdk/core:suppressTemplateIndentation -context key will be used. If that is not specified, then the -default value false will be used.

    +
    + +
    tags?: {
        [key: string]: string;
    }
    +

    Stack tags that will be applied to all the taggable resources and the stack itself.

    +
    +

    Type declaration

    +
      +
    • +
      [key: string]: string
    -

    Default

      -
    • the value of @aws-cdk/core:suppressTemplateIndentation, or false if that is not set.
    • -
    +

    Default

    {}
    +
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:94
  • synthesizer?: IStackSynthesizer
    @@ -219,43 +187,75 @@

    Default

      Inherited from cdk.StackProps.synthesizer

      • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:112
    -
    - -
    tags?: {
        [key: string]: string;
    }
    -

    Stack tags that will be applied to all the taggable resources and the stack itself.

    -
    -
    -

    Type declaration

    -
      -
    • -
      [key: string]: string
    -
    -

    Default

    {}
    -
    -
    terminationProtection?: boolean

    Whether to enable termination protection for this stack.

    -

    Default

    false
    +

    Default

    false
     
    -
    - -
    vpc: IVpc
    -

    VPC where the networking setup resides.

    +
    + +
    analyticsReporting?: boolean
    +

    Include runtime versioning information in this Stack

    -
    +
  • Defined in node_modules/aws-cdk-lib/core/lib/stack.d.ts:125
  • +
    + +
    crossRegionReferences?: boolean
    +

    Enable this flag to allow native cross region stack references.

    +

    Enabling this will create a CloudFormation custom resource +in both the producing stack and consuming stack in order to perform the export/import

    +

    This feature is currently experimental

    +
    +
    +

    Default

    false
    +
    +
    +
    + +
    permissionsBoundary?: PermissionsBoundary
    +

    Options for applying a permissions boundary to all IAM Roles +and Users created within this Stage

    +
    +
    +

    Default

    - no permissions boundary is applied
    +
    +
    +
    + +
    suppressTemplateIndentation?: boolean
    +

    Enable this flag to suppress indentation in generated +CloudFormation templates.

    +

    If not specified, the value of the @aws-cdk/core:suppressTemplateIndentation +context key will be used. If that is not specified, then the +default value false will be used.

    +
    +
    +

    Default

      +
    • the value of @aws-cdk/core:suppressTemplateIndentation, or false if that is not set.
    • +
    +
    +
  • EmbeddedLinuxPipelineStack
  • +
  • PipelineNetworkStack
  • Generated using TypeDoc

    \ No newline at end of file diff --git a/modules.html b/modules.html new file mode 100644 index 0000000..d9274a3 --- /dev/null +++ b/modules.html @@ -0,0 +1,71 @@ +aws4embeddedlinux-cdk-lib
    +
    + +
    + +
    +

    Generated using TypeDoc

    +
    \ No newline at end of file