cxapi

package
v1.129.0-devpreview Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 21, 2021 License: Apache-2.0 Imports: 4 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func EnvironmentPlaceholders_CURRENT_ACCOUNT

func EnvironmentPlaceholders_CURRENT_ACCOUNT() *string

func EnvironmentPlaceholders_CURRENT_PARTITION

func EnvironmentPlaceholders_CURRENT_PARTITION() *string

func EnvironmentPlaceholders_CURRENT_REGION

func EnvironmentPlaceholders_CURRENT_REGION() *string

func EnvironmentPlaceholders_Replace

func EnvironmentPlaceholders_Replace(object interface{}, values *EnvironmentPlaceholderValues) interface{}

Replace the environment placeholders in all strings found in a complex object.

Duplicated between cdk-assets and aws-cdk CLI because we don't have a good single place to put it (they're nominally independent tools). Experimental.

func EnvironmentPlaceholders_ReplaceAsync

func EnvironmentPlaceholders_ReplaceAsync(object interface{}, provider IEnvironmentPlaceholderProvider) interface{}

Like 'replace', but asynchronous. Experimental.

func EnvironmentUtils_Format

func EnvironmentUtils_Format(account *string, region *string) *string

Format an environment string from an account and region. Experimental.

func NewAssetManifestArtifact_Override

func NewAssetManifestArtifact_Override(a AssetManifestArtifact, assembly CloudAssembly, name *string, artifact *cloudassemblyschema.ArtifactManifest)

Experimental.

func NewCloudArtifact_Override

func NewCloudArtifact_Override(c CloudArtifact, assembly CloudAssembly, id *string, manifest *cloudassemblyschema.ArtifactManifest)

Experimental.

func NewCloudAssemblyBuilder_Override

func NewCloudAssemblyBuilder_Override(c CloudAssemblyBuilder, outdir *string, props *CloudAssemblyBuilderProps)

Initializes a cloud assembly builder. Experimental.

func NewCloudAssembly_Override

func NewCloudAssembly_Override(c CloudAssembly, directory *string)

Reads a cloud assembly from the specified directory. Experimental.

func NewCloudFormationStackArtifact_Override

func NewCloudFormationStackArtifact_Override(c CloudFormationStackArtifact, assembly CloudAssembly, artifactId *string, artifact *cloudassemblyschema.ArtifactManifest)

Experimental.

func NewEnvironmentPlaceholders_Override

func NewEnvironmentPlaceholders_Override(e EnvironmentPlaceholders)

Experimental.

func NewEnvironmentUtils_Override

func NewEnvironmentUtils_Override(e EnvironmentUtils)

Experimental.

func NewNestedCloudAssemblyArtifact_Override

func NewNestedCloudAssemblyArtifact_Override(n NestedCloudAssemblyArtifact, assembly CloudAssembly, name *string, artifact *cloudassemblyschema.ArtifactManifest)

Experimental.

func NewTreeCloudArtifact_Override

func NewTreeCloudArtifact_Override(t TreeCloudArtifact, assembly CloudAssembly, name *string, artifact *cloudassemblyschema.ArtifactManifest)

Experimental.

Types

type AssemblyBuildOptions

type AssemblyBuildOptions struct {
	// Include the specified runtime information (module versions) in manifest.
	// Deprecated: All template modifications that should result from this should
	// have already been inserted into the template.
	RuntimeInfo *RuntimeInfo `json:"runtimeInfo"`
}

Experimental.

type AssetManifestArtifact

type AssetManifestArtifact interface {
	CloudArtifact
	Assembly() CloudAssembly
	BootstrapStackVersionSsmParameter() *string
	Dependencies() *[]CloudArtifact
	File() *string
	HierarchicalId() *string
	Id() *string
	Manifest() *cloudassemblyschema.ArtifactManifest
	Messages() *[]*SynthesisMessage
	RequiresBootstrapStackVersion() *float64
	FindMetadataByType(type_ *string) *[]*MetadataEntryResult
}

Asset manifest is a description of a set of assets which need to be built and published. Experimental.

func NewAssetManifestArtifact

