cxapi

package
v2.1.0 Latest Latest
Warning

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

Go to latest
Published: Dec 8, 2021 License: Apache-2.0 Imports: 4 Imported by: 4

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).

func EnvironmentPlaceholders_ReplaceAsync

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

Like 'replace', but asynchronous.

func EnvironmentUtils_Format

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

Format an environment string from an account and region.

func NewAssetManifestArtifact_Override

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

func NewCloudArtifact_Override

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

func NewCloudAssemblyBuilder_Override

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

Initializes a cloud assembly builder.

func NewCloudAssembly_Override

func NewCloudAssembly_Override(c CloudAssembly, directory *string)

Reads a cloud assembly from the specified directory.

func NewCloudFormationStackArtifact_Override

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

func NewEnvironmentPlaceholders_Override

func NewEnvironmentPlaceholders_Override(e EnvironmentPlaceholders)

func NewEnvironmentUtils_Override

func NewEnvironmentUtils_Override(e EnvironmentUtils)

func NewNestedCloudAssemblyArtifact_Override

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

func NewTreeCloudArtifact_Override

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

Types

type AssemblyBuildOptions

type AssemblyBuildOptions struct {
}

TODO: EXAMPLE

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.

TODO: EXAMPLE

func NewAssetManifestArtifact

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

type AwsCloudFormationStackProperties

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

Artifact properties for CloudFormation stacks.

TODO: EXAMPLE

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.

TODO: EXAMPLE

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.

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.

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.

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.

func NewCloudArtifact

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

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.

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
	GetStackArtifact(artifactId *string) CloudFormationStackArtifact
	GetStackByName(stackName *string) CloudFormationStackArtifact
	Tree() TreeCloudArtifact
	TryGetArtifact(id *string) CloudArtifact
}

Represents a deployable cloud application.

TODO: EXAMPLE

func NewCloudAssembly

func NewCloudAssembly(directory *string) CloudAssembly

Reads a cloud assembly from the specified directory.

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.

TODO: EXAMPLE

func NewCloudAssemblyBuilder

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

Initializes a cloud assembly builder.

type CloudAssemblyBuilderProps

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

Construction properties for CloudAssemblyBuilder.

TODO: EXAMPLE

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
	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
}

TODO: EXAMPLE

func NewCloudFormationStackArtifact

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

type EndpointServiceAvailabilityZonesContextQuery

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

Query to hosted zone context provider.

TODO: EXAMPLE

type Environment

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

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

TODO: EXAMPLE

func EnvironmentUtils_Make

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

Build an environment object from an account and region.

func EnvironmentUtils_Parse

func EnvironmentUtils_Parse(environment *string) *Environment

type EnvironmentPlaceholderValues

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

Return the appropriate values for the environment placeholders.

TODO: EXAMPLE

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.

TODO: EXAMPLE

func NewEnvironmentPlaceholders

func NewEnvironmentPlaceholders() EnvironmentPlaceholders

type EnvironmentUtils

type EnvironmentUtils interface {
}

TODO: EXAMPLE

func NewEnvironmentUtils

func NewEnvironmentUtils() EnvironmentUtils

type IEnvironmentPlaceholderProvider

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

Return the appropriate values for the environment placeholders.

type KeyContextResponse

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

Properties of a discovered key.

TODO: EXAMPLE

type LoadBalancerContextResponse

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

Properties of a discovered load balancer.

TODO: EXAMPLE

type LoadBalancerIpAddressType

type LoadBalancerIpAddressType string

Load balancer ip address type.

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

type LoadBalancerListenerContextResponse

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

Properties of a discovered load balancer listener.

TODO: EXAMPLE

type MetadataEntryResult

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

TODO: EXAMPLE

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.

TODO: EXAMPLE

func NewNestedCloudAssemblyArtifact

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

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`.
	AllowAllOutbound *bool `json:"allowAllOutbound"`
	// The security group's id.
	SecurityGroupId *string `json:"securityGroupId"`
}

Properties of a discovered SecurityGroup.

TODO: EXAMPLE

type SynthesisMessage

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

TODO: EXAMPLE

type SynthesisMessageLevel

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

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
}

TODO: EXAMPLE

func NewTreeCloudArtifact

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

type VpcContextResponse

type VpcContextResponse struct {
	// AZs.
	AvailabilityZones *[]*string `json:"availabilityZones"`
	// IDs of all isolated subnets.
	//
	// Element count: #(availabilityZones) · #(isolatedGroups)
	IsolatedSubnetIds *[]*string `json:"isolatedSubnetIds"`
	// Name of isolated subnet groups.
	//
	// Element count: #(isolatedGroups)
	IsolatedSubnetNames *[]*string `json:"isolatedSubnetNames"`
	// Route Table IDs of isolated subnet groups.
	//
	// Element count: #(availabilityZones) · #(isolatedGroups)
	IsolatedSubnetRouteTableIds *[]*string `json:"isolatedSubnetRouteTableIds"`
	// IDs of all private subnets.
	//
	// Element count: #(availabilityZones) · #(privateGroups)
	PrivateSubnetIds *[]*string `json:"privateSubnetIds"`
	// Name of private subnet groups.
	//
	// Element count: #(privateGroups)
	PrivateSubnetNames *[]*string `json:"privateSubnetNames"`
	// Route Table IDs of private subnet groups.
	//
	// Element count: #(availabilityZones) · #(privateGroups)
	PrivateSubnetRouteTableIds *[]*string `json:"privateSubnetRouteTableIds"`
	// IDs of all public subnets.
	//
	// Element count: #(availabilityZones) · #(publicGroups)
	PublicSubnetIds *[]*string `json:"publicSubnetIds"`
	// Name of public subnet groups.
	//
	// Element count: #(publicGroups)
	PublicSubnetNames *[]*string `json:"publicSubnetNames"`
	// Route Table IDs of public subnet groups.
	//
	// Element count: #(availabilityZones) · #(publicGroups)
	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.
	SubnetGroups *[]*VpcSubnetGroup `json:"subnetGroups"`
	// VPC cidr.
	VpcCidrBlock *string `json:"vpcCidrBlock"`
	// VPC id.
	VpcId *string `json:"vpcId"`
	// The VPN gateway ID.
	VpnGatewayId *string `json:"vpnGatewayId"`
}

Properties of a discovered VPC.

TODO: EXAMPLE

type VpcSubnet

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

A subnet representation that the VPC provider uses.

TODO: EXAMPLE

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.
	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.
	Subnets *[]*VpcSubnet `json:"subnets"`
	// The type of the subnet group.
	Type VpcSubnetGroupType `json:"type"`
}

A group of subnets returned by the VPC provider.

The included subnets do NOT have to be symmetric!

TODO: EXAMPLE

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.

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

Jump to

Keyboard shortcuts

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