awsroute53targets

package
v2.19.0 Latest Latest
Warning

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

Go to latest
Published: Apr 1, 2022 License: Apache-2.0 Imports: 14 Imported by: 10

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CloudFrontTarget_CLOUDFRONT_ZONE_ID

func CloudFrontTarget_CLOUDFRONT_ZONE_ID() *string

func CloudFrontTarget_GetHostedZoneId

func CloudFrontTarget_GetHostedZoneId(scope constructs.IConstruct) *string

Get the hosted zone id for the current scope.

func GlobalAcceleratorDomainTarget_GLOBAL_ACCELERATOR_ZONE_ID

func GlobalAcceleratorDomainTarget_GLOBAL_ACCELERATOR_ZONE_ID() *string

func GlobalAcceleratorTarget_GLOBAL_ACCELERATOR_ZONE_ID

func GlobalAcceleratorTarget_GLOBAL_ACCELERATOR_ZONE_ID() *string

func NewApiGatewayDomain_Override

func NewApiGatewayDomain_Override(a ApiGatewayDomain, domainName awsapigateway.IDomainName)

func NewApiGateway_Override

func NewApiGateway_Override(a ApiGateway, api awsapigateway.RestApiBase)

func NewApiGatewayv2DomainProperties_Override

func NewApiGatewayv2DomainProperties_Override(a ApiGatewayv2DomainProperties, regionalDomainName *string, regionalHostedZoneId *string)

func NewBucketWebsiteTarget_Override

func NewBucketWebsiteTarget_Override(b BucketWebsiteTarget, bucket awss3.IBucket)

func NewClassicLoadBalancerTarget_Override

func NewClassicLoadBalancerTarget_Override(c ClassicLoadBalancerTarget, loadBalancer awselasticloadbalancing.LoadBalancer)

func NewCloudFrontTarget_Override

func NewCloudFrontTarget_Override(c CloudFrontTarget, distribution awscloudfront.IDistribution)

func NewElasticBeanstalkEnvironmentEndpointTarget_Override

func NewElasticBeanstalkEnvironmentEndpointTarget_Override(e ElasticBeanstalkEnvironmentEndpointTarget, environmentEndpoint *string)

func NewGlobalAcceleratorDomainTarget_Override

func NewGlobalAcceleratorDomainTarget_Override(g GlobalAcceleratorDomainTarget, acceleratorDomainName *string)

Create an Alias Target for a Global Accelerator domain name.

func NewGlobalAcceleratorTarget_Override

func NewGlobalAcceleratorTarget_Override(g GlobalAcceleratorTarget, accelerator awsglobalaccelerator.IAccelerator)

Create an Alias Target for a Global Accelerator instance.

func NewInterfaceVpcEndpointTarget_Override

func NewInterfaceVpcEndpointTarget_Override(i InterfaceVpcEndpointTarget, vpcEndpoint awsec2.IInterfaceVpcEndpoint)

func NewLoadBalancerTarget_Override

func NewLoadBalancerTarget_Override(l LoadBalancerTarget, loadBalancer awselasticloadbalancingv2.ILoadBalancerV2)

func NewRoute53RecordTarget_Override

func NewRoute53RecordTarget_Override(r Route53RecordTarget, record awsroute53.IRecordSet)

func NewUserPoolDomainTarget_Override

func NewUserPoolDomainTarget_Override(u UserPoolDomainTarget, domain awscognito.UserPoolDomain)

Types

type ApiGateway