func NewAssetManifestArtifact(assembly CloudAssembly, name *string, artifact *cloudassemblyschema.ArtifactManifest) AssetManifestArtifact

Experimental.

type AwsCloudFormationStackProperties

type AwsCloudFormationStackProperties struct {
	// A file relative to the assembly root which contains the CloudFormation template for this stack.
	// Experimental.
	TemplateFile *string `json:"templateFile"`
	// Values for CloudFormation stack parameters that should be passed when the stack is deployed.
	// Experimental.
	Parameters *map[string]*string `json:"parameters"`
	// The name to use for the CloudFormation stack.
	// Experimental.
	StackName *string `json:"stackName"`
	// Whether to enable termination protection for this stack.
	// Experimental.
	TerminationProtection *bool `json:"terminationProtection"`
}

Artifact properties for CloudFormation stacks. Experimental.

type CloudArtifact

type CloudArtifact interface {
	Assembly() CloudAssembly
	Dependencies() *[]CloudArtifact
	HierarchicalId() *string
	Id() *string
	Manifest() *cloudassemblyschema.ArtifactManifest
	Messages() *[]*SynthesisMessage
	FindMetadataByType(type_ *string) *[]*MetadataEntryResult
}

Represents an artifact within a cloud assembly. Experimental.

func AssetManifestArtifact_FromManifest

func AssetManifestArtifact_FromManifest(assembly CloudAssembly, id *string, artifact *cloudassemblyschema.ArtifactManifest) CloudArtifact

Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.

Returns: the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module. Experimental.

func CloudArtifact_FromManifest

func CloudArtifact_FromManifest(assembly CloudAssembly, id *string, artifact *cloudassemblyschema.ArtifactManifest) CloudArtifact

Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.

Returns: the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module. Experimental.

func CloudFormationStackArtifact_FromManifest

func CloudFormationStackArtifact_FromManifest(assembly CloudAssembly, id *string, artifact *cloudassemblyschema.ArtifactManifest) CloudArtifact

Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.

Returns: the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module. Experimental.

func NestedCloudAssemblyArtifact_FromManifest

func NestedCloudAssemblyArtifact_FromManifest(assembly CloudAssembly, id *string, artifact *cloudassemblyschema.ArtifactManifest) CloudArtifact

Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.

Returns: the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module. Experimental.

func NewCloudArtifact

func NewCloudArtifact(assembly CloudAssembly, id *string, manifest *cloudassemblyschema.ArtifactManifest) CloudArtifact

Experimental.

func TreeCloudArtifact_FromManifest

func TreeCloudArtifact_FromManifest(assembly CloudAssembly, id *string, artifact *cloudassemblyschema.ArtifactManifest) CloudArtifact

Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.

Returns: the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module. Experimental.

type CloudAssembly

type CloudAssembly interface {
	Artifacts() *[]CloudArtifact
	Directory() *string
	Manifest() *cloudassemblyschema.AssemblyManifest
	NestedAssemblies() *[]NestedCloudAssemblyArtifact
	Runtime() *cloudassemblyschema.RuntimeInfo
	Stacks() *[]CloudFormationStackArtifact
	StacksRecursively() *[]CloudFormationStackArtifact
	Version() *string
	GetNestedAssembly(artifactId *string) CloudAssembly
	GetNestedAssemblyArtifact(artifactId *string) NestedCloudAssemblyArtifact
	GetStack(stackName *string) CloudFormationStackArtifact
	GetStackArtifact(artifactId *string) CloudFormationStackArtifact
	GetStackByName(stackName *string) CloudFormationStackArtifact
	Tree() TreeCloudArtifact
	TryGetArtifact(id *string) CloudArtifact
}

Represents a deployable cloud application. Experimental.

func NewCloudAssembly

func NewCloudAssembly(directory *string) CloudAssembly

Reads a cloud assembly from the specified directory. Experimental.

type CloudAssemblyBuilder

