in cmd/lb_alias.go [17:56]
func (o lbAliasOperation) execute() {
loadBalancer, err := o.findLB(o.lbName)
if err != nil {
o.output.Fatal(err, "Could not alias load balancer")
return
}
hostedZones, err := o.route53.ListHostedZones()
if err != nil {
o.output.Fatal(err, "Could not alias load balancer")
return
}
if hostedZone, ok := hostedZones.FindSuperDomainOf(o.aliasDomain); ok {
o.output.Debug("Creating alias record [API=route53 Action=CreateResourceRecordSet]")
id, err := o.route53.CreateAlias(
route53.CreateAliasInput{
HostedZoneID: hostedZone.ID,
RecordType: "A",
Name: o.aliasDomain,
Target: loadBalancer.DNSName,
TargetHostedZoneID: loadBalancer.HostedZoneID,
},
)
if err != nil {
o.output.Fatal(err, "Could not alias load balancer")
return
}
o.output.Debug("Created alias record [ChangeID=%s]", id)
o.output.Info("Created alias record (%s -> %s)", o.aliasDomain, loadBalancer.DNSName)
} else {
o.output.Warn("Could not find hosted zone for %s", o.aliasDomain)
o.output.Say("If you're hosting this domain elsewhere or in another AWS account, please manually create the alias record:", 1)
o.output.Say("%s -> %s", 1, o.aliasDomain, loadBalancer.DNSName)
}
}