Package com.pulumi.aws.apigatewayv2
Class DomainName
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.apigatewayv2.DomainName
-
public class DomainName extends com.pulumi.resources.CustomResourceManages an Amazon API Gateway Version 2 domain name. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html). > **Note:** This resource establishes ownership of and the TLS settings for a particular domain name. An API stage can be associated with the domain name using the `aws.apigatewayv2.ApiMapping` resource. ## Example Usage ### Basic
### Associated Route 53 Resource Recordpackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.apigatewayv2.DomainName; import com.pulumi.aws.apigatewayv2.DomainNameArgs; import com.pulumi.aws.apigatewayv2.inputs.DomainNameDomainNameConfigurationArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new DomainName("example", DomainNameArgs.builder() .domainNameConfiguration(DomainNameDomainNameConfigurationArgs.builder() .certificateArn(exampleAwsAcmCertificate.arn()) .endpointType("REGIONAL") .securityPolicy("TLS_1_2") .build()) .domainName("ws-api.example.com") .build()); } }
## Import Using `pulumi import`, import `aws.apigatewayv2.DomainName` using the domain name. For example: ```sh $ pulumi import aws:apigatewayv2/domainName:DomainName example ws-api.example.com ```package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.apigatewayv2.DomainName; import com.pulumi.aws.apigatewayv2.DomainNameArgs; import com.pulumi.aws.apigatewayv2.inputs.DomainNameDomainNameConfigurationArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import com.pulumi.aws.route53.inputs.RecordAliasArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new DomainName("example", DomainNameArgs.builder() .domainNameConfiguration(DomainNameDomainNameConfigurationArgs.builder() .certificateArn(exampleAwsAcmCertificate.arn()) .endpointType("REGIONAL") .securityPolicy("TLS_1_2") .build()) .domainName("http-api.example.com") .build()); var exampleRecord = new Record("exampleRecord", RecordArgs.builder() .aliases(RecordAliasArgs.builder() .name(example.domainNameConfiguration().applyValue(_domainNameConfiguration -> _domainNameConfiguration.targetDomainName())) .zoneId(example.domainNameConfiguration().applyValue(_domainNameConfiguration -> _domainNameConfiguration.hostedZoneId())) .evaluateTargetHealth(false) .build()) .name(example.domainName()) .type("A") .zoneId(exampleAwsRoute53Zone.zoneId()) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description DomainName(java.lang.String name)DomainName(java.lang.String name, DomainNameArgs args)DomainName(java.lang.String name, DomainNameArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.lang.String>apiMappingSelectionExpression()com.pulumi.core.Output<java.lang.String>arn()com.pulumi.core.Output<java.lang.String>domainName()com.pulumi.core.Output<DomainNameDomainNameConfiguration>domainNameConfiguration()static DomainNameget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, DomainNameState state, com.pulumi.resources.CustomResourceOptions options)Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.util.Optional<DomainNameMutualTlsAuthentication>>mutualTlsAuthentication()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.lang.String>routingMode()com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>tags()com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>>tagsAll()
-
-
-
Constructor Detail
-
DomainName
public DomainName(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
DomainName
public DomainName(java.lang.String name, DomainNameArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
DomainName
public DomainName(java.lang.String name, DomainNameArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.options- A bag of options that control this resource's behavior.
-
-
Method Detail
-
apiMappingSelectionExpression
public com.pulumi.core.Output<java.lang.String> apiMappingSelectionExpression()
- Returns:
- [API mapping selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-mapping-selection-expressions) for the domain name.
-
arn
public com.pulumi.core.Output<java.lang.String> arn()
- Returns:
- ARN of the domain name.
-
domainName
public com.pulumi.core.Output<java.lang.String> domainName()
- Returns:
- Domain name. Must be between 1 and 512 characters in length.
-
domainNameConfiguration
public com.pulumi.core.Output<DomainNameDomainNameConfiguration> domainNameConfiguration()
- Returns:
- Domain name configuration. See below.
-
mutualTlsAuthentication
public com.pulumi.core.Output<java.util.Optional<DomainNameMutualTlsAuthentication>> mutualTlsAuthentication()
- Returns:
- Mutual TLS authentication configuration for the domain name.
-
region
public com.pulumi.core.Output<java.lang.String> region()
- Returns:
- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
-
routingMode
public com.pulumi.core.Output<java.lang.String> routingMode()
- Returns:
- Mode to route traffic for the domain name. Valid values: `API_MAPPING_ONLY`, `ROUTING_RULE_ONLY`, `ROUTING_RULE_THEN_API_MAPPING`.
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Map of tags to assign to the domain name. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
-
tagsAll
public com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tagsAll()
- Returns:
- Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
-
get
public static DomainName get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable DomainNameState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name- The _unique_ name of the resulting resource.id- The _unique_ provider ID of the resource to lookup.state-options- Optional settings to control the behavior of the CustomResource.
-
-