type CloudAssemblyBuilder interface {
	AssetOutdir() *string
	Outdir() *string
	AddArtifact(id *string, manifest *cloudassemblyschema.ArtifactManifest)
	AddMissing(missing *cloudassemblyschema.MissingContext)
	BuildAssembly(options *AssemblyBuildOptions) CloudAssembly
	CreateNestedAssembly(artifactId *string, displayName *string) CloudAssemblyBuilder
}

Can be used to build a cloud assembly. Experimental.

func NewCloudAssemblyBuilder

func NewCloudAssemblyBuilder(outdir *string, props *CloudAssemblyBuilderProps) CloudAssemblyBuilder

Initializes a cloud assembly builder. Experimental.

type CloudAssemblyBuilderProps

type CloudAssemblyBuilderProps struct {
	// Use the given asset output directory.
	// Experimental.
	AssetOutdir *string `json:"assetOutdir"`
	// If this builder is for a nested assembly, the parent assembly builder.
	// Experimental.
	ParentBuilder CloudAssemblyBuilder `json:"parentBuilder"`
}

Construction properties for CloudAssemblyBuilder. Experimental.

type CloudFormationStackArtifact

type CloudFormationStackArtifact interface {
	CloudArtifact
	Assembly() CloudAssembly
	Assets() *[]interface{}
	AssumeRoleArn() *string
	AssumeRoleExternalId() *string
	BootstrapStackVersionSsmParameter() *string
	CloudFormationExecutionRoleArn() *string
	Dependencies() *[]CloudArtifact
	DisplayName() *string
	Environment() *Environment
	HierarchicalId() *string
	Id() *string
	Manifest() *cloudassemblyschema.ArtifactManifest
	Messages() *[]*SynthesisMessage
	Name() *string
	OriginalName() *string
	Parameters() *map[string]*string
	RequiresBootstrapStackVersion() *float64
	StackName() *string
	StackTemplateAssetObjectUrl() *string
	Tags() *map[string]*string
	Template() interface{}
	TemplateFile() *string
	TemplateFullPath() *string
	TerminationProtection() *bool
	ValidateOnSynth() *bool
	FindMetadataByType(type_ *string) *[]*MetadataEntryResult
}

Experimental.

func NewCloudFormationStackArtifact

func NewCloudFormationStackArtifact(assembly CloudAssembly, artifactId *string, artifact *cloudassemblyschema.ArtifactManifest) CloudFormationStackArtifact

Experimental.

type EndpointServiceAvailabilityZonesContextQuery

type EndpointServiceAvailabilityZonesContextQuery struct {
	// Query account.
	// Experimental.
	Account *string `json:"account"`
	// Query region.
	// Experimental.
	Region *string `json:"region"`
	// Query service name.
	// Experimental.
	ServiceName *string `json:"serviceName"`
}

Query to hosted zone context provider. Experimental.

type Environment

type Environment struct {
	// The AWS account this environment deploys into.
	// Experimental.
	Account *string `json:"account"`
	// The arbitrary name of this environment (user-set, or at least user-meaningful).
	// Experimental.
	Name *string `json:"name"`
	// The AWS region name where this environment deploys into.
	// Experimental.
	Region *string `json:"region"`
}

Models an AWS execution environment, for use within the CDK toolkit. Experimental.

func EnvironmentUtils_Make

func EnvironmentUtils_Make(account *string, region *string) *Environment

Build an environment object from an account and region. Experimental.

func EnvironmentUtils_Parse

func EnvironmentUtils_Parse(environment *string) *Environment

Experimental.

type EnvironmentPlaceholderValues

type EnvironmentPlaceholderValues struct {
	// Return the account.
	// Experimental.
	AccountId *string `json:"accountId"`
	// Return the partition.
	// Experimental.
	Partition *string `json:"partition"`
	// Return the region.
	// Experimental.
	Region *string `json:"region"`
}

Return the appropriate values for the environment placeholders. Experimental.

type EnvironmentPlaceholders

type EnvironmentPlaceholders interface {
}

Placeholders which can be used manifests.

These can occur both in the Asset Manifest as well as the general Cloud Assembly manifest. Experimental.

func NewEnvironmentPlaceholders

func NewEnvironmentPlaceholders() EnvironmentPlaceholders