type ApiGateway interface {
	ApiGatewayDomain
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Defines an API Gateway REST API as the alias target. Requires that the domain name will be defined through `RestApiProps.domainName`.

You can direct the alias to any `apigateway.DomainName` resource through the `ApiGatewayDomain` class.

Example:

import route53 "github.com/aws/aws-cdk-go/awscdk"import targets "github.com/aws/aws-cdk-go/awscdk"

var api restApi
var hostedZoneForExampleCom interface{}

route53.NewARecord(this, jsii.String("CustomDomainAliasRecord"), &aRecordProps{
	zone: hostedZoneForExampleCom,
	target: route53.recordTarget.fromAlias(targets.NewApiGateway(api)),
})

func NewApiGateway

func NewApiGateway(api awsapigateway.RestApiBase) ApiGateway

type ApiGatewayDomain

type ApiGatewayDomain interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Defines an API Gateway domain name as the alias target.

Use the `ApiGateway` class if you wish to map the alias to an REST API with a domain name defined through the `RestApiProps.domainName` prop.

Example:

var hostedZoneForExampleCom interface{}
var domainName domainNameimport route53 "github.com/aws/aws-cdk-go/awscdk"import targets "github.com/aws/aws-cdk-go/awscdk"

route53.NewARecord(this, jsii.String("CustomDomainAliasRecord"), &aRecordProps{
	zone: hostedZoneForExampleCom,
	target: route53.recordTarget.fromAlias(targets.NewApiGatewayDomain(domainName)),
})

func NewApiGatewayDomain

func NewApiGatewayDomain(domainName awsapigateway.IDomainName) ApiGatewayDomain

type ApiGatewayv2DomainProperties

type ApiGatewayv2DomainProperties interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Defines an API Gateway V2 domain name as the alias target.

Example:

// Example automatically generated from non-compiling source. May contain errors.
import apigwv2 "github.com/aws/aws-cdk-go/awscdk"

var zone hostedZone
var domainName apigwv2.DomainName

route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	target: route53.recordTarget.fromAlias(targets.NewApiGatewayv2DomainProperties(domainName.regionalDomainName, domainName.regionalHostedZoneId)),
})

func NewApiGatewayv2DomainProperties

func NewApiGatewayv2DomainProperties(regionalDomainName *string, regionalHostedZoneId *string) ApiGatewayv2DomainProperties

type BucketWebsiteTarget

type BucketWebsiteTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use a S3 as an alias record target.

Example:

import s3 "github.com/aws/aws-cdk-go/awscdk"

recordName := "www"
domainName := "example.com"

bucketWebsite := s3.NewBucket(this, jsii.String("BucketWebsite"), &bucketProps{
	bucketName: []*string{
		recordName,
		domainName,
	}.join(jsii.String(".")),
	 // www.example.com
	publicReadAccess: jsii.Boolean(true),
	websiteIndexDocument: jsii.String("index.html"),
})

zone := route53.hostedZone.fromLookup(this, jsii.String("Zone"), &hostedZoneProviderProps{
	domainName: jsii.String(domainName),
}) // example.com

 // example.com
route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	recordName: jsii.String(recordName),
	 // www
	target: route53.recordTarget.fromAlias(targets.NewBucketWebsiteTarget(bucketWebsite)),
})

func NewBucketWebsiteTarget

func NewBucketWebsiteTarget(bucket awss3.IBucket) BucketWebsiteTarget

type ClassicLoadBalancerTarget

type ClassicLoadBalancerTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use a classic ELB as an alias record target.

Example:

import elb "github.com/aws/aws-cdk-go/awscdk"

var zone hostedZone
var lb loadBalancer

route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	target: route53.recordTarget.fromAlias(targets.NewClassicLoadBalancerTarget(lb)),
})

type CloudFrontTarget

type CloudFrontTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use a CloudFront Distribution as an alias record target.

Example:

import cloudfront "github.com/aws/aws-cdk-go/awscdk"

var myZone hostedZone
var distribution cloudFrontWebDistribution
route53.NewAaaaRecord(this, jsii.String("Alias"), &aaaaRecordProps{
	zone: myZone,
	target: route53.recordTarget.fromAlias(targets.NewCloudFrontTarget(distribution)),
})

func NewCloudFrontTarget

func NewCloudFrontTarget(distribution awscloudfront.IDistribution) CloudFrontTarget

type ElasticBeanstalkEnvironmentEndpointTarget

type ElasticBeanstalkEnvironmentEndpointTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use an Elastic Beanstalk environment URL as an alias record target. E.g. mysampleenvironment.xyz.us-east-1.elasticbeanstalk.com or mycustomcnameprefix.us-east-1.elasticbeanstalk.com.

