awslightsail

package
v2.10.0 Latest Latest
Warning

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

Go to latest
Published: Jan 29, 2022 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CfnAlarm_CFN_RESOURCE_TYPE_NAME added in v2.9.0

func CfnAlarm_CFN_RESOURCE_TYPE_NAME() *string

func CfnAlarm_IsCfnElement added in v2.9.0

func CfnAlarm_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnAlarm_IsCfnResource added in v2.9.0

func CfnAlarm_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnAlarm_IsConstruct added in v2.9.0

func CfnAlarm_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnBucket_CFN_RESOURCE_TYPE_NAME added in v2.9.0

func CfnBucket_CFN_RESOURCE_TYPE_NAME() *string

func CfnBucket_IsCfnElement added in v2.9.0

func CfnBucket_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnBucket_IsCfnResource added in v2.9.0

func CfnBucket_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnBucket_IsConstruct added in v2.9.0

func CfnBucket_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnCertificate_CFN_RESOURCE_TYPE_NAME added in v2.10.0

func CfnCertificate_CFN_RESOURCE_TYPE_NAME() *string

func CfnCertificate_IsCfnElement added in v2.10.0

func CfnCertificate_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCertificate_IsCfnResource added in v2.10.0

func CfnCertificate_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCertificate_IsConstruct added in v2.10.0

func CfnCertificate_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnContainer_CFN_RESOURCE_TYPE_NAME added in v2.10.0

func CfnContainer_CFN_RESOURCE_TYPE_NAME() *string

func CfnContainer_IsCfnElement added in v2.10.0

func CfnContainer_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnContainer_IsCfnResource added in v2.10.0

func CfnContainer_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnContainer_IsConstruct added in v2.10.0

func CfnContainer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnDatabase_CFN_RESOURCE_TYPE_NAME

func CfnDatabase_CFN_RESOURCE_TYPE_NAME() *string

func CfnDatabase_IsCfnElement

func CfnDatabase_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnDatabase_IsCfnResource

func CfnDatabase_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnDatabase_IsConstruct

func CfnDatabase_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnDisk_CFN_RESOURCE_TYPE_NAME

func CfnDisk_CFN_RESOURCE_TYPE_NAME() *string

func CfnDisk_IsCfnElement

func CfnDisk_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnDisk_IsCfnResource

func CfnDisk_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnDisk_IsConstruct

func CfnDisk_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnDistribution_CFN_RESOURCE_TYPE_NAME added in v2.10.0

func CfnDistribution_CFN_RESOURCE_TYPE_NAME() *string

func CfnDistribution_IsCfnElement added in v2.10.0

func CfnDistribution_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnDistribution_IsCfnResource added in v2.10.0

func CfnDistribution_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnDistribution_IsConstruct added in v2.10.0

func CfnDistribution_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnInstance_CFN_RESOURCE_TYPE_NAME

func CfnInstance_CFN_RESOURCE_TYPE_NAME() *string

func CfnInstance_IsCfnElement

func CfnInstance_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnInstance_IsCfnResource

func CfnInstance_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnInstance_IsConstruct

func CfnInstance_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnLoadBalancerTlsCertificate_CFN_RESOURCE_TYPE_NAME added in v2.9.0

func CfnLoadBalancerTlsCertificate_CFN_RESOURCE_TYPE_NAME() *string

func CfnLoadBalancerTlsCertificate_IsCfnElement added in v2.9.0

func CfnLoadBalancerTlsCertificate_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnLoadBalancerTlsCertificate_IsCfnResource added in v2.9.0

func CfnLoadBalancerTlsCertificate_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnLoadBalancerTlsCertificate_IsConstruct added in v2.9.0

func CfnLoadBalancerTlsCertificate_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnLoadBalancer_CFN_RESOURCE_TYPE_NAME added in v2.9.0

func CfnLoadBalancer_CFN_RESOURCE_TYPE_NAME() *string

func CfnLoadBalancer_IsCfnElement added in v2.9.0

func CfnLoadBalancer_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnLoadBalancer_IsCfnResource added in v2.9.0

func CfnLoadBalancer_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnLoadBalancer_IsConstruct added in v2.9.0

func CfnLoadBalancer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnStaticIp_CFN_RESOURCE_TYPE_NAME

func CfnStaticIp_CFN_RESOURCE_TYPE_NAME() *string

func CfnStaticIp_IsCfnElement

func CfnStaticIp_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnStaticIp_IsCfnResource

func CfnStaticIp_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnStaticIp_IsConstruct

func CfnStaticIp_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func NewCfnAlarm_Override added in v2.9.0

func NewCfnAlarm_Override(c CfnAlarm, scope constructs.Construct, id *string, props *CfnAlarmProps)

Create a new `AWS::Lightsail::Alarm`.

func NewCfnBucket_Override added in v2.9.0

func NewCfnBucket_Override(c CfnBucket, scope constructs.Construct, id *string, props *CfnBucketProps)

Create a new `AWS::Lightsail::Bucket`.

func NewCfnCertificate_Override added in v2.10.0

func NewCfnCertificate_Override(c CfnCertificate, scope constructs.Construct, id *string, props *CfnCertificateProps)

Create a new `AWS::Lightsail::Certificate`.

func NewCfnContainer_Override added in v2.10.0

func NewCfnContainer_Override(c CfnContainer, scope constructs.Construct, id *string, props *CfnContainerProps)

Create a new `AWS::Lightsail::Container`.

func NewCfnDatabase_Override

func NewCfnDatabase_Override(c CfnDatabase, scope constructs.Construct, id *string, props *CfnDatabaseProps)

Create a new `AWS::Lightsail::Database`.

func NewCfnDisk_Override

func NewCfnDisk_Override(c CfnDisk, scope constructs.Construct, id *string, props *CfnDiskProps)

Create a new `AWS::Lightsail::Disk`.

func NewCfnDistribution_Override added in v2.10.0

func NewCfnDistribution_Override(c CfnDistribution, scope constructs.Construct, id *string, props *CfnDistributionProps)

Create a new `AWS::Lightsail::Distribution`.

func NewCfnInstance_Override

func NewCfnInstance_Override(c CfnInstance, scope constructs.Construct, id *string, props *CfnInstanceProps)

Create a new `AWS::Lightsail::Instance`.

func NewCfnLoadBalancerTlsCertificate_Override added in v2.9.0

func NewCfnLoadBalancerTlsCertificate_Override(c CfnLoadBalancerTlsCertificate, scope constructs.Construct, id *string, props *CfnLoadBalancerTlsCertificateProps)

Create a new `AWS::Lightsail::LoadBalancerTlsCertificate`.

func NewCfnLoadBalancer_Override added in v2.9.0

func NewCfnLoadBalancer_Override(c CfnLoadBalancer, scope constructs.Construct, id *string, props *CfnLoadBalancerProps)

Create a new `AWS::Lightsail::LoadBalancer`.

func NewCfnStaticIp_Override

func NewCfnStaticIp_Override(c CfnStaticIp, scope constructs.Construct, id *string, props *CfnStaticIpProps)

Create a new `AWS::Lightsail::StaticIp`.

Types

type CfnAlarm added in v2.9.0