Experimental.

type EnvironmentUtils

type EnvironmentUtils interface {
}

Experimental.

func NewEnvironmentUtils

func NewEnvironmentUtils() EnvironmentUtils

Experimental.

type IEnvironmentPlaceholderProvider

type IEnvironmentPlaceholderProvider interface {
	// Return the account.
	// Experimental.
	AccountId() *string
	// Return the partition.
	// Experimental.
	Partition() *string
	// Return the region.
	// Experimental.
	Region() *string
}

Return the appropriate values for the environment placeholders. Experimental.

type KeyContextResponse

type KeyContextResponse struct {
	// Id of the key.
	// Experimental.
	KeyId *string `json:"keyId"`
}

Properties of a discovered key. Experimental.

type LoadBalancerContextResponse

type LoadBalancerContextResponse struct {
	// Type of IP address.
	// Experimental.
	IpAddressType LoadBalancerIpAddressType `json:"ipAddressType"`
	// The ARN of the load balancer.
	// Experimental.
	LoadBalancerArn *string `json:"loadBalancerArn"`
	// The hosted zone ID of the load balancer's name.
	// Experimental.
	LoadBalancerCanonicalHostedZoneId *string `json:"loadBalancerCanonicalHostedZoneId"`
	// Load balancer's DNS name.
	// Experimental.
	LoadBalancerDnsName *string `json:"loadBalancerDnsName"`
	// Load balancer's security groups.
	// Experimental.
	SecurityGroupIds *[]*string `json:"securityGroupIds"`
	// Load balancer's VPC.
	// Experimental.
	VpcId *string `json:"vpcId"`
}

Properties of a discovered load balancer. Experimental.

type LoadBalancerIpAddressType

type LoadBalancerIpAddressType string

Load balancer ip address type. Experimental.

const (
	LoadBalancerIpAddressType_IPV4       LoadBalancerIpAddressType = "IPV4"
	LoadBalancerIpAddressType_DUAL_STACK LoadBalancerIpAddressType = "DUAL_STACK"
)

type LoadBalancerListenerContextResponse

type LoadBalancerListenerContextResponse struct {
	// The ARN of the listener.
	// Experimental.
	ListenerArn *string `json:"listenerArn"`
	// The port the listener is listening on.
	// Experimental.
	ListenerPort *float64 `json:"listenerPort"`
	// The security groups of the load balancer.
	// Experimental.
	SecurityGroupIds *[]*string `json:"securityGroupIds"`
}

Properties of a discovered load balancer listener. Experimental.

type MetadataEntry deprecated

type MetadataEntry struct {
	// The type of the metadata entry.
	// Deprecated: moved to package 'cloud-assembly-schema'
	Type *string `json:"type"`
	// The data.
	// Deprecated: moved to package 'cloud-assembly-schema'
	Data interface{} `json:"data"`
	// A stack trace for when the entry was created.
	// Deprecated: moved to package 'cloud-assembly-schema'
	Trace *[]*string `json:"trace"`
}

Backwards compatibility for when `MetadataEntry` was defined here.

This is necessary because its used as an input in the stable See: core.ConstructNode.metadata

Deprecated: moved to package 'cloud-assembly-schema'

type MetadataEntryResult

type MetadataEntryResult struct {
	// The type of the metadata entry.
	// Experimental.
	Type *string `json:"type"`
	// The data.
	// Experimental.
	Data interface{} `json:"data"`
	// A stack trace for when the entry was created.
	// Experimental.
	Trace *[]*string `json:"trace"`
	// The path in which this entry was defined.
	// Experimental.
	Path *string `json:"path"`
}

Experimental.

type MissingContext deprecated

type MissingContext struct {
	// The missing context key.
	// Deprecated: moved to package 'cloud-assembly-schema'
	Key *string `json:"key"`
	// A set of provider-specific options.
	//
	// (This is the old untyped definition, which is necessary for backwards compatibility.
	// See cxschema for a type definition.)
	// Deprecated: moved to package 'cloud-assembly-schema'
	Props *map[string]interface{} `json:"props"`
	// The provider from which we expect this context key to be obtained.
	//
	// (This is the old untyped definition, which is necessary for backwards compatibility.
	// See cxschema for a type definition.)
	// Deprecated: moved to package 'cloud-assembly-schema'
	Provider *string `json:"provider"`
}

