platform/domain.go
2022-03-18 02:14:49 +00:00

36 lines
771 B
Go

package main
import (
"github.com/pulumi/pulumi-linode/sdk/v3/go/linode"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
type Domain struct {
Name string
Description string
SoaEmail string
Tags []string
}
func domain(ctx *pulumi.Context) error {
var d Domain
cfg := config.New(ctx, "")
cfg.RequireObject("domain", &d)
domainArgs := linode.DomainArgs{
Description: pulumi.String(d.Description),
Type: pulumi.String("master"),
Domain: pulumi.String(d.Name),
SoaEmail: pulumi.String(d.SoaEmail),
Tags: pulumi.ToStringArray(d.Tags),
}
_, err := linode.NewDomain(ctx, d.Name, &domainArgs, pulumi.Protect(true))
if err != nil {
return err
}
return nil
}