type CfnAlarm interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AlarmName() *string
	SetAlarmName(val *string)
	AttrAlarmArn() *string
	AttrState() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	ComparisonOperator() *string
	SetComparisonOperator(val *string)
	ContactProtocols() *[]*string
	SetContactProtocols(val *[]*string)
	CreationStack() *[]*string
	DatapointsToAlarm() *float64
	SetDatapointsToAlarm(val *float64)
	EvaluationPeriods() *float64
	SetEvaluationPeriods(val *float64)
	LogicalId() *string
	MetricName() *string
	SetMetricName(val *string)
	MonitoredResourceName() *string
	SetMonitoredResourceName(val *string)
	Node() constructs.Node
	NotificationEnabled() interface{}
	SetNotificationEnabled(val interface{})
	NotificationTriggers() *[]*string
	SetNotificationTriggers(val *[]*string)
	Ref() *string
	Stack() awscdk.Stack
	Threshold() *float64
	SetThreshold(val *float64)
	TreatMissingData() *string
	SetTreatMissingData(val *string)
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::Alarm`.

The `AWS::Lightsail::Alarm` resource specifies an alarm that can be used to monitor a single metric for one of your Lightsail resources.

TODO: EXAMPLE

func NewCfnAlarm added in v2.9.0

func NewCfnAlarm(scope constructs.Construct, id *string, props *CfnAlarmProps) CfnAlarm

Create a new `AWS::Lightsail::Alarm`.

type CfnAlarmProps added in v2.9.0

type CfnAlarmProps struct {
	// The name of the alarm.
	AlarmName *string `json:"alarmName" yaml:"alarmName"`
	// The arithmetic operation to use when comparing the specified statistic and threshold.
	ComparisonOperator *string `json:"comparisonOperator" yaml:"comparisonOperator"`
	// The number of periods over which data is compared to the specified threshold.
	EvaluationPeriods *float64 `json:"evaluationPeriods" yaml:"evaluationPeriods"`
	// The name of the metric associated with the alarm.
	MetricName *string `json:"metricName" yaml:"metricName"`
	// The name of the Lightsail resource that the alarm monitors.
	MonitoredResourceName *string `json:"monitoredResourceName" yaml:"monitoredResourceName"`
	// The value against which the specified statistic is compared.
	Threshold *float64 `json:"threshold" yaml:"threshold"`
	// The contact protocols for the alarm, such as `Email` , `SMS` (text messaging), or both.
	//
	// *Allowed Values* : `Email` | `SMS`
	ContactProtocols *[]*string `json:"contactProtocols" yaml:"contactProtocols"`
	// The number of data points within the evaluation periods that must be breaching to cause the alarm to go to the `ALARM` state.
	DatapointsToAlarm *float64 `json:"datapointsToAlarm" yaml:"datapointsToAlarm"`
	// A Boolean value indicating whether the alarm is enabled.
	NotificationEnabled interface{} `json:"notificationEnabled" yaml:"notificationEnabled"`
	// The alarm states that trigger a notification.
	//
	// > To specify the `OK` and `INSUFFICIENT_DATA` values, you must also specify `ContactProtocols` values. Otherwise, the `OK` and `INSUFFICIENT_DATA` values will not take effect and the stack will drift.
	//
	// *Allowed Values* : `OK` | `ALARM` | `INSUFFICIENT_DATA`
	NotificationTriggers *[]*string `json:"notificationTriggers" yaml:"notificationTriggers"`
	// Specifies how the alarm handles missing data points.
	//
	// An alarm can treat missing data in the following ways:
	//
	// - `breaching` - Assumes the missing data is not within the threshold. Missing data counts towards the number of times that the metric is not within the threshold.
	// - `notBreaching` - Assumes the missing data is within the threshold. Missing data does not count towards the number of times that the metric is not within the threshold.
	// - `ignore` - Ignores the missing data. Maintains the current alarm state.
	// - `missing` - Missing data is treated as missing.
	TreatMissingData *string `json:"treatMissingData" yaml:"treatMissingData"`
}

Properties for defining a `CfnAlarm`.

TODO: EXAMPLE

type CfnBucket added in v2.9.0

type CfnBucket interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AccessRules() interface{}
	SetAccessRules(val interface{})
	AttrAbleToUpdateBundle() awscdk.IResolvable
	AttrBucketArn() *string
	AttrUrl() *string
	BucketName() *string
	SetBucketName(val *string)
	BundleId() *string
	SetBundleId(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Node() constructs.Node
	ObjectVersioning() interface{}
	SetObjectVersioning(val interface{})
	ReadOnlyAccessAccounts() *[]*string
	SetReadOnlyAccessAccounts(val *[]*string)
	Ref() *string
	ResourcesReceivingAccess() *[]*string
	SetResourcesReceivingAccess(val *[]*string)
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::Bucket`.

The `AWS::Lightsail::Bucket` resource specifies a bucket.

TODO: EXAMPLE

func NewCfnBucket added in v2.9.0

func NewCfnBucket(scope constructs.Construct, id *string, props *CfnBucketProps) CfnBucket

Create a new `AWS::Lightsail::Bucket`.

type CfnBucketProps added in v2.9.0

