class TreeCloudArtifact
Language | Type name |
---|---|
.NET | Amazon.CDK.CXAPI.TreeCloudArtifact |
Java | software.amazon.awscdk.cxapi.TreeCloudArtifact |
Python | aws_cdk.cx_api.TreeCloudArtifact |
TypeScript (source) | @aws-cdk/cx-api » TreeCloudArtifact |
Extends
Cloud
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as cloud_assembly_schema from '@aws-cdk/cloud-assembly-schema';
import * as cx_api from '@aws-cdk/cx-api';
declare const assumeRoleAdditionalOptions: any;
declare const cloudAssembly: cx_api.CloudAssembly;
const treeCloudArtifact = new cx_api.TreeCloudArtifact(cloudAssembly, 'name', {
type: cloud_assembly_schema.ArtifactType.NONE,
// the properties below are optional
dependencies: ['dependencies'],
displayName: 'displayName',
environment: 'environment',
metadata: {
metadataKey: [{
type: 'type',
// the properties below are optional
data: 'data',
trace: ['trace'],
}],
},
properties: {
templateFile: 'templateFile',
// the properties below are optional
assumeRoleAdditionalOptions: {
assumeRoleAdditionalOptionsKey: assumeRoleAdditionalOptions,
},
assumeRoleArn: 'assumeRoleArn',
assumeRoleExternalId: 'assumeRoleExternalId',
bootstrapStackVersionSsmParameter: 'bootstrapStackVersionSsmParameter',
cloudFormationExecutionRoleArn: 'cloudFormationExecutionRoleArn',
lookupRole: {
arn: 'arn',
// the properties below are optional
assumeRoleAdditionalOptions: {
assumeRoleAdditionalOptionsKey: assumeRoleAdditionalOptions,
},
assumeRoleExternalId: 'assumeRoleExternalId',
bootstrapStackVersionSsmParameter: 'bootstrapStackVersionSsmParameter',
requiresBootstrapStackVersion: 123,
},
notificationArns: ['notificationArns'],
parameters: {
parametersKey: 'parameters',
},
requiresBootstrapStackVersion: 123,
stackName: 'stackName',
stackTemplateAssetObjectUrl: 'stackTemplateAssetObjectUrl',
tags: {
tagsKey: 'tags',
},
terminationProtection: false,
validateOnSynth: false,
},
});
Initializer
new TreeCloudArtifact(assembly: CloudAssembly, name: string, artifact: ArtifactManifest)
Parameters
- assembly
Cloud
Assembly - name
string
- artifact
Artifact
Manifest
Properties
Name | Type | Description |
---|---|---|
assembly | Cloud | |
dependencies | Cloud [] | Returns all the artifacts that this artifact depends on. |
file | string | |
hierarchical | string | An identifier that shows where this artifact is located in the tree of nested assemblies, based on their manifests. |
id | string | |
manifest | Artifact | The artifact's manifest. |
messages | Synthesis [] | The set of messages extracted from the artifact's metadata. |
assembly
Type:
Cloud
dependencies
Type:
Cloud
[]
Returns all the artifacts that this artifact depends on.
file
Type:
string
hierarchicalId
Type:
string
An identifier that shows where this artifact is located in the tree of nested assemblies, based on their manifests.
Defaults to the normal id. Should only be used in user interfaces.
id
Type:
string
manifest
Type:
Artifact
The artifact's manifest.
messages
Type:
Synthesis
[]
The set of messages extracted from the artifact's metadata.
Methods
Name | Description |
---|---|
find | |
static is | Checks if art is an instance of this class. |
MetadataByType(type)
findpublic findMetadataByType(type: string): MetadataEntryResult[]
Parameters
- type
string
Returns
TreeCloudArtifact(art)
static ispublic static isTreeCloudArtifact(art: any): boolean
Parameters
- art
any
Returns
boolean
Checks if art
is an instance of this class.
Use this method instead of instanceof
to properly detect TreeCloudArtifact
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 TreeCloudArtifact
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.