@pulumi/aws
Version:
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
92 lines • 4.55 kB
JavaScript
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.CustomDomainAssociation = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
/**
* Manages an App Runner Custom Domain association.
*
* > **NOTE:** After creation, you must use the information in the `certificateValidationRecords` attribute to add CNAME records to your Domain Name System (DNS). For each mapped domain name, add a mapping to the target App Runner subdomain (found in the `dnsTarget` attribute) and one or more certificate validation records. App Runner then performs DNS validation to verify that you own or control the domain name you associated. App Runner tracks domain validity in a certificate stored in AWS Certificate Manager (ACM).
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const example = new aws.apprunner.CustomDomainAssociation("example", {
* domainName: "example.com",
* serviceArn: exampleAwsApprunnerService.arn,
* });
* ```
*
* ## Import
*
* Using `pulumi import`, import App Runner Custom Domain Associations using the `domain_name` and `service_arn` separated by a comma (`,`). For example:
*
* ```sh
* $ pulumi import aws:apprunner/customDomainAssociation:CustomDomainAssociation example example.com,arn:aws:apprunner:us-east-1:123456789012:service/example-app/8fe1e10304f84fd2b0df550fe98a71fa
* ```
*/
class CustomDomainAssociation extends pulumi.CustomResource {
/**
* Get an existing CustomDomainAssociation resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, state, opts) {
return new CustomDomainAssociation(name, state, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of CustomDomainAssociation. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === CustomDomainAssociation.__pulumiType;
}
constructor(name, argsOrState, opts) {
let resourceInputs = {};
opts = opts || {};
if (opts.id) {
const state = argsOrState;
resourceInputs["certificateValidationRecords"] = state?.certificateValidationRecords;
resourceInputs["dnsTarget"] = state?.dnsTarget;
resourceInputs["domainName"] = state?.domainName;
resourceInputs["enableWwwSubdomain"] = state?.enableWwwSubdomain;
resourceInputs["region"] = state?.region;
resourceInputs["serviceArn"] = state?.serviceArn;
resourceInputs["status"] = state?.status;
}
else {
const args = argsOrState;
if (args?.domainName === undefined && !opts.urn) {
throw new Error("Missing required property 'domainName'");
}
if (args?.serviceArn === undefined && !opts.urn) {
throw new Error("Missing required property 'serviceArn'");
}
resourceInputs["domainName"] = args?.domainName;
resourceInputs["enableWwwSubdomain"] = args?.enableWwwSubdomain;
resourceInputs["region"] = args?.region;
resourceInputs["serviceArn"] = args?.serviceArn;
resourceInputs["certificateValidationRecords"] = undefined /*out*/;
resourceInputs["dnsTarget"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(CustomDomainAssociation.__pulumiType, name, resourceInputs, opts);
}
}
exports.CustomDomainAssociation = CustomDomainAssociation;
/** @internal */
CustomDomainAssociation.__pulumiType = 'aws:apprunner/customDomainAssociation:CustomDomainAssociation';
//# sourceMappingURL=customDomainAssociation.js.map
;