type CfnBucketProps struct {
	// The name of the bucket.
	BucketName *string `json:"bucketName" yaml:"bucketName"`
	// The bundle ID for the bucket (for example, `small_1_0` ).
	//
	// A bucket bundle specifies the monthly cost, storage space, and data transfer quota for a bucket.
	BundleId *string `json:"bundleId" yaml:"bundleId"`
	// An object that describes the access rules for the bucket.
	AccessRules interface{} `json:"accessRules" yaml:"accessRules"`
	// Indicates whether object versioning is enabled for the bucket.
	//
	// The following options can be configured:
	//
	// - `Enabled` - Object versioning is enabled.
	// - `Suspended` - Object versioning was previously enabled but is currently suspended. Existing object versions are retained.
	// - `NeverEnabled` - Object versioning has never been enabled.
	ObjectVersioning interface{} `json:"objectVersioning" yaml:"objectVersioning"`
	// An array of AWS account IDs that have read-only access to the bucket.
	ReadOnlyAccessAccounts *[]*string `json:"readOnlyAccessAccounts" yaml:"readOnlyAccessAccounts"`
	// An array of Lightsail instances that have access to the bucket.
	ResourcesReceivingAccess *[]*string `json:"resourcesReceivingAccess" yaml:"resourcesReceivingAccess"`
	// An array of key-value pairs to apply to this resource.
	//
	// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide* .
	//
	// > The `Value` of `Tags` is optional for Lightsail resources.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnBucket`.

TODO: EXAMPLE

type CfnBucket_AccessRulesProperty added in v2.9.0

type CfnBucket_AccessRulesProperty struct {
	// A Boolean value indicating whether the access control list (ACL) permissions that are applied to individual objects override the `GetObject` option that is currently specified.
	//
	// When this is true, you can use the [PutObjectAcl](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectAcl.html) Amazon S3 API operation to set individual objects to public (read-only) or private, using either the `public-read` ACL or the `private` ACL.
	AllowPublicOverrides interface{} `json:"allowPublicOverrides" yaml:"allowPublicOverrides"`
	// Specifies the anonymous access to all objects in a bucket.
	//
	// The following options can be specified:
	//
	// - `public` - Sets all objects in the bucket to public (read-only), making them readable by everyone on the internet.
	//
	// If the `GetObject` value is set to `public` , then all objects in the bucket default to public regardless of the `allowPublicOverrides` value.
	// - `private` - Sets all objects in the bucket to private, making them readable only by you and anyone that you grant access to.
	//
	// If the `GetObject` value is set to `private` , and the `allowPublicOverrides` value is set to `true` , then all objects in the bucket default to private unless they are configured with a `public-read` ACL. Individual objects with a `public-read` ACL are readable by everyone on the internet.
	ObjectAccess *string `json:"objectAccess" yaml:"objectAccess"`
}

`AccessRules` is a property of the [AWS::Lightsail::Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-bucket.html) resource. It describes access rules for a bucket.

TODO: EXAMPLE

type CfnCertificate added in v2.10.0

type CfnCertificate interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrCertificateArn() *string
	AttrStatus() *string
	CertificateName() *string
	SetCertificateName(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	DomainName() *string
	SetDomainName(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	SubjectAlternativeNames() *[]*string
	SetSubjectAlternativeNames(val *[]*string)
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::Certificate`.

The `AWS::Lightsail::Certificate` resource specifies an SSL/TLS certificate that you can use with a content delivery network (CDN) distribution and a container service.

> For information about certificates that you can use with a load balancer, see [AWS::Lightsail::LoadBalancerTlsCertificate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancertlscertificate.html) .

TODO: EXAMPLE

func NewCfnCertificate added in v2.10.0

func NewCfnCertificate(scope constructs.Construct, id *string, props *CfnCertificateProps) CfnCertificate

Create a new `AWS::Lightsail::Certificate`.

type CfnCertificateProps added in v2.10.0

type CfnCertificateProps struct {
	// The name of the certificate.
	CertificateName *string `json:"certificateName" yaml:"certificateName"`
	// The domain name of the certificate.
	DomainName *string `json:"domainName" yaml:"domainName"`
	// An array of strings that specify the alternate domains (such as `example.org` ) and subdomains (such as `blog.example.com` ) of the certificate.
	SubjectAlternativeNames *[]*string `json:"subjectAlternativeNames" yaml:"subjectAlternativeNames"`
	// An array of key-value pairs to apply to this resource.
	//
	// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide* .
	//
	// > The `Value` of `Tags` is optional for Lightsail resources.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnCertificate`.

TODO: EXAMPLE

type CfnContainer added in v2.10.0

type CfnContainer interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrContainerArn() *string
	AttrUrl() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	ContainerServiceDeployment() interface{}
	SetContainerServiceDeployment(val interface{})
	CreationStack() *[]*string
	IsDisabled() interface{}
	SetIsDisabled(val interface{})
	LogicalId() *string
	Node() constructs.Node
	Power() *string
	SetPower(val *string)
	PublicDomainNames() interface{}
	SetPublicDomainNames(val interface{})
	Ref() *string
	Scale() *float64
	SetScale(val *float64)
	ServiceName() *string
	SetServiceName(val *string)
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::Container`.

The `AWS::Lightsail::Container` resource specifies a container service.

A Lightsail container service is a compute resource to which you can deploy containers.

TODO: EXAMPLE

func NewCfnContainer added in v2.10.0

func NewCfnContainer(scope constructs.Construct, id *string, props *CfnContainerProps) CfnContainer

Create a new `AWS::Lightsail::Container`.

type CfnContainerProps added in v2.10.0

type CfnContainerProps struct {
	// The power specification of the container service.
	//
	// The power specifies the amount of RAM, the number of vCPUs, and the base price of the container service.
	Power *string `json:"power" yaml:"power"`
	// The scale specification of the container service.
	//
	// The scale specifies the allocated compute nodes of the container service.
	Scale *float64 `json:"scale" yaml:"scale"`
	// The name of the container service.
	ServiceName *string `json:"serviceName" yaml:"serviceName"`
	// An object that describes the current container deployment of the container service.
	ContainerServiceDeployment interface{} `json:"containerServiceDeployment" yaml:"containerServiceDeployment"`
	// A Boolean value indicating whether the container service is disabled.
	IsDisabled interface{} `json:"isDisabled" yaml:"isDisabled"`
	// The public domain name of the container service, such as `example.com` and `www.example.com` .
	//
	// You can specify up to four public domain names for a container service. The domain names that you specify are used when you create a deployment with a container that is configured as the public endpoint of your container service.
	//
	// If you don't specify public domain names, then you can use the default domain of the container service.
	//
	// > You must create and validate an SSL/TLS certificate before you can use public domain names with your container service. Use the [AWS::Lightsail::Certificate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-certificate.html) resource to create a certificate for the public domain names that you want to use with your container service.
	PublicDomainNames interface{} `json:"publicDomainNames" yaml:"publicDomainNames"`
	// An array of key-value pairs to apply to this resource.
	//
	// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide* .
	//
	// > The `Value` of `Tags` is optional for Lightsail resources.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnContainer`.

TODO: EXAMPLE

type CfnContainer_ContainerProperty added in v2.10.0

type CfnContainer_ContainerProperty struct {
	// The launch command for the container.
	Command *[]*string `json:"command" yaml:"command"`
	// The name of the container.
	ContainerName *string `json:"containerName" yaml:"containerName"`
	// The environment variables of the container.
	Environment interface{} `json:"environment" yaml:"environment"`
	// The name of the image used for the container.
	//
	// Container images that are sourced from (registered and stored on) your container service start with a colon ( `:` ). For example, if your container service name is `container-service-1` , the container image label is `mystaticsite` , and you want to use the third version ( `3` ) of the registered container image, then you should specify `:container-service-1.mystaticsite.3` . To use the latest version of a container image, specify `latest` instead of a version number (for example, `:container-service-1.mystaticsite.latest` ). Your container service will automatically use the highest numbered version of the registered container image.
	//
	// Container images that are sourced from a public registry like Docker Hub don’t start with a colon. For example, `nginx:latest` or `nginx` .
	Image *string `json:"image" yaml:"image"`
	// An object that describes the open firewall ports and protocols of the container.
	Ports interface{} `json:"ports" yaml:"ports"`
}

`Container` is a property of the [ContainerServiceDeployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-containerservicedeployment.html) property. It describes the settings of a container that will be launched, or that is launched, to an Amazon Lightsail container service.

TODO: EXAMPLE

type CfnContainer_ContainerServiceDeploymentProperty added in v2.10.0

type CfnContainer_ContainerServiceDeploymentProperty struct {
	// An object that describes the configuration for the containers of the deployment.
	Containers interface{} `json:"containers" yaml:"containers"`
	// An object that describes the endpoint of the deployment.
	PublicEndpoint interface{} `json:"publicEndpoint" yaml:"publicEndpoint"`
}

`ContainerServiceDeployment` is a property of the [AWS::Lightsail::Container](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-container.html) resource. It describes a container deployment configuration of a container service.

A deployment specifies the settings, such as the ports and launch command, of containers that are deployed to your container service.

TODO: EXAMPLE

type CfnContainer_EnvironmentVariableProperty added in v2.10.0

type CfnContainer_EnvironmentVariableProperty struct {
	// The environment variable value.
	Value *string `json:"value" yaml:"value"`
	// The environment variable key.
	Variable *string `json:"variable" yaml:"variable"`
}

`EnvironmentVariable` is a property of the [Container](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-container.html) property. It describes the environment variables of a container on a container service which are key-value parameters that provide dynamic configuration of the application or script run by the container.

TODO: EXAMPLE

type CfnContainer_HealthCheckConfigProperty added in v2.10.0

type CfnContainer_HealthCheckConfigProperty struct {
	// The number of consecutive health check successes required before moving the container to the `Healthy` state.
	//
	// The default value is `2` .
	HealthyThreshold *float64 `json:"healthyThreshold" yaml:"healthyThreshold"`
	// The approximate interval, in seconds, between health checks of an individual container.
	//
	// You can specify between `5` and `300` seconds. The default value is `5` .
	IntervalSeconds *float64 `json:"intervalSeconds" yaml:"intervalSeconds"`
	// The path on the container on which to perform the health check.
	//
	// The default value is `/` .
	Path *string `json:"path" yaml:"path"`
	// The HTTP codes to use when checking for a successful response from a container.
	//
	// You can specify values between `200` and `499` . You can specify multiple values (for example, `200,202` ) or a range of values (for example, `200-299` ).
	SuccessCodes *string `json:"successCodes" yaml:"successCodes"`
	// The amount of time, in seconds, during which no response means a failed health check.
	//
	// You can specify between `2` and `60` seconds. The default value is `2` .
	TimeoutSeconds *float64 `json:"timeoutSeconds" yaml:"timeoutSeconds"`
	// The number of consecutive health check failures required before moving the container to the `Unhealthy` state.
	//
	// The default value is `2` .
	UnhealthyThreshold *float64 `json:"unhealthyThreshold" yaml:"unhealthyThreshold"`
}

`HealthCheckConfig` is a property of the [PublicEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-publicendpoint.html) property. It describes the healthcheck configuration of a container deployment on a container service.

TODO: EXAMPLE

type CfnContainer_PortInfoProperty added in v2.10.0

type CfnContainer_PortInfoProperty struct {
	// The open firewall ports of the container.
	Port *string `json:"port" yaml:"port"`
	// The protocol name for the open ports.
	//
	// *Allowed values* : `HTTP` | `HTTPS` | `TCP` | `UDP`
	Protocol *string `json:"protocol" yaml:"protocol"`
}

`PortInfo` is a property of the [Container](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-container.html) property. It describes the ports to open and the protocols to use for a container on a Amazon Lightsail container service.

TODO: EXAMPLE

type CfnContainer_PublicDomainNameProperty added in v2.10.0

type CfnContainer_PublicDomainNameProperty struct {
	// The name of the certificate for the public domains.
	CertificateName *string `json:"certificateName" yaml:"certificateName"`
	// The public domain names to use with the container service.
	DomainNames *[]*string `json:"domainNames" yaml:"domainNames"`
}

`PublicDomainName` is a property of the [AWS::Lightsail::Container](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-container.html) resource. It describes the public domain names to use with a container service, such as `example.com` and `www.example.com` . It also describes the certificates to use with a container service.

TODO: EXAMPLE

type CfnContainer_PublicEndpointProperty added in v2.10.0

type CfnContainer_PublicEndpointProperty struct {
	// The name of the container entry of the deployment that the endpoint configuration applies to.
	ContainerName *string `json:"containerName" yaml:"containerName"`
	// The port of the specified container to which traffic is forwarded to.
	ContainerPort *float64 `json:"containerPort" yaml:"containerPort"`
	// An object that describes the health check configuration of the container.
	HealthCheckConfig interface{} `json:"healthCheckConfig" yaml:"healthCheckConfig"`
}

`PublicEndpoint` is a property of the [ContainerServiceDeployment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-container-containerservicedeployment.html) property. It describes describes the settings of the public endpoint of a container on a container service.

TODO: EXAMPLE

type CfnDatabase

type CfnDatabase interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrDatabaseArn() *string
	AvailabilityZone() *string
	SetAvailabilityZone(val *string)
	BackupRetention() interface{}
	SetBackupRetention(val interface{})
	CaCertificateIdentifier() *string
	SetCaCertificateIdentifier(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	MasterDatabaseName() *string
	SetMasterDatabaseName(val *string)
	MasterUsername() *string
	SetMasterUsername(val *string)
	MasterUserPassword() *string
	SetMasterUserPassword(val *string)
	Node() constructs.Node
	PreferredBackupWindow() *string
	SetPreferredBackupWindow(val *string)
	PreferredMaintenanceWindow() *string
	SetPreferredMaintenanceWindow(val *string)
	PubliclyAccessible() interface{}
	SetPubliclyAccessible(val interface{})
	Ref() *string
	RelationalDatabaseBlueprintId() *string
	SetRelationalDatabaseBlueprintId(val *string)
	RelationalDatabaseBundleId() *string
	SetRelationalDatabaseBundleId(val *string)
	RelationalDatabaseName() *string
	SetRelationalDatabaseName(val *string)
	RelationalDatabaseParameters() interface{}
	SetRelationalDatabaseParameters(val interface{})
	RotateMasterUserPassword() interface{}
	SetRotateMasterUserPassword(val interface{})
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::Database`.

The `AWS::Lightsail::Database` resource specifies an Amazon Lightsail database.

TODO: EXAMPLE

func NewCfnDatabase

func NewCfnDatabase(scope constructs.Construct, id *string, props *CfnDatabaseProps) CfnDatabase

Create a new `AWS::Lightsail::Database`.

type CfnDatabaseProps

type CfnDatabaseProps struct {
	// The meaning of this parameter differs according to the database engine you use.
	//
	// *MySQL*
	//
	// The name of the database to create when the Lightsail database resource is created. If this parameter isn't specified, no database is created in the database resource.
	//
	// Constraints:
	//
	// - Must contain 1-64 letters or numbers.
	// - Must begin with a letter. Subsequent characters can be letters, underscores, or numbers (0-9).
	// - Can't be a word reserved by the specified database engine.
	//
	// For more information about reserved words in MySQL, see the Keywords and Reserved Words articles for [MySQL 5.6](https://docs.aws.amazon.com/https://dev.mysql.com/doc/refman/5.6/en/keywords.html) , [MySQL 5.7](https://docs.aws.amazon.com/https://dev.mysql.com/doc/refman/5.7/en/keywords.html) , and [MySQL 8.0](https://docs.aws.amazon.com/https://dev.mysql.com/doc/refman/8.0/en/keywords.html) .
	//
	// *PostgreSQL*
	//
	// The name of the database to create when the Lightsail database resource is created. If this parameter isn't specified, a database named `postgres` is created in the database resource.
	//
	// Constraints:
	//
	// - Must contain 1-63 letters or numbers.
	// - Must begin with a letter. Subsequent characters can be letters, underscores, or numbers (0-9).
	// - Can't be a word reserved by the specified database engine.
	//
	// For more information about reserved words in PostgreSQL, see the SQL Key Words articles for [PostgreSQL 9.6](https://docs.aws.amazon.com/https://www.postgresql.org/docs/9.6/sql-keywords-appendix.html) , [PostgreSQL 10](https://docs.aws.amazon.com/https://www.postgresql.org/docs/10/sql-keywords-appendix.html) , [PostgreSQL 11](https://docs.aws.amazon.com/https://www.postgresql.org/docs/11/sql-keywords-appendix.html) , and [PostgreSQL 12](https://docs.aws.amazon.com/https://www.postgresql.org/docs/12/sql-keywords-appendix.html) .
	MasterDatabaseName *string `json:"masterDatabaseName" yaml:"masterDatabaseName"`
	// The name for the primary user.
	//
	// *MySQL*
	//
	// Constraints:
	//
	// - Required for MySQL.
	// - Must be 1-16 letters or numbers. Can contain underscores.
	// - First character must be a letter.
	// - Can't be a reserved word for the chosen database engine.
	//
	// For more information about reserved words in MySQL 5.6 or 5.7, see the Keywords and Reserved Words articles for [MySQL 5.6](https://docs.aws.amazon.com/https://dev.mysql.com/doc/refman/5.6/en/keywords.html) , [MySQL 5.7](https://docs.aws.amazon.com/https://dev.mysql.com/doc/refman/5.7/en/keywords.html) , or [MySQL 8.0](https://docs.aws.amazon.com/https://dev.mysql.com/doc/refman/8.0/en/keywords.html) .
	//
	// *PostgreSQL*
	//
	// Constraints:
	//
	// - Required for PostgreSQL.
	// - Must be 1-63 letters or numbers. Can contain underscores.
	// - First character must be a letter.
	// - Can't be a reserved word for the chosen database engine.
	//
	// For more information about reserved words in MySQL 5.6 or 5.7, see the Keywords and Reserved Words articles for [PostgreSQL 9.6](https://docs.aws.amazon.com/https://www.postgresql.org/docs/9.6/sql-keywords-appendix.html) , [PostgreSQL 10](https://docs.aws.amazon.com/https://www.postgresql.org/docs/10/sql-keywords-appendix.html) , [PostgreSQL 11](https://docs.aws.amazon.com/https://www.postgresql.org/docs/11/sql-keywords-appendix.html) , and [PostgreSQL 12](https://docs.aws.amazon.com/https://www.postgresql.org/docs/12/sql-keywords-appendix.html) .
	MasterUsername *string `json:"masterUsername" yaml:"masterUsername"`
	// The blueprint ID for the database (for example, `mysql_8_0` ).
	RelationalDatabaseBlueprintId *string `json:"relationalDatabaseBlueprintId" yaml:"relationalDatabaseBlueprintId"`
	// The bundle ID for the database (for example, `medium_1_0` ).
	RelationalDatabaseBundleId *string `json:"relationalDatabaseBundleId" yaml:"relationalDatabaseBundleId"`
	// The name of the instance.
	RelationalDatabaseName *string `json:"relationalDatabaseName" yaml:"relationalDatabaseName"`
	// The Availability Zone for the database.
	AvailabilityZone *string `json:"availabilityZone" yaml:"availabilityZone"`
	// A Boolean value indicating whether automated backup retention is enabled for the database.
	BackupRetention interface{} `json:"backupRetention" yaml:"backupRetention"`
	// The certificate associated with the database.
	CaCertificateIdentifier *string `json:"caCertificateIdentifier" yaml:"caCertificateIdentifier"`
	// The password for the primary user of the database.
	//
	// The password can include any printable ASCII character except the following: /, ", or @. It cannot contain spaces.
	//
	// > The `MasterUserPassword` and `RotateMasterUserPassword` parameters cannot be used together in the same template.
	//
	// *MySQL*
	//
	// Constraints: Must contain 8-41 characters.
	//
	// *PostgreSQL*
	//
	// Constraints: Must contain 8-128 characters.
	MasterUserPassword *string `json:"masterUserPassword" yaml:"masterUserPassword"`
	// The daily time range during which automated backups are created for the database (for example, `16:00-16:30` ).
	PreferredBackupWindow *string `json:"preferredBackupWindow" yaml:"preferredBackupWindow"`
	// The weekly time range during which system maintenance can occur for the database, formatted as follows: `ddd:hh24:mi-ddd:hh24:mi` .
	//
	// For example, `Tue:17:00-Tue:17:30` .
	PreferredMaintenanceWindow *string `json:"preferredMaintenanceWindow" yaml:"preferredMaintenanceWindow"`
	// A Boolean value indicating whether the database is accessible to anyone on the internet.
	PubliclyAccessible interface{} `json:"publiclyAccessible" yaml:"publiclyAccessible"`
	// An array of parameters for the database.
	RelationalDatabaseParameters interface{} `json:"relationalDatabaseParameters" yaml:"relationalDatabaseParameters"`
	// A Boolean value indicating whether to change the primary user password to a new, strong password generated by Lightsail .
	//
	// > The `RotateMasterUserPassword` and `MasterUserPassword` parameters cannot be used together in the same template.
	RotateMasterUserPassword interface{} `json:"rotateMasterUserPassword" yaml:"rotateMasterUserPassword"`
	// An array of key-value pairs to apply to this resource.
	//
	// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide* .
	//
	// > The `Value` of `Tags` is optional for Lightsail resources.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnDatabase`.

TODO: EXAMPLE

type CfnDatabase_RelationalDatabaseParameterProperty

type CfnDatabase_RelationalDatabaseParameterProperty struct {
	// The valid range of values for the parameter.
	AllowedValues *string `json:"allowedValues" yaml:"allowedValues"`
	// Indicates when parameter updates are applied.
	//
	// Can be `immediate` or `pending-reboot` .
	ApplyMethod *string `json:"applyMethod" yaml:"applyMethod"`
	// Specifies the engine-specific parameter type.
	ApplyType *string `json:"applyType" yaml:"applyType"`
	// The valid data type of the parameter.
	DataType *string `json:"dataType" yaml:"dataType"`
	// A description of the parameter.
	Description *string `json:"description" yaml:"description"`
	// A Boolean value indicating whether the parameter can be modified.
	IsModifiable interface{} `json:"isModifiable" yaml:"isModifiable"`
	// The name of the parameter.
	ParameterName *string `json:"parameterName" yaml:"parameterName"`
	// The value for the parameter.
	ParameterValue *string `json:"parameterValue" yaml:"parameterValue"`
}

`RelationalDatabaseParameter` is a property of the [AWS::Lightsail::Database](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-database.html) resource. It describes parameters for the database.

TODO: EXAMPLE

type CfnDisk

type CfnDisk interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AddOns() interface{}
	SetAddOns(val interface{})
	AttrAttachedTo() *string
	AttrAttachmentState() *string
	AttrDiskArn() *string
	AttrIops() *float64
	AttrIsAttached() awscdk.IResolvable
	AttrPath() *string
	AttrResourceType() *string
	AttrState() *string
	AttrSupportCode() *string
	AvailabilityZone() *string
	SetAvailabilityZone(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	DiskName() *string
	SetDiskName(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	SizeInGb() *float64
	SetSizeInGb(val *float64)
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::Disk`.

The `AWS::Lightsail::Disk` resource specifies a disk that can be attached to an Amazon Lightsail instance that is in the same AWS Region and Availability Zone.

TODO: EXAMPLE

func NewCfnDisk

func NewCfnDisk(scope constructs.Construct, id *string, props *CfnDiskProps) CfnDisk

Create a new `AWS::Lightsail::Disk`.

type CfnDiskProps

type CfnDiskProps struct {
	// The name of the disk.
	DiskName *string `json:"diskName" yaml:"diskName"`
	// The size of the disk in GB.
	SizeInGb *float64 `json:"sizeInGb" yaml:"sizeInGb"`
	// An array of add-ons for the disk.
	//
	// > If the disk has an add-on enabled when performing a delete disk request, the add-on is automatically disabled before the disk is deleted.
	AddOns interface{} `json:"addOns" yaml:"addOns"`
	// The AWS Region and Availability Zone location for the disk (for example, `us-east-1a` ).
	AvailabilityZone *string `json:"availabilityZone" yaml:"availabilityZone"`
	// An array of key-value pairs to apply to this resource.
	//
	// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide* .
	//
	// > The `Value` of `Tags` is optional for Lightsail resources.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnDisk`.

TODO: EXAMPLE

type CfnDisk_AddOnProperty

type CfnDisk_AddOnProperty struct {
	// The add-on type (for example, `AutoSnapshot` ).
	//
	// > `AutoSnapshot` is the only add-on that can be enabled for a disk.
	AddOnType *string `json:"addOnType" yaml:"addOnType"`
	// The parameters for the automatic snapshot add-on, such as the daily time when an automatic snapshot will be created.
	AutoSnapshotAddOnRequest interface{} `json:"autoSnapshotAddOnRequest" yaml:"autoSnapshotAddOnRequest"`
	// The status of the add-on.
	//
	// Valid Values: `Enabled` | `Disabled`
	Status *string `json:"status" yaml:"status"`
}

`AddOn` is a property of the [AWS::Lightsail::Disk](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-disk.html) resource. It describes the add-ons for a disk.

TODO: EXAMPLE

type CfnDisk_AutoSnapshotAddOnProperty

type CfnDisk_AutoSnapshotAddOnProperty struct {
	// The daily time when an automatic snapshot will be created.
	//
	// Constraints:
	//
	// - Must be in `HH:00` format, and in an hourly increment.
	// - Specified in Coordinated Universal Time (UTC).
	// - The snapshot will be automatically created between the time specified and up to 45 minutes after.
	SnapshotTimeOfDay *string `json:"snapshotTimeOfDay" yaml:"snapshotTimeOfDay"`
}

`AutoSnapshotAddOn` is a property of the [AddOn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-disk-addon.html) property. It describes the automatic snapshot add-on for a disk.

TODO: EXAMPLE

type CfnDistribution added in v2.10.0

type CfnDistribution interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrAbleToUpdateBundle() awscdk.IResolvable
	AttrDistributionArn() *string
	AttrStatus() *string
	BundleId() *string
	SetBundleId(val *string)
	CacheBehaviors() interface{}
	SetCacheBehaviors(val interface{})
	CacheBehaviorSettings() interface{}
	SetCacheBehaviorSettings(val interface{})
	CertificateName() *string
	SetCertificateName(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	DefaultCacheBehavior() interface{}
	SetDefaultCacheBehavior(val interface{})
	DistributionName() *string
	SetDistributionName(val *string)
	IpAddressType() *string
	SetIpAddressType(val *string)
	IsEnabled() interface{}
	SetIsEnabled(val interface{})
	LogicalId() *string
	Node() constructs.Node
	Origin() interface{}
	SetOrigin(val interface{})
	Ref() *string
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::Distribution`.

The `AWS::Lightsail::Distribution` resource specifies a content delivery network (CDN) distribution. You can create distributions only in the `us-east-1` AWS Region.

A distribution is a globally distributed network of caching servers that improve the performance of your website or web application hosted on a Lightsail instance, static content hosted on a Lightsail bucket, or through a Lightsail load balancer.

TODO: EXAMPLE

func NewCfnDistribution added in v2.10.0

func NewCfnDistribution(scope constructs.Construct, id *string, props *CfnDistributionProps) CfnDistribution

Create a new `AWS::Lightsail::Distribution`.

type CfnDistributionProps added in v2.10.0

type CfnDistributionProps struct {
	// The ID of the bundle applied to the distribution.
	BundleId *string `json:"bundleId" yaml:"bundleId"`
	// An object that describes the default cache behavior of the distribution.
	DefaultCacheBehavior interface{} `json:"defaultCacheBehavior" yaml:"defaultCacheBehavior"`
	// The name of the distribution.
	DistributionName *string `json:"distributionName" yaml:"distributionName"`
	// An object that describes the origin resource of the distribution, such as a Lightsail instance, bucket, or load balancer.
	//
	// The distribution pulls, caches, and serves content from the origin.
	Origin interface{} `json:"origin" yaml:"origin"`
	// An array of objects that describe the per-path cache behavior of the distribution.
	CacheBehaviors interface{} `json:"cacheBehaviors" yaml:"cacheBehaviors"`
	// An object that describes the cache behavior settings of the distribution.
	CacheBehaviorSettings interface{} `json:"cacheBehaviorSettings" yaml:"cacheBehaviorSettings"`
	// The name of the SSL/TLS certificate attached to the distribution.
	CertificateName *string `json:"certificateName" yaml:"certificateName"`
	// The IP address type of the distribution.
	//
	// The possible values are `ipv4` for IPv4 only, and `dualstack` for IPv4 and IPv6.
	IpAddressType *string `json:"ipAddressType" yaml:"ipAddressType"`
	// A Boolean value indicating whether the distribution is enabled.
	IsEnabled interface{} `json:"isEnabled" yaml:"isEnabled"`
	// An array of key-value pairs to apply to this resource.
	//
	// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide* .
	//
	// > The `Value` of `Tags` is optional for Lightsail resources.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnDistribution`.

TODO: EXAMPLE

type CfnDistribution_CacheBehaviorPerPathProperty added in v2.10.0

type CfnDistribution_CacheBehaviorPerPathProperty struct {
	// The cache behavior for the specified path.
	//
	// You can specify one of the following per-path cache behaviors:
	//
	// - *`cache`* - This behavior caches the specified path.
	// - *`dont-cache`* - This behavior doesn't cache the specified path.
	Behavior *string `json:"behavior" yaml:"behavior"`
	// The path to a directory or file to cache, or not cache.
	//
	// Use an asterisk symbol to specify wildcard directories ( `path/to/assets/*` ), and file types ( `*.html` , `*jpg` , `*js` ). Directories and file paths are case-sensitive.
	//
	// Examples:
	//
	// - Specify the following to cache all files in the document root of an Apache web server running on a instance.
	//
	// `var/www/html/`
	// - Specify the following file to cache only the index page in the document root of an Apache web server.
	//
	// `var/www/html/index.html`
	// - Specify the following to cache only the .html files in the document root of an Apache web server.
	//
	// `var/www/html/*.html`
	// - Specify the following to cache only the .jpg, .png, and .gif files in the images sub-directory of the document root of an Apache web server.
	//
	// `var/www/html/images/*.jpg`
	//
	// `var/www/html/images/*.png`
	//
	// `var/www/html/images/*.gif`
	//
	// Specify the following to cache all files in the images subdirectory of the document root of an Apache web server.
	//
	// `var/www/html/images/`
	Path *string `json:"path" yaml:"path"`
}

`CacheBehaviorPerPath` is a property of the [AWS::Lightsail::Distribution](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html) resource. It describes the per-path cache behavior of an Amazon Lightsail content delivery network (CDN) distribution.

Use a per-path cache behavior to override the default cache behavior of a distribution, or to add an exception to it. For example, if you set the `CacheBehavior` to `cache` , you can use a per-path cache behavior to specify a directory, file, or file type that your distribution will cache. If you don’t want your distribution to cache a specified directory, file, or file type, set the per-path cache behavior to `dont-cache` .

TODO: EXAMPLE

type CfnDistribution_CacheBehaviorProperty added in v2.10.0

type CfnDistribution_CacheBehaviorProperty struct {
	// The cache behavior of the distribution.
	//
	// The following cache behaviors can be specified:
	//
	// - *`cache`* - This option is best for static sites. When specified, your distribution caches and serves your entire website as static content. This behavior is ideal for websites with static content that doesn't change depending on who views it, or for websites that don't use cookies, headers, or query strings to personalize content.
	// - *`dont-cache`* - This option is best for sites that serve a mix of static and dynamic content. When specified, your distribution caches and serves only the content that is specified in the distribution’s `CacheBehaviorPerPath` parameter. This behavior is ideal for websites or web applications that use cookies, headers, and query strings to personalize content for individual users.
	Behavior *string `json:"behavior" yaml:"behavior"`
}

`CacheBehavior` is a property of the [AWS::Lightsail::Distribution](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html) resource. It describes the default cache behavior of an Amazon Lightsail content delivery network (CDN) distribution.

TODO: EXAMPLE

type CfnDistribution_CacheSettingsProperty added in v2.10.0

type CfnDistribution_CacheSettingsProperty struct {
	// The HTTP methods that are processed and forwarded to the distribution's origin.
	//
	// You can specify the following options:
	//
	// - `GET,HEAD` - The distribution forwards the `GET` and `HEAD` methods.
	// - `GET,HEAD,OPTIONS` - The distribution forwards the `GET` , `HEAD` , and `OPTIONS` methods.
	// - `GET,HEAD,OPTIONS,PUT,PATCH,POST,DELETE` - The distribution forwards the `GET` , `HEAD` , `OPTIONS` , `PUT` , `PATCH` , `POST` , and `DELETE` methods.
	//
	// If you specify `GET,HEAD,OPTIONS,PUT,PATCH,POST,DELETE` , you might need to restrict access to your distribution's origin so users can't perform operations that you don't want them to. For example, you might not want users to have permission to delete objects from your origin.
	AllowedHttpMethods *string `json:"allowedHttpMethods" yaml:"allowedHttpMethods"`
	// The HTTP method responses that are cached by your distribution.
	//
	// You can specify the following options:
	//
	// - `GET,HEAD` - The distribution caches responses to the `GET` and `HEAD` methods.
	// - `GET,HEAD,OPTIONS` - The distribution caches responses to the `GET` , `HEAD` , and `OPTIONS` methods.
	CachedHttpMethods *string `json:"cachedHttpMethods" yaml:"cachedHttpMethods"`
	// The default amount of time that objects stay in the distribution's cache before the distribution forwards another request to the origin to determine whether the content has been updated.
	//
	// > The value specified applies only when the origin does not add HTTP headers such as `Cache-Control max-age` , `Cache-Control s-maxage` , and `Expires` to objects.
	DefaultTtl *float64 `json:"defaultTtl" yaml:"defaultTtl"`
	// An object that describes the cookies that are forwarded to the origin.
	//
	// Your content is cached based on the cookies that are forwarded.
	ForwardedCookies interface{} `json:"forwardedCookies" yaml:"forwardedCookies"`
	// An object that describes the headers that are forwarded to the origin.
	//
	// Your content is cached based on the headers that are forwarded.
	ForwardedHeaders interface{} `json:"forwardedHeaders" yaml:"forwardedHeaders"`
	// An object that describes the query strings that are forwarded to the origin.
	//
	// Your content is cached based on the query strings that are forwarded.
	ForwardedQueryStrings interface{} `json:"forwardedQueryStrings" yaml:"forwardedQueryStrings"`
	// The maximum amount of time that objects stay in the distribution's cache before the distribution forwards another request to the origin to determine whether the object has been updated.
	//
	// The value specified applies only when the origin adds HTTP headers such as `Cache-Control max-age` , `Cache-Control s-maxage` , and `Expires` to objects.
	MaximumTtl *float64 `json:"maximumTtl" yaml:"maximumTtl"`
	// The minimum amount of time that objects stay in the distribution's cache before the distribution forwards another request to the origin to determine whether the object has been updated.
	//
	// A value of `0` must be specified for `minimumTTL` if the distribution is configured to forward all headers to the origin.
	MinimumTtl *float64 `json:"minimumTtl" yaml:"minimumTtl"`
}

`CacheSettings` is a property of the [AWS::Lightsail::Distribution](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html) resource. It describes the cache settings of an Amazon Lightsail content delivery network (CDN) distribution.

These settings apply only to your distribution’s `CacheBehaviors` that have a `Behavior` of `cache` . This includes the `DefaultCacheBehavior` .

TODO: EXAMPLE

type CfnDistribution_CookieObjectProperty added in v2.10.0

type CfnDistribution_CookieObjectProperty struct {
	// The specific cookies to forward to your distribution's origin.
	CookiesAllowList *[]*string `json:"cookiesAllowList" yaml:"cookiesAllowList"`
	// Specifies which cookies to forward to the distribution's origin for a cache behavior.
	//
	// Use one of the following configurations for your distribution:
	//
	// - *`all`* - Forwards all cookies to your origin.
	// - *`none`* - Doesn’t forward cookies to your origin.
	// - *`allow-list`* - Forwards only the cookies that you specify using the `CookiesAllowList` parameter.
	Option *string `json:"option" yaml:"option"`
}

`CookieObject` is a property of the [CacheSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-distribution-cachesettings.html) property. It describes whether an Amazon Lightsail content delivery network (CDN) distribution forwards cookies to the origin and, if so, which ones.

For the cookies that you specify, your distribution caches separate versions of the specified content based on the cookie values in viewer requests.

TODO: EXAMPLE

type CfnDistribution_HeaderObjectProperty added in v2.10.0

type CfnDistribution_HeaderObjectProperty struct {
	// The specific headers to forward to your distribution's origin.
	HeadersAllowList *[]*string `json:"headersAllowList" yaml:"headersAllowList"`
	// The headers that you want your distribution to forward to your origin.
	//
	// Your distribution caches your content based on these headers.
	//
	// Use one of the following configurations for your distribution:
	//
	// - *`all`* - Forwards all headers to your origin..
	// - *`none`* - Forwards only the default headers.
	// - *`allow-list`* - Forwards only the headers that you specify using the `HeadersAllowList` parameter.
	Option *string `json:"option" yaml:"option"`
}

`HeaderObject` is a property of the [CacheSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-distribution-cachesettings.html) property. It describes the request headers used by your distribution, which caches your content based on the request headers.

For the headers that you specify, your distribution caches separate versions of the specified content based on the header values in viewer requests. For example, suppose that viewer requests for logo.jpg contain a custom product header that has a value of either acme or apex. Also, suppose that you configure your distribution to cache your content based on values in the product header. Your distribution forwards the product header to the origin and caches the response from the origin once for each header value.

TODO: EXAMPLE

type CfnDistribution_InputOriginProperty added in v2.10.0

type CfnDistribution_InputOriginProperty struct {
	// The name of the origin resource.
	Name *string `json:"name" yaml:"name"`
	// The protocol that your Amazon Lightsail distribution uses when establishing a connection with your origin to pull content.
	ProtocolPolicy *string `json:"protocolPolicy" yaml:"protocolPolicy"`
	// The AWS Region name of the origin resource.
	RegionName *string `json:"regionName" yaml:"regionName"`
}

`InputOrigin` is a property of the [AWS::Lightsail::Distribution](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html) resource. It describes the origin resource of an Amazon Lightsail content delivery network (CDN) distribution.

An origin can be a instance, bucket, or load balancer. A distribution pulls content from an origin, caches it, and serves it to viewers through a worldwide network of edge servers.

TODO: EXAMPLE

type CfnDistribution_QueryStringObjectProperty added in v2.10.0

type CfnDistribution_QueryStringObjectProperty struct {
	// Indicates whether the distribution forwards and caches based on query strings.
	Option interface{} `json:"option" yaml:"option"`
	// The specific query strings that the distribution forwards to the origin.
	//
	// Your distribution caches content based on the specified query strings.
	//
	// If the `option` parameter is true, then your distribution forwards all query strings, regardless of what you specify using the `QueryStringsAllowList` parameter.
	QueryStringsAllowList *[]*string `json:"queryStringsAllowList" yaml:"queryStringsAllowList"`
}

`QueryStringObject` is a property of the [CacheSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-distribution-cachesettings.html) property. It describes the query string parameters that an Amazon Lightsail content delivery network (CDN) distribution to bases caching on.

For the query strings that you specify, your distribution caches separate versions of the specified content based on the query string values in viewer requests.

TODO: EXAMPLE

type CfnInstance

type CfnInstance interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AddOns() interface{}
	SetAddOns(val interface{})
	AttrHardwareCpuCount() *float64
	AttrHardwareRamSizeInGb() *float64
	AttrInstanceArn() *string
	AttrIsStaticIp() awscdk.IResolvable
	AttrLocationAvailabilityZone() *string
	AttrLocationRegionName() *string
	AttrNetworkingMonthlyTransferGbPerMonthAllocated() *string
	AttrPrivateIpAddress() *string
	AttrPublicIpAddress() *string
	AttrResourceType() *string
	AttrSshKeyName() *string
	AttrStateCode() *float64
	AttrStateName() *string
	AttrSupportCode() *string
	AttrUserName() *string
	AvailabilityZone() *string
	SetAvailabilityZone(val *string)
	BlueprintId() *string
	SetBlueprintId(val *string)
	BundleId() *string
	SetBundleId(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	Hardware() interface{}
	SetHardware(val interface{})
	InstanceName() *string
	SetInstanceName(val *string)
	KeyPairName() *string
	SetKeyPairName(val *string)
	LogicalId() *string
	Networking() interface{}
	SetNetworking(val interface{})
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	UserData() *string
	SetUserData(val *string)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::Instance`.

The `AWS::Lightsail::Instance` resource specifies an Amazon Lightsail instance.

TODO: EXAMPLE

func NewCfnInstance

func NewCfnInstance(scope constructs.Construct, id *string, props *CfnInstanceProps) CfnInstance

Create a new `AWS::Lightsail::Instance`.

type CfnInstanceProps

type CfnInstanceProps struct {
	// The blueprint ID for the instance (for example, `os_amlinux_2016_03` ).
	BlueprintId *string `json:"blueprintId" yaml:"blueprintId"`
	// The bundle ID for the instance (for example, `micro_1_0` ).
	BundleId *string `json:"bundleId" yaml:"bundleId"`
	// The name of the instance.
	InstanceName *string `json:"instanceName" yaml:"instanceName"`
	// An array of add-ons for the instance.
	//
	// > If the instance has an add-on enabled when performing a delete instance request, the add-on is automatically disabled before the instance is deleted.
	AddOns interface{} `json:"addOns" yaml:"addOns"`
	// The Availability Zone for the instance.
	AvailabilityZone *string `json:"availabilityZone" yaml:"availabilityZone"`
	// The hardware properties for the instance, such as the vCPU count, attached disks, and amount of RAM.
	//
	// > The instance restarts when performing an attach disk or detach disk request. This resets the public IP address of your instance if a static IP isn't attached to it.
	Hardware interface{} `json:"hardware" yaml:"hardware"`
	// The name of the key pair to use for the instance.
	//
	// If no key pair name is specified, the Regional Lightsail default key pair is used.
	KeyPairName *string `json:"keyPairName" yaml:"keyPairName"`
	// The public ports and the monthly amount of data transfer allocated for the instance.
	Networking interface{} `json:"networking" yaml:"networking"`
	// An array of key-value pairs to apply to this resource.
	//
	// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide* .
	//
	// > The `Value` of `Tags` is optional for Lightsail resources.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
	// The optional launch script for the instance.
	//
	// Specify a launch script to configure an instance with additional user data. For example, you might want to specify `apt-get -y update` as a launch script.
	//
	// > Depending on the blueprint of your instance, the command to get software on your instance varies. Amazon Linux and CentOS use `yum` , Debian and Ubuntu use `apt-get` , and FreeBSD uses `pkg` .
	UserData *string `json:"userData" yaml:"userData"`
}

Properties for defining a `CfnInstance`.

TODO: EXAMPLE

type CfnInstance_AddOnProperty

type CfnInstance_AddOnProperty struct {
	// The add-on type (for example, `AutoSnapshot` ).
	//
	// > `AutoSnapshot` is the only add-on that can be enabled for an instance.
	AddOnType *string `json:"addOnType" yaml:"addOnType"`
	// The parameters for the automatic snapshot add-on, such as the daily time when an automatic snapshot will be created.
	AutoSnapshotAddOnRequest interface{} `json:"autoSnapshotAddOnRequest" yaml:"autoSnapshotAddOnRequest"`
	// The status of the add-on.
	//
	// Valid Values: `Enabled` | `Disabled`
	Status *string `json:"status" yaml:"status"`
}

`AddOn` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the add-ons for an instance.

TODO: EXAMPLE

type CfnInstance_AutoSnapshotAddOnProperty

type CfnInstance_AutoSnapshotAddOnProperty struct {
	// The daily time when an automatic snapshot will be created.
	//
	// Constraints:
	//
	// - Must be in `HH:00` format, and in an hourly increment.
	// - Specified in Coordinated Universal Time (UTC).
	// - The snapshot will be automatically created between the time specified and up to 45 minutes after.
	SnapshotTimeOfDay *string `json:"snapshotTimeOfDay" yaml:"snapshotTimeOfDay"`
}

`AutoSnapshotAddOn` is a property of the [AddOn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-addon.html) property. It describes the automatic snapshot add-on for an instance.

TODO: EXAMPLE

type CfnInstance_DiskProperty

type CfnInstance_DiskProperty struct {
	// The unique name of the disk.
	DiskName *string `json:"diskName" yaml:"diskName"`
	// The disk path.
	Path *string `json:"path" yaml:"path"`
	// The resources to which the disk is attached.
	AttachedTo *string `json:"attachedTo" yaml:"attachedTo"`
	// (Deprecated) The attachment state of the disk.
	//
	// > In releases prior to November 14, 2017, this parameter returned `attached` for system disks in the API response. It is now deprecated, but still included in the response. Use `isAttached` instead.
	AttachmentState *string `json:"attachmentState" yaml:"attachmentState"`
	// The input/output operations per second (IOPS) of the disk.
	Iops *float64 `json:"iops" yaml:"iops"`
	// A Boolean value indicating whether this disk is a system disk (has an operating system loaded on it).
	IsSystemDisk interface{} `json:"isSystemDisk" yaml:"isSystemDisk"`
	// The size of the disk in GB.
	SizeInGb *string `json:"sizeInGb" yaml:"sizeInGb"`
}

`Disk` is a property of the [Hardware](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-hardware.html) property. It describes a disk attached to an instance.

TODO: EXAMPLE

type CfnInstance_HardwareProperty

type CfnInstance_HardwareProperty struct {
	// The number of vCPUs the instance has.
	//
	// > The `CpuCount` property is read-only and should not be specified in a create instance or update instance request.
	CpuCount *float64 `json:"cpuCount" yaml:"cpuCount"`
	// The disks attached to the instance.
	//
	// The instance restarts when performing an attach disk or detach disk request. This resets the public IP address of your instance if a static IP isn't attached to it.
	Disks interface{} `json:"disks" yaml:"disks"`
	// The amount of RAM in GB on the instance (for example, `1.0` ).
	//
	// > The `RamSizeInGb` property is read-only and should not be specified in a create instance or update instance request.
	RamSizeInGb *float64 `json:"ramSizeInGb" yaml:"ramSizeInGb"`
}

`Hardware` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the hardware properties for the instance, such as the vCPU count, attached disks, and amount of RAM.

TODO: EXAMPLE

type CfnInstance_LocationProperty

type CfnInstance_LocationProperty struct {
	// The Availability Zone for the instance.
	AvailabilityZone *string `json:"availabilityZone" yaml:"availabilityZone"`
	// The name of the AWS Region for the instance.
	RegionName *string `json:"regionName" yaml:"regionName"`
}

`Location` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the location for an instance.

TODO: EXAMPLE

type CfnInstance_MonthlyTransferProperty

type CfnInstance_MonthlyTransferProperty struct {
	// The amount of allocated monthly data transfer (in GB) for an instance.
	GbPerMonthAllocated *string `json:"gbPerMonthAllocated" yaml:"gbPerMonthAllocated"`
}

`MonthlyTransfer` is a property of the [Networking](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-networking.html) property. It describes the amount of allocated monthly data transfer (in GB) for an instance.

TODO: EXAMPLE

type CfnInstance_NetworkingProperty

type CfnInstance_NetworkingProperty struct {
	// An array of ports to open on the instance.
	Ports interface{} `json:"ports" yaml:"ports"`
	// The monthly amount of data transfer, in GB, allocated for the instance.
	MonthlyTransfer *float64 `json:"monthlyTransfer" yaml:"monthlyTransfer"`
}

`Networking` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the public ports and the monthly amount of data transfer allocated for the instance.

TODO: EXAMPLE

type CfnInstance_PortProperty

type CfnInstance_PortProperty struct {
	// The access direction ( `inbound` or `outbound` ).
	//
	// > Lightsail currently supports only `inbound` access direction.
	AccessDirection *string `json:"accessDirection" yaml:"accessDirection"`
	// The location from which access is allowed.
	//
	// For example, `Anywhere (0.0.0.0/0)` , or `Custom` if a specific IP address or range of IP addresses is allowed.
	AccessFrom *string `json:"accessFrom" yaml:"accessFrom"`
	// The type of access ( `Public` or `Private` ).
	AccessType *string `json:"accessType" yaml:"accessType"`
	// An alias that defines access for a preconfigured range of IP addresses.
	//
	// The only alias currently supported is `lightsail-connect` , which allows IP addresses of the browser-based RDP/SSH client in the Lightsail console to connect to your instance.
	CidrListAliases *[]*string `json:"cidrListAliases" yaml:"cidrListAliases"`
	// The IPv4 address, or range of IPv4 addresses (in CIDR notation) that are allowed to connect to an instance through the ports, and the protocol.
	//
	// > The `ipv6Cidrs` parameter lists the IPv6 addresses that are allowed to connect to an instance.
	//
	// Examples:
	//
	// - To allow the IP address `192.0.2.44` , specify `192.0.2.44` or `192.0.2.44/32` .
	// - To allow the IP addresses `192.0.2.0` to `192.0.2.255` , specify `192.0.2.0/24` .
	Cidrs *[]*string `json:"cidrs" yaml:"cidrs"`
	// The common name of the port information.
	CommonName *string `json:"commonName" yaml:"commonName"`
	// The first port in a range of open ports on an instance.
	//
	// Allowed ports:
	//
	// - TCP and UDP - `0` to `65535`
	// - ICMP - The ICMP type for IPv4 addresses. For example, specify `8` as the `fromPort` (ICMP type), and `-1` as the `toPort` (ICMP code), to enable ICMP Ping.
	// - ICMPv6 - The ICMP type for IPv6 addresses. For example, specify `128` as the `fromPort` (ICMPv6 type), and `0` as `toPort` (ICMPv6 code).
	FromPort *float64 `json:"fromPort" yaml:"fromPort"`
	// The IPv6 address, or range of IPv6 addresses (in CIDR notation) that are allowed to connect to an instance through the ports, and the protocol.
	//
	// Only devices with an IPv6 address can connect to an instance through IPv6; otherwise, IPv4 should be used.
	//
	// > The `cidrs` parameter lists the IPv4 addresses that are allowed to connect to an instance.
	Ipv6Cidrs *[]*string `json:"ipv6Cidrs" yaml:"ipv6Cidrs"`
	// The IP protocol name.
	//
	// The name can be one of the following:
	//
	// - `tcp` - Transmission Control Protocol (TCP) provides reliable, ordered, and error-checked delivery of streamed data between applications running on hosts communicating by an IP network. If you have an application that doesn't require reliable data stream service, use UDP instead.
	// - `all` - All transport layer protocol types.
	// - `udp` - With User Datagram Protocol (UDP), computer applications can send messages (or datagrams) to other hosts on an Internet Protocol (IP) network. Prior communications are not required to set up transmission channels or data paths. Applications that don't require reliable data stream service can use UDP, which provides a connectionless datagram service that emphasizes reduced latency over reliability. If you do require reliable data stream service, use TCP instead.
	// - `icmp` - Internet Control Message Protocol (ICMP) is used to send error messages and operational information indicating success or failure when communicating with an instance. For example, an error is indicated when an instance could not be reached. When you specify `icmp` as the `protocol` , you must specify the ICMP type using the `fromPort` parameter, and ICMP code using the `toPort` parameter.
	Protocol *string `json:"protocol" yaml:"protocol"`
	// The last port in a range of open ports on an instance.
	//
	// Allowed ports:
	//
	// - TCP and UDP - `0` to `65535`
	// - ICMP - The ICMP code for IPv4 addresses. For example, specify `8` as the `fromPort` (ICMP type), and `-1` as the `toPort` (ICMP code), to enable ICMP Ping.
	// - ICMPv6 - The ICMP code for IPv6 addresses. For example, specify `128` as the `fromPort` (ICMPv6 type), and `0` as `toPort` (ICMPv6 code).
	ToPort *float64 `json:"toPort" yaml:"toPort"`
}

`Port` is a property of the [Networking](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-networking.html) property. It describes information about ports for an instance.

TODO: EXAMPLE

type CfnInstance_StateProperty

type CfnInstance_StateProperty struct {
	// The status code of the instance.
	Code *float64 `json:"code" yaml:"code"`
	// The state of the instance (for example, `running` or `pending` ).
	Name *string `json:"name" yaml:"name"`
}

`State` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the status code and the state (for example, `running` ) of an instance.

TODO: EXAMPLE

type CfnLoadBalancer added in v2.9.0

type CfnLoadBalancer interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttachedInstances() *[]*string
	SetAttachedInstances(val *[]*string)
	AttrLoadBalancerArn() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	HealthCheckPath() *string
	SetHealthCheckPath(val *string)
	InstancePort() *float64
	SetInstancePort(val *float64)
	IpAddressType() *string
	SetIpAddressType(val *string)
	LoadBalancerName() *string
	SetLoadBalancerName(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	SessionStickinessEnabled() interface{}
	SetSessionStickinessEnabled(val interface{})
	SessionStickinessLbCookieDurationSeconds() *string
	SetSessionStickinessLbCookieDurationSeconds(val *string)
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::LoadBalancer`.

The `AWS::Lightsail::LoadBalancer` resource specifies a load balancer that can be used with Lightsail instances.

> You cannot attach attach TLS certificates to a load balancer using the `AWS::Lightsail::LoadBalancer` resource type. Instead, use the `LoadBalancerTlsCertificate` resource type to create a certificate and attach it to a load balancer.

TODO: EXAMPLE

func NewCfnLoadBalancer added in v2.9.0

func NewCfnLoadBalancer(scope constructs.Construct, id *string, props *CfnLoadBalancerProps) CfnLoadBalancer

Create a new `AWS::Lightsail::LoadBalancer`.

type CfnLoadBalancerProps added in v2.9.0

type CfnLoadBalancerProps struct {
	// The port that the load balancer uses to direct traffic to your Lightsail instances.
	//
	// For HTTP traffic, specify port `80` . For HTTPS traffic, specify port `443` .
	InstancePort *float64 `json:"instancePort" yaml:"instancePort"`
	// The name of the load balancer.
	LoadBalancerName *string `json:"loadBalancerName" yaml:"loadBalancerName"`
	// The Lightsail instances to attach to the load balancer.
	AttachedInstances *[]*string `json:"attachedInstances" yaml:"attachedInstances"`
	// The path on the attached instance where the health check will be performed.
	//
	// If no path is specified, the load balancer tries to make a request to the default (root) page ( `/index.html` ).
	HealthCheckPath *string `json:"healthCheckPath" yaml:"healthCheckPath"`
	// The IP address type of the load balancer.
	//
	// The possible values are `ipv4` for IPv4 only, and `dualstack` for both IPv4 and IPv6.
	IpAddressType *string `json:"ipAddressType" yaml:"ipAddressType"`
	// A Boolean value indicating whether session stickiness is enabled.
	//
	// Enable session stickiness (also known as *session affinity* ) to bind a user's session to a specific instance. This ensures that all requests from the user during the session are sent to the same instance.
	SessionStickinessEnabled interface{} `json:"sessionStickinessEnabled" yaml:"sessionStickinessEnabled"`
	// The time period, in seconds, after which the load balancer session stickiness cookie should be considered stale.
	//
	// If you do not specify this parameter, the default value is 0, which indicates that the sticky session should last for the duration of the browser session.
	SessionStickinessLbCookieDurationSeconds *string `json:"sessionStickinessLbCookieDurationSeconds" yaml:"sessionStickinessLbCookieDurationSeconds"`
	// An array of key-value pairs to apply to this resource.
	//
	// For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide* .
	//
	// > The `Value` of `Tags` is optional for Lightsail resources.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnLoadBalancer`.

TODO: EXAMPLE

type CfnLoadBalancerTlsCertificate added in v2.9.0

type CfnLoadBalancerTlsCertificate interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrLoadBalancerTlsCertificateArn() *string
	AttrStatus() *string
	CertificateAlternativeNames() *[]*string
	SetCertificateAlternativeNames(val *[]*string)
	CertificateDomainName() *string
	SetCertificateDomainName(val *string)
	CertificateName() *string
	SetCertificateName(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	IsAttached() interface{}
	SetIsAttached(val interface{})
	LoadBalancerName() *string
	SetLoadBalancerName(val *string)
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::LoadBalancerTlsCertificate`.

The `AWS::Lightsail::LoadBalancerTlsCertificate` resource specifies a TLS certificate that can be used with a Lightsail load balancer.

TODO: EXAMPLE

func NewCfnLoadBalancerTlsCertificate added in v2.9.0

func NewCfnLoadBalancerTlsCertificate(scope constructs.Construct, id *string, props *CfnLoadBalancerTlsCertificateProps) CfnLoadBalancerTlsCertificate

Create a new `AWS::Lightsail::LoadBalancerTlsCertificate`.

type CfnLoadBalancerTlsCertificateProps added in v2.9.0

type CfnLoadBalancerTlsCertificateProps struct {
	// The domain name for the SSL/TLS certificate.
	//
	// For example, `example.com` or `www.example.com` .
	CertificateDomainName *string `json:"certificateDomainName" yaml:"certificateDomainName"`
	// The name of the SSL/TLS certificate.
	CertificateName *string `json:"certificateName" yaml:"certificateName"`
	// The name of the load balancer that the SSL/TLS certificate is attached to.
	LoadBalancerName *string `json:"loadBalancerName" yaml:"loadBalancerName"`
	// An array of alternative domain names and subdomain names for your SSL/TLS certificate.
	//
	// In addition to the primary domain name, you can have up to nine alternative domain names. Wildcards (such as `*.example.com` ) are not supported.
	CertificateAlternativeNames *[]*string `json:"certificateAlternativeNames" yaml:"certificateAlternativeNames"`
	// A Boolean value indicating whether the SSL/TLS certificate is attached to a Lightsail load balancer.
	IsAttached interface{} `json:"isAttached" yaml:"isAttached"`
}

Properties for defining a `CfnLoadBalancerTlsCertificate`.

TODO: EXAMPLE

type CfnStaticIp

type CfnStaticIp interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttachedTo() *string
	SetAttachedTo(val *string)
	AttrIpAddress() *string
	AttrIsAttached() awscdk.IResolvable
	AttrStaticIpArn() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	StaticIpName() *string
	SetStaticIpName(val *string)
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Lightsail::StaticIp`.

The `AWS::Lightsail::StaticIp` resource specifies a static IP that can be attached to an Amazon Lightsail instance that is in the same AWS Region and Availability Zone.

TODO: EXAMPLE

func NewCfnStaticIp

func NewCfnStaticIp(scope constructs.Construct, id *string, props *CfnStaticIpProps) CfnStaticIp

Create a new `AWS::Lightsail::StaticIp`.

type CfnStaticIpProps

type CfnStaticIpProps struct {
	// The name of the static IP.
	StaticIpName *string `json:"staticIpName" yaml:"staticIpName"`
	// The instance that the static IP is attached to.
	AttachedTo *string `json:"attachedTo" yaml:"attachedTo"`
}

Properties for defining a `CfnStaticIp`.

TODO: EXAMPLE

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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