Only supports Elastic Beanstalk environments created after 2016 that have a regional endpoint.

Example:

var zone hostedZone
var ebsEnvironmentUrl string

route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	target: route53.recordTarget.fromAlias(targets.NewElasticBeanstalkEnvironmentEndpointTarget(ebsEnvironmentUrl)),
})

func NewElasticBeanstalkEnvironmentEndpointTarget

func NewElasticBeanstalkEnvironmentEndpointTarget(environmentEndpoint *string) ElasticBeanstalkEnvironmentEndpointTarget

type GlobalAcceleratorDomainTarget

type GlobalAcceleratorDomainTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use a Global Accelerator domain name as an alias record target.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import route53_targets "github.com/aws/aws-cdk-go/awscdk/aws_route53_targets"
globalAcceleratorDomainTarget := route53_targets.NewGlobalAcceleratorDomainTarget(jsii.String("acceleratorDomainName"))

func NewGlobalAcceleratorDomainTarget

func NewGlobalAcceleratorDomainTarget(acceleratorDomainName *string) GlobalAcceleratorDomainTarget

Create an Alias Target for a Global Accelerator domain name.

type GlobalAcceleratorTarget

type GlobalAcceleratorTarget interface {
	GlobalAcceleratorDomainTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use a Global Accelerator instance domain name as an alias record target.

Example:

import globalaccelerator "github.com/aws/aws-cdk-go/awscdk"

var zone hostedZone
var accelerator accelerator

route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	target: route53.recordTarget.fromAlias(targets.NewGlobalAcceleratorTarget(accelerator)),
})

func NewGlobalAcceleratorTarget

func NewGlobalAcceleratorTarget(accelerator awsglobalaccelerator.IAccelerator) GlobalAcceleratorTarget

Create an Alias Target for a Global Accelerator instance.

type InterfaceVpcEndpointTarget

type InterfaceVpcEndpointTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Set an InterfaceVpcEndpoint as a target for an ARecord.

Example:

import ec2 "github.com/aws/aws-cdk-go/awscdk"

var zone hostedZone
var interfaceVpcEndpoint interfaceVpcEndpoint

route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	target: route53.recordTarget.fromAlias(targets.NewInterfaceVpcEndpointTarget(interfaceVpcEndpoint)),
})

func NewInterfaceVpcEndpointTarget

func NewInterfaceVpcEndpointTarget(vpcEndpoint awsec2.IInterfaceVpcEndpoint) InterfaceVpcEndpointTarget

type LoadBalancerTarget

type LoadBalancerTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use an ELBv2 as an alias record target.

Example:

import elbv2 "github.com/aws/aws-cdk-go/awscdk"

var zone hostedZone
var lb applicationLoadBalancer

route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	target: route53.recordTarget.fromAlias(targets.NewLoadBalancerTarget(lb)),
})

type Route53RecordTarget

type Route53RecordTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use another Route 53 record as an alias record target.

Example:

var zone hostedZone
var record aRecord
route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	target: route53.recordTarget.fromAlias(targets.NewRoute53RecordTarget(record)),
})

func NewRoute53RecordTarget

func NewRoute53RecordTarget(record awsroute53.IRecordSet) Route53RecordTarget

type UserPoolDomainTarget

type UserPoolDomainTarget interface {
	awsroute53.IAliasRecordTarget
	// Return hosted zone ID and DNS name, usable for Route53 alias targets.
	Bind(_record awsroute53.IRecordSet, _zone awsroute53.IHostedZone) *awsroute53.AliasRecordTargetConfig
}

Use a user pool domain as an alias record target.

Example:

import cognito "github.com/aws/aws-cdk-go/awscdk"

var zone hostedZone
var domain userPoolDomain
route53.NewARecord(this, jsii.String("AliasRecord"), &aRecordProps{
	zone: zone,
	target: route53.recordTarget.fromAlias(targets.NewUserPoolDomainTarget(domain)),
})

func NewUserPoolDomainTarget

func NewUserPoolDomainTarget(domain awscognito.UserPoolDomain) UserPoolDomainTarget

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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