Backwards compatibility for when `MissingContext` was defined here.

This is necessary because its used as an input in the stable See: core.Stack.reportMissingContext

Deprecated: moved to package 'cloud-assembly-schema'

type NestedCloudAssemblyArtifact

type NestedCloudAssemblyArtifact interface {
	CloudArtifact
	Assembly() CloudAssembly
	Dependencies() *[]CloudArtifact
	DirectoryName() *string
	DisplayName() *string
	FullPath() *string
	HierarchicalId() *string
	Id() *string
	Manifest() *cloudassemblyschema.ArtifactManifest
	Messages() *[]*SynthesisMessage
	NestedAssembly() CloudAssembly
	FindMetadataByType(type_ *string) *[]*MetadataEntryResult
}

Asset manifest is a description of a set of assets which need to be built and published. Experimental.

func NewNestedCloudAssemblyArtifact

func NewNestedCloudAssemblyArtifact(assembly CloudAssembly, name *string, artifact *cloudassemblyschema.ArtifactManifest) NestedCloudAssemblyArtifact

Experimental.

type RuntimeInfo deprecated

type RuntimeInfo struct {
	// The list of libraries loaded in the application, associated with their versions.
	// Deprecated: moved to package 'cloud-assembly-schema'
	Libraries *map[string]*string `json:"libraries"`
}

Backwards compatibility for when `RuntimeInfo` was defined here.

This is necessary because its used as an input in the stable See: core.ConstructNode.synth

Deprecated: moved to package 'cloud-assembly-schema'

type SecurityGroupContextResponse

type SecurityGroupContextResponse struct {
	// Whether the security group allows all outbound traffic.
	//
	// This will be true
	// when the security group has all-protocol egress permissions to access both
	// `0.0.0.0/0` and `::/0`.
	// Experimental.
	AllowAllOutbound *bool `json:"allowAllOutbound"`
	// The security group's id.
	// Experimental.
	SecurityGroupId *string `json:"securityGroupId"`
}

Properties of a discovered SecurityGroup. Experimental.

type SynthesisMessage

type SynthesisMessage struct {
	// Experimental.
	Entry *cloudassemblyschema.MetadataEntry `json:"entry"`
	// Experimental.
	Id *string `json:"id"`
	// Experimental.
	Level SynthesisMessageLevel `json:"level"`
}

Experimental.

type SynthesisMessageLevel

type SynthesisMessageLevel string

Experimental.

const (
	SynthesisMessageLevel_INFO    SynthesisMessageLevel = "INFO"
	SynthesisMessageLevel_WARNING SynthesisMessageLevel = "WARNING"
	SynthesisMessageLevel_ERROR   SynthesisMessageLevel = "ERROR"
)

type TreeCloudArtifact

type TreeCloudArtifact interface {
	CloudArtifact
	Assembly() CloudAssembly
	Dependencies() *[]CloudArtifact
	File() *string
	HierarchicalId() *string
	Id() *string
	Manifest() *cloudassemblyschema.ArtifactManifest
	Messages() *[]*SynthesisMessage
	FindMetadataByType(type_ *string) *[]*MetadataEntryResult
}

Experimental.

func NewTreeCloudArtifact

func NewTreeCloudArtifact(assembly CloudAssembly, name *string, artifact *cloudassemblyschema.ArtifactManifest) TreeCloudArtifact

Experimental.

type VpcContextResponse

