Class AssetManifestArtifact

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.cxapi.CloudArtifact
software.amazon.awscdk.cxapi.AssetManifestArtifact
All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-06T23:25:18.442Z") @Stability(Stable) public class AssetManifestArtifact extends CloudArtifact
Asset manifest is a description of a set of assets which need to be built and published.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.cloud_assembly_schema.*;
 import software.amazon.awscdk.cxapi.*;
 Object assumeRoleAdditionalOptions;
 CloudAssembly cloudAssembly;
 AssetManifestArtifact assetManifestArtifact = AssetManifestArtifact.Builder.create(cloudAssembly, "name")
         .type(ArtifactType.NONE)
         // the properties below are optional
         .dependencies(List.of("dependencies"))
         .displayName("displayName")
         .environment("environment")
         .metadata(Map.of(
                 "metadataKey", List.of(MetadataEntry.builder()
                         .type("type")
                         // the properties below are optional
                         .data("data")
                         .trace(List.of("trace"))
                         .build())))
         .properties(AwsCloudFormationStackProperties.builder()
                 .templateFile("templateFile")
                 // the properties below are optional
                 .assumeRoleAdditionalOptions(Map.of(
                         "assumeRoleAdditionalOptionsKey", assumeRoleAdditionalOptions))
                 .assumeRoleArn("assumeRoleArn")
                 .assumeRoleExternalId("assumeRoleExternalId")
                 .bootstrapStackVersionSsmParameter("bootstrapStackVersionSsmParameter")
                 .cloudFormationExecutionRoleArn("cloudFormationExecutionRoleArn")
                 .lookupRole(BootstrapRole.builder()
                         .arn("arn")
                         // the properties below are optional
                         .assumeRoleAdditionalOptions(Map.of(
                                 "assumeRoleAdditionalOptionsKey", assumeRoleAdditionalOptions))
                         .assumeRoleExternalId("assumeRoleExternalId")
                         .bootstrapStackVersionSsmParameter("bootstrapStackVersionSsmParameter")
                         .requiresBootstrapStackVersion(123)
                         .build())
                 .notificationArns(List.of("notificationArns"))
                 .parameters(Map.of(
                         "parametersKey", "parameters"))
                 .requiresBootstrapStackVersion(123)
                 .stackName("stackName")
                 .stackTemplateAssetObjectUrl("stackTemplateAssetObjectUrl")
                 .tags(Map.of(
                         "tagsKey", "tags"))
                 .terminationProtection(false)
                 .validateOnSynth(false)
                 .build())
         .build();
 
  • Constructor Details

    • AssetManifestArtifact

      protected AssetManifestArtifact(software.amazon.jsii.JsiiObjectRef objRef)
    • AssetManifestArtifact

      protected AssetManifestArtifact(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • AssetManifestArtifact

      @Stability(Stable) public AssetManifestArtifact(@NotNull CloudAssembly assembly, @NotNull String name, @NotNull ArtifactManifest artifact)
      Parameters:
      assembly - This parameter is required.
      name - This parameter is required.
      artifact - This parameter is required.
  • Method Details

    • isAssetManifestArtifact

      @Stability(Stable) @NotNull public static Boolean isAssetManifestArtifact(@NotNull Object art)
      Checks if art is an instance of this class.

      Use this method instead of instanceof to properly detect AssetManifestArtifact instances, even when the construct library is symlinked.

      Explanation: in JavaScript, multiple copies of the cx-api library on disk are seen as independent, completely different libraries. As a consequence, the class AssetManifestArtifact in each copy of the cx-api library is seen as a different class, and an instance of one class will not test as instanceof the other class. npm install will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the cx-api library can be accidentally installed, and instanceof will behave unpredictably. It is safest to avoid using instanceof, and using this type-testing method instead.

      Parameters:
      art - This parameter is required.
    • getContents

      @Stability(Stable) @NotNull public AssetManifest getContents()
      The Asset Manifest contents.
    • getFile

      @Stability(Stable) @NotNull public String getFile()
      The file name of the asset manifest.
    • getBootstrapStackVersionSsmParameter

      @Stability(Stable) @Nullable public String getBootstrapStackVersionSsmParameter()
      Name of SSM parameter with bootstrap stack version.

      Default: - Discover SSM parameter by reading stack

    • getRequiresBootstrapStackVersion

      @Stability(Stable) @Nullable public Number getRequiresBootstrapStackVersion()
      Version of bootstrap stack required to deploy this stack.