Skip to content

googleAppEngineDomainMapping

A domain serving an App Engine application.

To get more information about DomainMapping, see:

Example Usage - App Engine Domain Mapping Basic

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as google from "./.gen/providers/google";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: google.
For a more precise conversion please use the --provider flag in convert.*/
new google.appEngineDomainMapping.AppEngineDomainMapping(
  this,
  "domain_mapping",
  {
    domain_name: "verified-domain.com",
    ssl_settings: [
      {
        ssl_management_type: "AUTOMATIC",
      },
    ],
  }
);

Argument Reference

The following arguments are supported:

  • domainName - (Required) Relative name of the domain serving the application. Example: example.com.

  • sslSettings - (Optional) SSL configuration for this domain. If unconfigured, this domain will not serve with SSL. Structure is documented below.

  • overrideStrategy - (Optional) Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected. Default value is strict. Possible values are strict and override.

  • project - (Optional) The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

The sslSettings block supports:

  • certificateId - (Optional) ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify sslManagementTypeManual on a create or update request. You must be authorized to administer the authorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.

  • sslManagementType - (Required) SSL management type for this domain. If automatic, a managed certificate is automatically provisioned. If manual, certificateId must be manually specified in order to configure SSL for this domain. Possible values are automatic and manual.

  • pendingManagedCertificateId - (Output) ID of the managed authorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificateId field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificateId field with an update request.

Attributes Reference

In addition to the arguments listed above, the following computed attributes are exported:

  • id - an identifier for the resource with format apps/{{project}}/domainMappings/{{domainName}}

  • name - Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.

  • resourceRecords - The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping. Structure is documented below.

The resourceRecords block contains:

  • name - (Optional) Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.

  • rrdata - (Optional) Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).

  • type - (Optional) Resource record type. Example: aaaa. Possible values are a, aaaa, and cname.

Timeouts

This resource provides the following Timeouts configuration options:

  • create - Default is 20 minutes.
  • update - Default is 20 minutes.
  • delete - Default is 20 minutes.

Import

DomainMapping can be imported using any of these accepted formats:

$ terraform import google_app_engine_domain_mapping.default apps/{{project}}/domainMappings/{{domain_name}}
$ terraform import google_app_engine_domain_mapping.default {{project}}/{{domain_name}}
$ terraform import google_app_engine_domain_mapping.default {{domain_name}}

User Project Overrides

This resource supports User Project Overrides.