type VpcContextResponse struct {
	// AZs.
	// Experimental.
	AvailabilityZones *[]*string `json:"availabilityZones"`
	// VPC id.
	// Experimental.
	VpcId *string `json:"vpcId"`
	// IDs of all isolated subnets.
	//
	// Element count: #(availabilityZones) · #(isolatedGroups)
	// Experimental.
	IsolatedSubnetIds *[]*string `json:"isolatedSubnetIds"`
	// Name of isolated subnet groups.
	//
	// Element count: #(isolatedGroups)
	// Experimental.
	IsolatedSubnetNames *[]*string `json:"isolatedSubnetNames"`
	// Route Table IDs of isolated subnet groups.
	//
	// Element count: #(availabilityZones) · #(isolatedGroups)
	// Experimental.
	IsolatedSubnetRouteTableIds *[]*string `json:"isolatedSubnetRouteTableIds"`
	// IDs of all private subnets.
	//
	// Element count: #(availabilityZones) · #(privateGroups)
	// Experimental.
	PrivateSubnetIds *[]*string `json:"privateSubnetIds"`
	// Name of private subnet groups.
	//
	// Element count: #(privateGroups)
	// Experimental.
	PrivateSubnetNames *[]*string `json:"privateSubnetNames"`
	// Route Table IDs of private subnet groups.
	//
	// Element count: #(availabilityZones) · #(privateGroups)
	// Experimental.
	PrivateSubnetRouteTableIds *[]*string `json:"privateSubnetRouteTableIds"`
	// IDs of all public subnets.
	//
	// Element count: #(availabilityZones) · #(publicGroups)
	// Experimental.
	PublicSubnetIds *[]*string `json:"publicSubnetIds"`
	// Name of public subnet groups.
	//
	// Element count: #(publicGroups)
	// Experimental.
	PublicSubnetNames *[]*string `json:"publicSubnetNames"`
	// Route Table IDs of public subnet groups.
	//
	// Element count: #(availabilityZones) · #(publicGroups)
	// Experimental.
	PublicSubnetRouteTableIds *[]*string `json:"publicSubnetRouteTableIds"`
	// The subnet groups discovered for the given VPC.
	//
	// Unlike the above properties, this will include asymmetric subnets,
	// if the VPC has any.
	// This property will only be populated if {@link VpcContextQuery.returnAsymmetricSubnets}
	// is true.
	// Experimental.
	SubnetGroups *[]*VpcSubnetGroup `json:"subnetGroups"`
	// VPC cidr.
	// Experimental.
	VpcCidrBlock *string `json:"vpcCidrBlock"`
	// The VPN gateway ID.
	// Experimental.
	VpnGatewayId *string `json:"vpnGatewayId"`
}

Properties of a discovered VPC. Experimental.

type VpcSubnet

type VpcSubnet struct {
	// The code of the availability zone this subnet is in (for example, 'us-west-2a').
	// Experimental.
	AvailabilityZone *string `json:"availabilityZone"`
	// The identifier of the route table for this subnet.
	// Experimental.
	RouteTableId *string `json:"routeTableId"`
	// The identifier of the subnet.
	// Experimental.
	SubnetId *string `json:"subnetId"`
	// CIDR range of the subnet.
	// Experimental.
	Cidr *string `json:"cidr"`
}

A subnet representation that the VPC provider uses. Experimental.

type VpcSubnetGroup

type VpcSubnetGroup struct {
	// The name of the subnet group, determined by looking at the tags of of the subnets that belong to it.
	// Experimental.
	Name *string `json:"name"`
	// The subnets that are part of this group.
	//
	// There is no condition that the subnets have to be symmetric
	// in the group.
	// Experimental.
	Subnets *[]*VpcSubnet `json:"subnets"`
	// The type of the subnet group.
	// Experimental.
	Type VpcSubnetGroupType `json:"type"`
}

A group of subnets returned by the VPC provider.

The included subnets do NOT have to be symmetric! Experimental.

type VpcSubnetGroupType

type VpcSubnetGroupType string

The type of subnet group.

Same as SubnetType in the @aws-cdk/aws-ec2 package, but we can't use that because of cyclical dependencies. Experimental.

const (
	VpcSubnetGroupType_PUBLIC   VpcSubnetGroupType = "PUBLIC"
	VpcSubnetGroupType_PRIVATE  VpcSubnetGroupType = "PRIVATE"
	VpcSubnetGroupType_ISOLATED VpcSubnetGroupType = "ISOLATED"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL