Enables TLS on a domain using a certificate managed by Fastly.
DNS records need to be modified on the domain being secured, in order to respond to the ACME domain ownership challenge.
There are two options for doing this: the managed_dns_challenges, which is the default method; and the managed_http_challenges, which points production traffic to Fastly.
See the Fastly documentation for more information on verifying domain ownership.
The examples below demonstrate usage with AWS Route53 to configure DNS, and the fastly.TlsSubscriptionValidation resource to wait for validation to complete.
Example Usage
Basic usage:
The following example demonstrates how to configure two subdomains (e.g. a.example.com, b.example.com).
The workflow configures a fastly.TlsSubscription resource, then a aws_route53_record resource for handling the creation of the ‘challenge’ DNS records (e.g. _acme-challenge.a.example.com and _acme-challenge.b.example.com).
We configure the fastly.TlsSubscriptionValidation resource, which blocks other resources until the challenge DNS records have been validated by Fastly.
Once the validation has been successful, the configured fastly.getTlsConfiguration data source will filter the available results looking for an appropriate TLS configuration object. If that filtering process is successful, then the subsequent aws_route53_record resources (for configuring the subdomains) will be executed using the returned TLS configuration data.
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as fastly from "@pulumi/fastly";
import * as std from "@pulumi/std";
// NOTE: Creating a hosted zone will automatically create SOA/NS records.
const production = new aws.index.Route53Zone("production", {name: "example.com"});
const example = new aws.index.Route53domainsRegisteredDomain("example", {
nameServer: Object.entries(production.nameServers).map(([k, v]) => ({key: k, value: v})).map(entry => ({
name: entry.value,
})),
domainName: "example.com",
});
const subdomains = [
"a.example.com",
"b.example.com",
];
const exampleServiceVcl = new fastly.ServiceVcl("example", {
domains: subdomains.map((v, k) => ({key: k, value: v})).map(entry => ({
name: entry.value,
})),
name: "example-service",
backends: [{
address: "127.0.0.1",
name: "localhost",
}],
forceDestroy: true,
});
const exampleTlsSubscription = new fastly.TlsSubscription("example", {
domains: exampleServiceVcl.domains.apply(domains => .map(domain => (domain.name))),
certificateAuthority: "lets-encrypt",
});
const domainValidation: aws.index.Route53Record[] = [];
exampleTlsSubscription.domains.apply(domains => {
for (const range of Object.entries(domains.reduce((__obj, domain) => ({ ...__obj, [domain]: exampleTlsSubscription.managedDnsChallenges.apply(managedDnsChallenges => managedDnsChallenges.filter(obj => obj.recordName == `_acme-challenge.${domain}`).map(obj => (obj)))[0] }))).map(([k, v]) => ({key: k, value: v}))) {
domainValidation.push(new aws.index.Route53Record(`domain_validation-${range.key}`, {
name: range.value.recordName,
type: range.value.recordType,
zoneId: production.zoneId,
allowOverwrite: true,
records: [range.value.recordValue],
ttl: 60,
}, {
dependsOn: [exampleTlsSubscription],
}));
}
});
// This is a resource that other resources can depend on if they require the certificate to be issued.
// NOTE: Internally the resource keeps retrying `GetTLSSubscription` until no error is returned (or the configured timeout is reached).
const exampleTlsSubscriptionValidation = new fastly.TlsSubscriptionValidation("example", {subscriptionId: exampleTlsSubscription.id}, {
dependsOn: [domainValidation],
});
// This data source lists all available configuration objects.
// It uses a `default` attribute to narrow down the list to just one configuration object.
// If the filtered list has a length that is not exactly one element, you'll see an error returned.
// The single TLS configuration is then returned and can be referenced by other resources (see aws_route53_record below).
//
// IMPORTANT: Not all customers will have a 'default' configuration.
// If you have issues filtering with `default = true`, then you may need another attribute.
// Refer to the fastly_tls_configuration documentation for available attributes:
// https://registry.terraform.io/providers/fastly/fastly/latest/docs/data-sources/tls_configuration#optional
const defaultTls = fastly.getTlsConfiguration({
"default": true,
});
// Once validation is complete and we've retrieved the TLS configuration data, we can create multiple subdomain records.
const subdomain: aws.index.Route53Record[] = [];
for (const range = {value: 0}; range.value < std.index.toset({
input: subdomains,
}).result; range.value++) {
subdomain.push(new aws.index.Route53Record(`subdomain-${range.value}`, {
name: range.value,
records: .filter(record => record.recordType == "CNAME").map(record => (record.recordValue)),
ttl: 300,
type: "CNAME",
zoneId: production.zoneId,
}));
}
import pulumi
import pulumi_aws as aws
import pulumi_fastly as fastly
import pulumi_std as std
# NOTE: Creating a hosted zone will automatically create SOA/NS records.
production = aws.index.Route53Zone("production", name=example.com)
example = aws.index.Route53domainsRegisteredDomain("example",
name_server=[{
name: entry.value,
} for entry in [{"key": k, "value": v} for k, v in production.name_servers]],
domain_name=example.com)
subdomains = [
"a.example.com",
"b.example.com",
]
example_service_vcl = fastly.ServiceVcl("example",
domains=[{
"name": entry["value"],
} for entry in [{"key": k, "value": v} for k, v in subdomains]],
name="example-service",
backends=[{
"address": "127.0.0.1",
"name": "localhost",
}],
force_destroy=True)
example_tls_subscription = fastly.TlsSubscription("example",
domains=example_service_vcl.domains.apply(lambda domains: [domain.name for domain in domains]),
certificate_authority="lets-encrypt")
domain_validation = []
def create_domain_validation(range_body):
for range in [{"key": k, "value": v} for [k, v] in enumerate(range_body)]:
domain_validation.append(aws.index.Route53Record(f"domain_validation-{range['key']}",
name=range.value.record_name,
type=range.value.record_type,
zone_id=production.zone_id,
allow_overwrite=True,
records=[range.value.record_value],
ttl=60,
opts = pulumi.ResourceOptions(depends_on=[example_tls_subscription])))
example_tls_subscription.domains.apply(lambda resolved_outputs: create_domain_validation({domain: example_tls_subscription.managed_dns_challenges.apply(lambda managed_dns_challenges: [obj for obj in managed_dns_challenges if obj.record_name == f"_acme-challenge.{domain}"])[0] for domain in resolved_outputs['domains']}))
# This is a resource that other resources can depend on if they require the certificate to be issued.
# NOTE: Internally the resource keeps retrying `GetTLSSubscription` until no error is returned (or the configured timeout is reached).
example_tls_subscription_validation = fastly.TlsSubscriptionValidation("example", subscription_id=example_tls_subscription.id,
opts = pulumi.ResourceOptions(depends_on=[domain_validation]))
# This data source lists all available configuration objects.
# It uses a `default` attribute to narrow down the list to just one configuration object.
# If the filtered list has a length that is not exactly one element, you'll see an error returned.
# The single TLS configuration is then returned and can be referenced by other resources (see aws_route53_record below).
#
# IMPORTANT: Not all customers will have a 'default' configuration.
# If you have issues filtering with `default = true`, then you may need another attribute.
# Refer to the fastly_tls_configuration documentation for available attributes:
# https://registry.terraform.io/providers/fastly/fastly/latest/docs/data-sources/tls_configuration#optional
default_tls = fastly.get_tls_configuration(default=True)
# Once validation is complete and we've retrieved the TLS configuration data, we can create multiple subdomain records.
subdomain = []
for range in [{"value": i} for i in range(0, std.index.toset(input=subdomains).result)]:
subdomain.append(aws.index.Route53Record(f"subdomain-{range['value']}",
name=range.value,
records=[record.record_value for record in default_tls.dns_records if record.record_type == CNAME],
ttl=300,
type=CNAME,
zone_id=production.zone_id))
Example coming soon!
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Fastly = Pulumi.Fastly;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
// NOTE: Creating a hosted zone will automatically create SOA/NS records.
var production = new Aws.Index.Route53Zone("production", new()
{
Name = "example.com",
});
var example = new Aws.Index.Route53domainsRegisteredDomain("example", new()
{
NameServer = .Select(entry =>
{
return
{
{ "name", entry.Value },
};
}).ToList(),
DomainName = "example.com",
});
var subdomains = new[]
{
"a.example.com",
"b.example.com",
};
var exampleServiceVcl = new Fastly.ServiceVcl("example", new()
{
Domains = subdomains.Select((v, k) => new { Key = k, Value = v }).Select(entry =>
{
return new Fastly.Inputs.ServiceVclDomainArgs
{
Name = entry.Value,
};
}).ToList(),
Name = "example-service",
Backends = new[]
{
new Fastly.Inputs.ServiceVclBackendArgs
{
Address = "127.0.0.1",
Name = "localhost",
},
},
ForceDestroy = true,
});
var exampleTlsSubscription = new Fastly.TlsSubscription("example", new()
{
Domains = exampleServiceVcl.Domains.Apply(domains => .Select(domain =>
{
return domain.Name;
}).ToList()),
CertificateAuthority = "lets-encrypt",
});
var domainValidation = new List<Aws.Index.Route53Record>();
foreach (var range in exampleTlsSubscription.Domains.Apply(domains => domains.ToDictionary(item => {
var domain = item.Value;
return domain;
}, item => {
var domain = item.Value;
return exampleTlsSubscription.ManagedDnsChallenges.Apply(managedDnsChallenges => managedDnsChallenges.Where(obj => obj.RecordName == $"_acme-challenge.{domain}").Select(obj =>
{
return obj;
}).ToList())[0];
})).Select(pair => new { pair.Key, pair.Value }))
{
domainValidation.Add(new Aws.Index.Route53Record($"domain_validation-{range.Key}", new()
{
Name = range.Value.RecordName,
Type = range.Value.RecordType,
ZoneId = production.ZoneId,
AllowOverwrite = true,
Records = new[]
{
range.Value.RecordValue,
},
Ttl = 60,
}, new CustomResourceOptions
{
DependsOn =
{
exampleTlsSubscription,
},
}));
}
// This is a resource that other resources can depend on if they require the certificate to be issued.
// NOTE: Internally the resource keeps retrying `GetTLSSubscription` until no error is returned (or the configured timeout is reached).
var exampleTlsSubscriptionValidation = new Fastly.TlsSubscriptionValidation("example", new()
{
SubscriptionId = exampleTlsSubscription.Id,
}, new CustomResourceOptions
{
DependsOn =
{
domainValidation,
},
});
// This data source lists all available configuration objects.
// It uses a `default` attribute to narrow down the list to just one configuration object.
// If the filtered list has a length that is not exactly one element, you'll see an error returned.
// The single TLS configuration is then returned and can be referenced by other resources (see aws_route53_record below).
//
// IMPORTANT: Not all customers will have a 'default' configuration.
// If you have issues filtering with `default = true`, then you may need another attribute.
// Refer to the fastly_tls_configuration documentation for available attributes:
// https://registry.terraform.io/providers/fastly/fastly/latest/docs/data-sources/tls_configuration#optional
var defaultTls = Fastly.GetTlsConfiguration.Invoke(new()
{
Default = true,
});
// Once validation is complete and we've retrieved the TLS configuration data, we can create multiple subdomain records.
var subdomain = new List<Aws.Index.Route53Record>();
for (var rangeIndex = 0; rangeIndex < Std.Index.Toset.Invoke(new()
{
Input = subdomains,
}).Result; rangeIndex++)
{
var range = new { Value = rangeIndex };
subdomain.Add(new Aws.Index.Route53Record($"subdomain-{range.Value}", new()
{
Name = range.Value,
Records = ,
Ttl = 300,
Type = "CNAME",
ZoneId = production.ZoneId,
}));
}
});
Example coming soon!
Example coming soon!
Configuring an apex and a wildcard domain:
The following example is similar to the above but differs by demonstrating how to handle configuring an apex domain (e.g. example.com) and a wildcard domain (e.g. *.example.com) so you can support multiple subdomains to your service.
The difference in the workflow is with how to handle the Fastly API returning a single ‘challenge’ for both domains (e.g. _acme-challenge.example.com). This is done by normalising the wildcard (i.e. replacing *.example.com with example.com) and then working around the issue of the returned object having two identical keys.
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as fastly from "@pulumi/fastly";
import * as std from "@pulumi/std";
// NOTE: Creating a hosted zone will automatically create SOA/NS records.
const production = new aws.index.Route53Zone("production", {name: "example.com"});
const example = new aws.index.Route53domainsRegisteredDomain("example", {
nameServer: Object.entries(production.nameServers).map(([k, v]) => ({key: k, value: v})).map(entry => ({
name: entry.value,
})),
domainName: "example.com",
});
const domains = [
"example.com",
"*.example.com",
];
const exampleServiceVcl = new fastly.ServiceVcl("example", {
domains: domains.map((v, k) => ({key: k, value: v})).map(entry => ({
name: entry.value,
})),
name: "example-service",
backends: [{
address: "127.0.0.1",
name: "localhost",
}],
forceDestroy: true,
});
const exampleTlsSubscription = new fastly.TlsSubscription("example", {
domains: exampleServiceVcl.domains.apply(domains => .map(domain => (domain.name))),
certificateAuthority: "lets-encrypt",
});
const domainValidation: aws.index.Route53Record[] = [];
exampleTlsSubscription.domains.apply(domains => {
const domainValidation: aws.index.Route53Record[] = [];
pulumi.all(domains.reduce((__obj, domain) => ({ ...__obj, [std.index.replace({
text: domain,
search: "*.",
replace: "",
}).result]: exampleTlsSubscription.managedDnsChallenges.apply(managedDnsChallenges => managedDnsChallenges.filter(obj => obj.recordName == `_acme-challenge.${std.index.replace({
text: domain,
search: "*.",
replace: "",
}).result}`).map(obj => (obj)))[0] }))).apply(rangeBody => {
for (const range of Object.entries(rangeBody).map(([k, v]) => ({key: k, value: v}))) {
domainValidation.push(new aws.index.Route53Record(`domain_validation-${range.key}`, {
name: range.value[0].recordName,
type: range.value[0].recordType,
zoneId: production.zoneId,
allowOverwrite: true,
records: [range.value[0].recordValue],
ttl: 60,
}, {
dependsOn: [exampleTlsSubscription],
}));
}
});
});
// This is a resource that other resources can depend on if they require the certificate to be issued.
// NOTE: Internally the resource keeps retrying `GetTLSSubscription` until no error is returned (or the configured timeout is reached).
const exampleTlsSubscriptionValidation = new fastly.TlsSubscriptionValidation("example", {subscriptionId: exampleTlsSubscription.id}, {
dependsOn: [domainValidation],
});
// This data source lists all available configuration objects.
// It uses a `default` attribute to narrow down the list to just one configuration object.
// If the filtered list has a length that is not exactly one element, you'll see an error returned.
// The single TLS configuration is then returned and can be referenced by other resources (see aws_route53_record below).
//
// IMPORTANT: Not all customers will have a 'default' configuration.
// If you have issues filtering with `default = true`, then you may need another attribute.
// Refer to the fastly_tls_configuration documentation for available attributes:
// https://registry.terraform.io/providers/fastly/fastly/latest/docs/data-sources/tls_configuration#optional
const defaultTls = fastly.getTlsConfiguration({
"default": true,
});
// Once validation is complete and we've retrieved the TLS configuration data, we can create multiple records...
const apex = new aws.index.Route53Record("apex", {
name: "example.com",
records: .filter(record => record.recordType == "A").map(record => (record.recordValue)),
ttl: 300,
type: "A",
zoneId: production.zoneId,
});
// NOTE: This subdomain matches our Fastly service because of the wildcard domain (`*.example.com`) that was added to the service.
const subdomain = new aws.index.Route53Record("subdomain", {
name: "test.example.com",
records: .filter(record => record.recordType == "CNAME").map(record => (record.recordValue)),
ttl: 300,
type: "CNAME",
zoneId: production.zoneId,
});
import pulumi
import pulumi_aws as aws
import pulumi_fastly as fastly
import pulumi_std as std
# NOTE: Creating a hosted zone will automatically create SOA/NS records.
production = aws.index.Route53Zone("production", name=example.com)
example = aws.index.Route53domainsRegisteredDomain("example",
name_server=[{
name: entry.value,
} for entry in [{"key": k, "value": v} for k, v in production.name_servers]],
domain_name=example.com)
domains = [
"example.com",
"*.example.com",
]
example_service_vcl = fastly.ServiceVcl("example",
domains=[{
"name": entry["value"],
} for entry in [{"key": k, "value": v} for k, v in domains]],
name="example-service",
backends=[{
"address": "127.0.0.1",
"name": "localhost",
}],
force_destroy=True)
example_tls_subscription = fastly.TlsSubscription("example",
domains=example_service_vcl.domains.apply(lambda domains: [domain.name for domain in domains]),
certificate_authority="lets-encrypt")
domain_validation = []
def create_domain_validation(range_body):
for range in [{"key": k, "value": v} for [k, v] in enumerate(range_body)]:
domain_validation.append(aws.index.Route53Record(f"domain_validation-{range['key']}",
name=range.value[0].record_name,
type=range.value[0].record_type,
zone_id=production.zone_id,
allow_overwrite=True,
records=[range.value[0].record_value],
ttl=60,
opts = pulumi.ResourceOptions(depends_on=[example_tls_subscription])))
example_tls_subscription.domains.apply(lambda resolved_outputs: create_domain_validation({std.index.replace(text=domain,
search="*.",
replace="")["result"]: example_tls_subscription.managed_dns_challenges.apply(lambda managed_dns_challenges: [obj for obj in managed_dns_challenges if obj.record_name == f"_acme-challenge.{std.index.replace(text=domain,
search='*.',
replace='')['result']}"])[0] for domain in resolved_outputs['domains']}))
# This is a resource that other resources can depend on if they require the certificate to be issued.
# NOTE: Internally the resource keeps retrying `GetTLSSubscription` until no error is returned (or the configured timeout is reached).
example_tls_subscription_validation = fastly.TlsSubscriptionValidation("example", subscription_id=example_tls_subscription.id,
opts = pulumi.ResourceOptions(depends_on=[domain_validation]))
# This data source lists all available configuration objects.
# It uses a `default` attribute to narrow down the list to just one configuration object.
# If the filtered list has a length that is not exactly one element, you'll see an error returned.
# The single TLS configuration is then returned and can be referenced by other resources (see aws_route53_record below).
#
# IMPORTANT: Not all customers will have a 'default' configuration.
# If you have issues filtering with `default = true`, then you may need another attribute.
# Refer to the fastly_tls_configuration documentation for available attributes:
# https://registry.terraform.io/providers/fastly/fastly/latest/docs/data-sources/tls_configuration#optional
default_tls = fastly.get_tls_configuration(default=True)
# Once validation is complete and we've retrieved the TLS configuration data, we can create multiple records...
apex = aws.index.Route53Record("apex",
name=example.com,
records=[record.record_value for record in default_tls.dns_records if record.record_type == A],
ttl=300,
type=A,
zone_id=production.zone_id)
# NOTE: This subdomain matches our Fastly service because of the wildcard domain (`*.example.com`) that was added to the service.
subdomain = aws.index.Route53Record("subdomain",
name=test.example.com,
records=[record.record_value for record in default_tls.dns_records if record.record_type == CNAME],
ttl=300,
type=CNAME,
zone_id=production.zone_id)
Example coming soon!
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Fastly = Pulumi.Fastly;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
// NOTE: Creating a hosted zone will automatically create SOA/NS records.
var production = new Aws.Index.Route53Zone("production", new()
{
Name = "example.com",
});
var example = new Aws.Index.Route53domainsRegisteredDomain("example", new()
{
NameServer = .Select(entry =>
{
return
{
{ "name", entry.Value },
};
}).ToList(),
DomainName = "example.com",
});
var domains = new[]
{
"example.com",
"*.example.com",
};
var exampleServiceVcl = new Fastly.ServiceVcl("example", new()
{
Domains = domains.Select((v, k) => new { Key = k, Value = v }).Select(entry =>
{
return new Fastly.Inputs.ServiceVclDomainArgs
{
Name = entry.Value,
};
}).ToList(),
Name = "example-service",
Backends = new[]
{
new Fastly.Inputs.ServiceVclBackendArgs
{
Address = "127.0.0.1",
Name = "localhost",
},
},
ForceDestroy = true,
});
var exampleTlsSubscription = new Fastly.TlsSubscription("example", new()
{
Domains = exampleServiceVcl.Domains.Apply(domains => .Select(domain =>
{
return domain.Name;
}).ToList()),
CertificateAuthority = "lets-encrypt",
});
var domainValidation = new List<Aws.Index.Route53Record>();
foreach (var range in exampleTlsSubscription.Domains.Apply(domains => domains).Select(pair => new { pair.Key, pair.Value }))
{
domainValidation.Add(new Aws.Index.Route53Record($"domain_validation-{range.Key}", new()
{
Name = range.Value[0].RecordName,
Type = range.Value[0].RecordType,
ZoneId = production.ZoneId,
AllowOverwrite = true,
Records = new[]
{
range.Value[0].RecordValue,
},
Ttl = 60,
}, new CustomResourceOptions
{
DependsOn =
{
exampleTlsSubscription,
},
}));
}
// This is a resource that other resources can depend on if they require the certificate to be issued.
// NOTE: Internally the resource keeps retrying `GetTLSSubscription` until no error is returned (or the configured timeout is reached).
var exampleTlsSubscriptionValidation = new Fastly.TlsSubscriptionValidation("example", new()
{
SubscriptionId = exampleTlsSubscription.Id,
}, new CustomResourceOptions
{
DependsOn =
{
domainValidation,
},
});
// This data source lists all available configuration objects.
// It uses a `default` attribute to narrow down the list to just one configuration object.
// If the filtered list has a length that is not exactly one element, you'll see an error returned.
// The single TLS configuration is then returned and can be referenced by other resources (see aws_route53_record below).
//
// IMPORTANT: Not all customers will have a 'default' configuration.
// If you have issues filtering with `default = true`, then you may need another attribute.
// Refer to the fastly_tls_configuration documentation for available attributes:
// https://registry.terraform.io/providers/fastly/fastly/latest/docs/data-sources/tls_configuration#optional
var defaultTls = Fastly.GetTlsConfiguration.Invoke(new()
{
Default = true,
});
// Once validation is complete and we've retrieved the TLS configuration data, we can create multiple records...
var apex = new Aws.Index.Route53Record("apex", new()
{
Name = "example.com",
Records = ,
Ttl = 300,
Type = "A",
ZoneId = production.ZoneId,
});
// NOTE: This subdomain matches our Fastly service because of the wildcard domain (`*.example.com`) that was added to the service.
var subdomain = new Aws.Index.Route53Record("subdomain", new()
{
Name = "test.example.com",
Records = ,
Ttl = 300,
Type = "CNAME",
ZoneId = production.ZoneId,
});
});
Example coming soon!
Example coming soon!
Create TlsSubscription Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new TlsSubscription(name: string, args: TlsSubscriptionArgs, opts?: CustomResourceOptions);@overload
def TlsSubscription(resource_name: str,
args: TlsSubscriptionArgs,
opts: Optional[ResourceOptions] = None)
@overload
def TlsSubscription(resource_name: str,
opts: Optional[ResourceOptions] = None,
certificate_authority: Optional[str] = None,
domains: Optional[Sequence[str]] = None,
common_name: Optional[str] = None,
configuration_id: Optional[str] = None,
force_destroy: Optional[bool] = None,
force_update: Optional[bool] = None)func NewTlsSubscription(ctx *Context, name string, args TlsSubscriptionArgs, opts ...ResourceOption) (*TlsSubscription, error)public TlsSubscription(string name, TlsSubscriptionArgs args, CustomResourceOptions? opts = null)
public TlsSubscription(String name, TlsSubscriptionArgs args)
public TlsSubscription(String name, TlsSubscriptionArgs args, CustomResourceOptions options)
type: fastly:TlsSubscription
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args TlsSubscriptionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args TlsSubscriptionArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args TlsSubscriptionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args TlsSubscriptionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args TlsSubscriptionArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var tlsSubscriptionResource = new Fastly.TlsSubscription("tlsSubscriptionResource", new()
{
CertificateAuthority = "string",
Domains = new[]
{
"string",
},
CommonName = "string",
ConfigurationId = "string",
ForceDestroy = false,
ForceUpdate = false,
});
example, err := fastly.NewTlsSubscription(ctx, "tlsSubscriptionResource", &fastly.TlsSubscriptionArgs{
CertificateAuthority: pulumi.String("string"),
Domains: pulumi.StringArray{
pulumi.String("string"),
},
CommonName: pulumi.String("string"),
ConfigurationId: pulumi.String("string"),
ForceDestroy: pulumi.Bool(false),
ForceUpdate: pulumi.Bool(false),
})
var tlsSubscriptionResource = new TlsSubscription("tlsSubscriptionResource", TlsSubscriptionArgs.builder()
.certificateAuthority("string")
.domains("string")
.commonName("string")
.configurationId("string")
.forceDestroy(false)
.forceUpdate(false)
.build());
tls_subscription_resource = fastly.TlsSubscription("tlsSubscriptionResource",
certificate_authority="string",
domains=["string"],
common_name="string",
configuration_id="string",
force_destroy=False,
force_update=False)
const tlsSubscriptionResource = new fastly.TlsSubscription("tlsSubscriptionResource", {
certificateAuthority: "string",
domains: ["string"],
commonName: "string",
configurationId: "string",
forceDestroy: false,
forceUpdate: false,
});
type: fastly:TlsSubscription
properties:
certificateAuthority: string
commonName: string
configurationId: string
domains:
- string
forceDestroy: false
forceUpdate: false
TlsSubscription Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The TlsSubscription resource accepts the following input properties:
- string
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - Domains List<string>
- List of domains on which to enable TLS.
- Common
Name string - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- Configuration
Id string - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- Force
Destroy bool - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- Force
Update bool - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- string
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - Domains []string
- List of domains on which to enable TLS.
- Common
Name string - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- Configuration
Id string - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- Force
Destroy bool - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- Force
Update bool - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- String
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - domains List<String>
- List of domains on which to enable TLS.
- common
Name String - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- configuration
Id String - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- force
Destroy Boolean - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- force
Update Boolean - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- string
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - domains string[]
- List of domains on which to enable TLS.
- common
Name string - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- configuration
Id string - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- force
Destroy boolean - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- force
Update boolean - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- str
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - domains Sequence[str]
- List of domains on which to enable TLS.
- common_
name str - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- configuration_
id str - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- force_
destroy bool - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- force_
update bool - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- String
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - domains List<String>
- List of domains on which to enable TLS.
- common
Name String - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- configuration
Id String - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- force
Destroy Boolean - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- force
Update Boolean - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
Outputs
All input properties are implicitly available as output properties. Additionally, the TlsSubscription resource produces the following output properties:
- Certificate
Id string - The certificate ID associated with the subscription.
- Created
At string - Timestamp (GMT) when the subscription was created.
- Id string
- The provider-assigned unique ID for this managed resource.
- Managed
Dns Dictionary<string, string>Challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- Managed
Dns List<TlsChallenges Subscription Managed Dns Challenge> - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- Managed
Http List<TlsChallenges Subscription Managed Http Challenge> - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - State string
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - Updated
At string - Timestamp (GMT) when the subscription was updated.
- Certificate
Id string - The certificate ID associated with the subscription.
- Created
At string - Timestamp (GMT) when the subscription was created.
- Id string
- The provider-assigned unique ID for this managed resource.
- Managed
Dns map[string]stringChallenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- Managed
Dns []TlsChallenges Subscription Managed Dns Challenge - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- Managed
Http []TlsChallenges Subscription Managed Http Challenge - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - State string
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - Updated
At string - Timestamp (GMT) when the subscription was updated.
- certificate
Id String - The certificate ID associated with the subscription.
- created
At String - Timestamp (GMT) when the subscription was created.
- id String
- The provider-assigned unique ID for this managed resource.
- managed
Dns Map<String,String>Challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Dns List<TlsChallenges Subscription Managed Dns Challenge> - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Http List<TlsChallenges Subscription Managed Http Challenge> - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - state String
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - updated
At String - Timestamp (GMT) when the subscription was updated.
- certificate
Id string - The certificate ID associated with the subscription.
- created
At string - Timestamp (GMT) when the subscription was created.
- id string
- The provider-assigned unique ID for this managed resource.
- managed
Dns {[key: string]: string}Challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Dns TlsChallenges Subscription Managed Dns Challenge[] - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Http TlsChallenges Subscription Managed Http Challenge[] - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - state string
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - updated
At string - Timestamp (GMT) when the subscription was updated.
- certificate_
id str - The certificate ID associated with the subscription.
- created_
at str - Timestamp (GMT) when the subscription was created.
- id str
- The provider-assigned unique ID for this managed resource.
- managed_
dns_ Mapping[str, str]challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed_
dns_ Sequence[Tlschallenges Subscription Managed Dns Challenge] - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed_
http_ Sequence[Tlschallenges Subscription Managed Http Challenge] - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - state str
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - updated_
at str - Timestamp (GMT) when the subscription was updated.
- certificate
Id String - The certificate ID associated with the subscription.
- created
At String - Timestamp (GMT) when the subscription was created.
- id String
- The provider-assigned unique ID for this managed resource.
- managed
Dns Map<String>Challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Dns List<Property Map>Challenges - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Http List<Property Map>Challenges - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - state String
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - updated
At String - Timestamp (GMT) when the subscription was updated.
Look up Existing TlsSubscription Resource
Get an existing TlsSubscription resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: TlsSubscriptionState, opts?: CustomResourceOptions): TlsSubscription@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
certificate_authority: Optional[str] = None,
certificate_id: Optional[str] = None,
common_name: Optional[str] = None,
configuration_id: Optional[str] = None,
created_at: Optional[str] = None,
domains: Optional[Sequence[str]] = None,
force_destroy: Optional[bool] = None,
force_update: Optional[bool] = None,
managed_dns_challenge: Optional[Mapping[str, str]] = None,
managed_dns_challenges: Optional[Sequence[TlsSubscriptionManagedDnsChallengeArgs]] = None,
managed_http_challenges: Optional[Sequence[TlsSubscriptionManagedHttpChallengeArgs]] = None,
state: Optional[str] = None,
updated_at: Optional[str] = None) -> TlsSubscriptionfunc GetTlsSubscription(ctx *Context, name string, id IDInput, state *TlsSubscriptionState, opts ...ResourceOption) (*TlsSubscription, error)public static TlsSubscription Get(string name, Input<string> id, TlsSubscriptionState? state, CustomResourceOptions? opts = null)public static TlsSubscription get(String name, Output<String> id, TlsSubscriptionState state, CustomResourceOptions options)resources: _: type: fastly:TlsSubscription get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- string
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - Certificate
Id string - The certificate ID associated with the subscription.
- Common
Name string - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- Configuration
Id string - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- Created
At string - Timestamp (GMT) when the subscription was created.
- Domains List<string>
- List of domains on which to enable TLS.
- Force
Destroy bool - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- Force
Update bool - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- Managed
Dns Dictionary<string, string>Challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- Managed
Dns List<TlsChallenges Subscription Managed Dns Challenge> - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- Managed
Http List<TlsChallenges Subscription Managed Http Challenge> - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - State string
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - Updated
At string - Timestamp (GMT) when the subscription was updated.
- string
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - Certificate
Id string - The certificate ID associated with the subscription.
- Common
Name string - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- Configuration
Id string - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- Created
At string - Timestamp (GMT) when the subscription was created.
- Domains []string
- List of domains on which to enable TLS.
- Force
Destroy bool - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- Force
Update bool - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- Managed
Dns map[string]stringChallenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- Managed
Dns []TlsChallenges Subscription Managed Dns Challenge Args - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- Managed
Http []TlsChallenges Subscription Managed Http Challenge Args - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - State string
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - Updated
At string - Timestamp (GMT) when the subscription was updated.
- String
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - certificate
Id String - The certificate ID associated with the subscription.
- common
Name String - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- configuration
Id String - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- created
At String - Timestamp (GMT) when the subscription was created.
- domains List<String>
- List of domains on which to enable TLS.
- force
Destroy Boolean - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- force
Update Boolean - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- managed
Dns Map<String,String>Challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Dns List<TlsChallenges Subscription Managed Dns Challenge> - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Http List<TlsChallenges Subscription Managed Http Challenge> - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - state String
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - updated
At String - Timestamp (GMT) when the subscription was updated.
- string
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - certificate
Id string - The certificate ID associated with the subscription.
- common
Name string - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- configuration
Id string - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- created
At string - Timestamp (GMT) when the subscription was created.
- domains string[]
- List of domains on which to enable TLS.
- force
Destroy boolean - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- force
Update boolean - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- managed
Dns {[key: string]: string}Challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Dns TlsChallenges Subscription Managed Dns Challenge[] - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Http TlsChallenges Subscription Managed Http Challenge[] - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - state string
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - updated
At string - Timestamp (GMT) when the subscription was updated.
- str
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - certificate_
id str - The certificate ID associated with the subscription.
- common_
name str - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- configuration_
id str - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- created_
at str - Timestamp (GMT) when the subscription was created.
- domains Sequence[str]
- List of domains on which to enable TLS.
- force_
destroy bool - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- force_
update bool - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- managed_
dns_ Mapping[str, str]challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed_
dns_ Sequence[Tlschallenges Subscription Managed Dns Challenge Args] - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed_
http_ Sequence[Tlschallenges Subscription Managed Http Challenge Args] - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - state str
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - updated_
at str - Timestamp (GMT) when the subscription was updated.
- String
- The entity that issues and certifies the TLS certificates for your subscription. Valid values are
lets-encrypt,globalsignorcertainly. - certificate
Id String - The certificate ID associated with the subscription.
- common
Name String - The common name associated with the subscription generated by Fastly TLS. If you do not pass a common name on create, we will default to the first TLS domain included. If provided, the domain chosen as the common name must be included in TLS domains.
- configuration
Id String - The ID of the set of TLS configuration options that apply to the enabled domains on this subscription.
- created
At String - Timestamp (GMT) when the subscription was created.
- domains List<String>
- List of domains on which to enable TLS.
- force
Destroy Boolean - Force delete the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly. Defaults to false.
- force
Update Boolean - Force update the subscription even if it has active domains. Warning: this can disable production traffic if used incorrectly.
- managed
Dns Map<String>Challenge - The details required to configure DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Dns List<Property Map>Challenges - A list of options for configuring DNS to respond to ACME DNS challenge in order to verify domain ownership.
- managed
Http List<Property Map>Challenges - A list of options for configuring DNS to respond to ACME HTTP challenge in order to verify domain ownership. Best accessed through a
forexpression to filter the relevant record. - state String
- The current state of the subscription. The list of possible states are:
pending,processing,issued, andrenewing. - updated
At String - Timestamp (GMT) when the subscription was updated.
Supporting Types
TlsSubscriptionManagedDnsChallenge, TlsSubscriptionManagedDnsChallengeArgs
- Record
Name string - The name of the DNS record to add. For example
_acme-challenge.example.com. - Record
Type string - The type of DNS record to add, e.g.
A, orCNAME. - Record
Value string - The value to which the DNS record should point, e.g.
xxxxx.fastly-validations.com.
- Record
Name string - The name of the DNS record to add. For example
_acme-challenge.example.com. - Record
Type string - The type of DNS record to add, e.g.
A, orCNAME. - Record
Value string - The value to which the DNS record should point, e.g.
xxxxx.fastly-validations.com.
- record
Name String - The name of the DNS record to add. For example
_acme-challenge.example.com. - record
Type String - The type of DNS record to add, e.g.
A, orCNAME. - record
Value String - The value to which the DNS record should point, e.g.
xxxxx.fastly-validations.com.
- record
Name string - The name of the DNS record to add. For example
_acme-challenge.example.com. - record
Type string - The type of DNS record to add, e.g.
A, orCNAME. - record
Value string - The value to which the DNS record should point, e.g.
xxxxx.fastly-validations.com.
- record_
name str - The name of the DNS record to add. For example
_acme-challenge.example.com. - record_
type str - The type of DNS record to add, e.g.
A, orCNAME. - record_
value str - The value to which the DNS record should point, e.g.
xxxxx.fastly-validations.com.
- record
Name String - The name of the DNS record to add. For example
_acme-challenge.example.com. - record
Type String - The type of DNS record to add, e.g.
A, orCNAME. - record
Value String - The value to which the DNS record should point, e.g.
xxxxx.fastly-validations.com.
TlsSubscriptionManagedHttpChallenge, TlsSubscriptionManagedHttpChallengeArgs
- Record
Name string - The name of the DNS record to add. For example
example.com. Best accessed through aforexpression to filter the relevant record. - Record
Type string - The type of DNS record to add, e.g.
A, orCNAME. - Record
Values List<string> - A list with the value(s) to which the DNS record should point.
- Record
Name string - The name of the DNS record to add. For example
example.com. Best accessed through aforexpression to filter the relevant record. - Record
Type string - The type of DNS record to add, e.g.
A, orCNAME. - Record
Values []string - A list with the value(s) to which the DNS record should point.
- record
Name String - The name of the DNS record to add. For example
example.com. Best accessed through aforexpression to filter the relevant record. - record
Type String - The type of DNS record to add, e.g.
A, orCNAME. - record
Values List<String> - A list with the value(s) to which the DNS record should point.
- record
Name string - The name of the DNS record to add. For example
example.com. Best accessed through aforexpression to filter the relevant record. - record
Type string - The type of DNS record to add, e.g.
A, orCNAME. - record
Values string[] - A list with the value(s) to which the DNS record should point.
- record_
name str - The name of the DNS record to add. For example
example.com. Best accessed through aforexpression to filter the relevant record. - record_
type str - The type of DNS record to add, e.g.
A, orCNAME. - record_
values Sequence[str] - A list with the value(s) to which the DNS record should point.
- record
Name String - The name of the DNS record to add. For example
example.com. Best accessed through aforexpression to filter the relevant record. - record
Type String - The type of DNS record to add, e.g.
A, orCNAME. - record
Values List<String> - A list with the value(s) to which the DNS record should point.
Import
A subscription can be imported using its Fastly subscription ID, e.g.
$ pulumi import fastly:index/tlsSubscription:TlsSubscription demo xxxxxxxxxxx
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Fastly pulumi/pulumi-fastly
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
fastlyTerraform Provider.
