get Zone
Use this data source to look up zone info. This is the singular alternative to cloudflare.getZones
.
Note Cloudflare zone names are not unique. It is possible for multiple accounts to have the same zone created but in different states. If you are using this setup, it is advised to use the
account_id
attribute on this resource or swap tocloudflare.getZones
to further filter the results.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as cloudflare from "@pulumi/cloudflare";
const example = cloudflare.getZone({
name: "example.com",
});
const exampleRecord = new cloudflare.Record("example", {
zoneId: example.then(example => example.id),
name: "www",
content: "203.0.113.1",
type: "A",
proxied: true,
});
import pulumi
import pulumi_cloudflare as cloudflare
example = cloudflare.get_zone(name="example.com")
example_record = cloudflare.Record("example",
zone_id=example.id,
name="www",
content="203.0.113.1",
type="A",
proxied=True)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Cloudflare = Pulumi.Cloudflare;
return await Deployment.RunAsync(() =>
{
var example = Cloudflare.GetZone.Invoke(new()
{
Name = "example.com",
});
var exampleRecord = new Cloudflare.Record("example", new()
{
ZoneId = example.Apply(getZoneResult => getZoneResult.Id),
Name = "www",
Content = "203.0.113.1",
Type = "A",
Proxied = true,
});
});
package main
import (
"github.com/pulumi/pulumi-cloudflare/sdk/v5/go/cloudflare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := cloudflare.LookupZone(ctx, &cloudflare.LookupZoneArgs{
Name: pulumi.StringRef("example.com"),
}, nil)
if err != nil {
return err
}
_, err = cloudflare.NewRecord(ctx, "example", &cloudflare.RecordArgs{
ZoneId: pulumi.String(example.Id),
Name: pulumi.String("www"),
Content: pulumi.String("203.0.113.1"),
Type: pulumi.String("A"),
Proxied: pulumi.Bool(true),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cloudflare.CloudflareFunctions;
import com.pulumi.cloudflare.inputs.GetZoneArgs;
import com.pulumi.cloudflare.Record;
import com.pulumi.cloudflare.RecordArgs;
import java.util.List;
import java.util.ArrayList;
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) {
final var example = CloudflareFunctions.getZone(GetZoneArgs.builder()
.name("example.com")
.build());
var exampleRecord = new Record("exampleRecord", RecordArgs.builder()
.zoneId(example.applyValue(getZoneResult -> getZoneResult.id()))
.name("www")
.content("203.0.113.1")
.type("A")
.proxied(true)
.build());
}
}
resources:
exampleRecord:
type: cloudflare:Record
name: example
properties:
zoneId: ${example.id}
name: www
content: 203.0.113.1
type: A
proxied: true
variables:
example:
fn::invoke:
function: cloudflare:getZone
arguments:
name: example.com
Return
A collection of values returned by getZone.
Parameters
A collection of arguments for invoking getZone.
Return
A collection of values returned by getZone.
Parameters
The account identifier to target for the resource.
The name of the zone. Must provide only one of zone_id
, name
.
The zone identifier to target for the resource. Must provide only one of zone_id
, name
.
See also
Return
A collection of values returned by getZone.
Parameters
Builder for com.pulumi.cloudflare.kotlin.inputs.GetZonePlainArgs.