Class DefaultStagingStackOptions.Jsii$Proxy

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.app.staging.synthesizer.alpha.DefaultStagingStackOptions.Jsii$Proxy
All Implemented Interfaces:
DefaultStagingStackOptions, software.amazon.jsii.JsiiSerializable
Enclosing interface:
DefaultStagingStackOptions

@Stability(Experimental) @Internal public static final class DefaultStagingStackOptions.Jsii$Proxy extends software.amazon.jsii.JsiiObject implements DefaultStagingStackOptions
An implementation for DefaultStagingStackOptions
  • Constructor Details

    • Jsii$Proxy

      protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)
      Constructor that initializes the object based on values retrieved from the JsiiObject.
      Parameters:
      objRef - Reference to the JSII managed object.
    • Jsii$Proxy

      protected Jsii$Proxy(DefaultStagingStackOptions.Builder builder)
      Constructor that initializes the object based on literal property values passed by the DefaultStagingStackOptions.Builder.
  • Method Details

    • getAppId

      public final String getAppId()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) A unique identifier for the application that the staging stack belongs to.

      This identifier will be used in the name of staging resources created for this application, and should be unique across CDK apps.

      The identifier should include lowercase characters and dashes ('-') only and have a maximum of 20 characters.

      Specified by:
      getAppId in interface DefaultStagingStackOptions
    • getStagingBucketEncryption

      public final BucketEncryption getStagingBucketEncryption()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) Encryption type for staging bucket.

      In future versions of this package, the default will be BucketEncryption.S3_MANAGED.

      In previous versions of this package, the default was to use KMS encryption for the staging bucket. KMS keys cost $1/month, which could result in unexpected costs for users who are not aware of this. As we stabilize this module we intend to make the default S3-managed encryption, which is free. However, the migration path from KMS to S3 managed encryption for existing buckets is not straightforward. Therefore, for now, this property is required.

      If you have an existing staging bucket encrypted with a KMS key, you will likely want to set this property to BucketEncryption.KMS. If you are creating a new staging bucket, you can set this property to BucketEncryption.S3_MANAGED to avoid the cost of a KMS key.

      Specified by:
      getStagingBucketEncryption in interface DefaultStagingStackOptions
    • getAutoDeleteStagingAssets

      public final Boolean getAutoDeleteStagingAssets()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) Auto deletes objects in the staging S3 bucket and images in the staging ECR repositories.

      Default: true

      Specified by:
      getAutoDeleteStagingAssets in interface DefaultStagingStackOptions
    • getDeployTimeFileAssetLifetime

      public final Duration getDeployTimeFileAssetLifetime()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) The lifetime for deploy time file assets.

      Assets that are only necessary at deployment time (for instance, CloudFormation templates and Lambda source code bundles) will be automatically deleted after this many days. Assets that may be read from the staging bucket during your application's run time will not be deleted.

      Set this to the length of time you wish to be able to roll back to previous versions of your application without having to do a new cdk synth and re-upload of assets.

      Default: - Duration.days(30)

      Specified by:
      getDeployTimeFileAssetLifetime in interface DefaultStagingStackOptions
    • getFileAssetPublishingRole

      public final BootstrapRole getFileAssetPublishingRole()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) Pass in an existing role to be used as the file publishing role.

      Default: - a new role will be created

      Specified by:
      getFileAssetPublishingRole in interface DefaultStagingStackOptions
    • getImageAssetPublishingRole

      public final BootstrapRole getImageAssetPublishingRole()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) Pass in an existing role to be used as the image publishing role.

      Default: - a new role will be created

      Specified by:
      getImageAssetPublishingRole in interface DefaultStagingStackOptions
    • getImageAssetVersionCount

      public final Number getImageAssetVersionCount()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) The maximum number of image versions to store in a repository.

      Previous versions of an image can be stored for rollback purposes. Once a repository has more than 3 image versions stored, the oldest version will be discarded. This allows for sensible garbage collection while maintaining a few previous versions for rollback scenarios.

      Default: - up to 3 versions stored

      Specified by:
      getImageAssetVersionCount in interface DefaultStagingStackOptions
    • getStagingBucketName

      public final String getStagingBucketName()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) Explicit name for the staging bucket.

      Default: - a well-known name unique to this app/env.

      Specified by:
      getStagingBucketName in interface DefaultStagingStackOptions
    • getStagingStackNamePrefix

      public final String getStagingStackNamePrefix()
      Description copied from interface: DefaultStagingStackOptions
      (experimental) Specify a custom prefix to be used as the staging stack name and construct ID.

      The prefix will be appended before the appId, which is required to be part of the stack name and construct ID to ensure uniqueness.

      Default: 'StagingStack'

      Specified by:
      getStagingStackNamePrefix in interface DefaultStagingStackOptions
    • $jsii$toJson

      @Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
      Specified by:
      $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
    • equals

      public final boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object