Skip to content

Commit 74a3fda

Browse files
committed
fix(aws): alias original domain name pulumi resources
1 parent 9febb5b commit 74a3fda

File tree

3 files changed

+41
-10
lines changed

3 files changed

+41
-10
lines changed

cloud/aws/deploy/api.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,11 @@ func (a *NitricAwsPulumiProvider) Api(ctx *pulumi.Context, parent pulumi.Resourc
250250
}
251251

252252
func (a *NitricAwsPulumiProvider) createApiDomainName(ctx *pulumi.Context, name string, domainName string, stage *apigatewayv2.Stage, api *apigatewayv2.Api) error {
253-
domain, err := a.newPulumiDomainName(ctx, domainName)
253+
domain, err := a.newPulumiDomainName(ctx, domainArgs{
254+
DomainName: domainName,
255+
// Required for backwards compatibility with provider versions < 1.26.1
256+
AliasName: name,
257+
})
254258
if err != nil {
255259
return err
256260
}

cloud/aws/deploy/domain.go

Lines changed: 35 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package deploy
1818

1919
import (
2020
"fmt"
21+
"slices"
2122

2223
awsprovider "github.com/pulumi/pulumi-aws/sdk/v5/go/aws"
2324

@@ -35,16 +36,22 @@ type Domain struct {
3536
CertificateValidation *acm.CertificateValidation
3637
}
3738

38-
func (a *NitricAwsPulumiProvider) newPulumiDomainName(ctx *pulumi.Context, domainName string) (*Domain, error) {
39+
type domainArgs struct {
40+
DomainName string
41+
// Required for backwards compatibility with provider versions < 1.26.1
42+
AliasName string
43+
}
44+
45+
func (a *NitricAwsPulumiProvider) newPulumiDomainName(ctx *pulumi.Context, args domainArgs) (*Domain, error) {
3946
var err error
40-
res := &Domain{Name: domainName}
47+
res := &Domain{Name: args.DomainName}
4148

42-
res.ZoneLookup, err = resources.GetZoneID(domainName)
49+
res.ZoneLookup, err = resources.GetZoneID(args.DomainName)
4350
if err != nil {
4451
return nil, err
4552
}
4653

47-
err = ctx.RegisterComponentResource("nitric:api:DomainName", fmt.Sprintf("%s-%s", domainName, a.StackId), res)
54+
err = ctx.RegisterComponentResource("nitric:api:DomainName", fmt.Sprintf("%s-%s", args.DomainName, a.StackId), res)
4855
if err != nil {
4956
return nil, err
5057
}
@@ -64,9 +71,14 @@ func (a *NitricAwsPulumiProvider) newPulumiDomainName(ctx *pulumi.Context, domai
6471
}
6572

6673
cert, err := acm.NewCertificate(ctx, fmt.Sprintf("cert-%s", a.StackId), &acm.CertificateArgs{
67-
DomainName: pulumi.String(domainName),
74+
DomainName: pulumi.String(args.DomainName),
6875
ValidationMethod: pulumi.String("DNS"),
69-
}, defaultOptions...)
76+
},
77+
slices.Concat(defaultOptions, []pulumi.ResourceOption{pulumi.Aliases([]pulumi.Alias{
78+
// Required for backwards compatibility with provider versions < 1.26.1
79+
{Name: pulumi.String(fmt.Sprintf("%s-%s-cert", args.AliasName, args.DomainName))},
80+
})})...,
81+
)
7082
if err != nil {
7183
return nil, err
7284
}
@@ -75,6 +87,8 @@ func (a *NitricAwsPulumiProvider) newPulumiDomainName(ctx *pulumi.Context, domai
7587
return options[0]
7688
})
7789

90+
// certValidationDns, err := route53.NewRecord(ctx, fmt.Sprintf("%s-%s-certvalidationdns", name, args.domainName), &route53.RecordArgs{
91+
7892
cdnRecord, err := route53.NewRecord(ctx, fmt.Sprintf("cdn-record-%s", a.StackId), &route53.RecordArgs{
7993
Name: domainValidationOption.ApplyT(func(option interface{}) string {
8094
return *option.(acm.CertificateDomainValidationOption).ResourceRecordName
@@ -89,7 +103,13 @@ func (a *NitricAwsPulumiProvider) newPulumiDomainName(ctx *pulumi.Context, domai
89103
},
90104
Ttl: pulumi.Int(10 * 60),
91105
ZoneId: pulumi.String(res.ZoneLookup.ZoneID),
92-
}, []pulumi.ResourceOption{pulumi.Parent(res)}...)
106+
}, []pulumi.ResourceOption{
107+
pulumi.Parent(res),
108+
pulumi.Aliases([]pulumi.Alias{
109+
// Required for backwards compatibility with provider versions < 1.26.1
110+
{Name: pulumi.String(fmt.Sprintf("%s-%s-certvalidationdns", args.AliasName, args.DomainName))},
111+
}),
112+
}...)
93113
if err != nil {
94114
return nil, err
95115
}
@@ -99,7 +119,14 @@ func (a *NitricAwsPulumiProvider) newPulumiDomainName(ctx *pulumi.Context, domai
99119
ValidationRecordFqdns: pulumi.StringArray{
100120
cdnRecord.Fqdn,
101121
},
102-
}, defaultOptions...)
122+
},
123+
slices.Concat(defaultOptions, []pulumi.ResourceOption{
124+
pulumi.Aliases([]pulumi.Alias{
125+
// Required for backwards compatibility with provider versions < 1.26.1
126+
{Name: pulumi.String(fmt.Sprintf("%s-%s-certvalidation", args.AliasName, args.DomainName))},
127+
}),
128+
})...,
129+
)
103130
if err != nil {
104131
return nil, err
105132
}

cloud/aws/deploy/website.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,7 +335,7 @@ func (a *NitricAwsPulumiProvider) deployCloudfrontDistribution(ctx *pulumi.Conte
335335
if domainName != "" {
336336
aliases = []string{domainName}
337337

338-
domain, err := a.newPulumiDomainName(ctx, domainName)
338+
domain, err := a.newPulumiDomainName(ctx, domainArgs{DomainName: domainName})
339339
if err != nil {
340340
return err
341341
}

0 commit comments

Comments
 (0)