mirror of
https://github.com/kubernetes-sigs/external-dns.git
synced 2025-08-07 01:56:57 +02:00
Merge pull request #676 from lb-saildrone/add-assumerole-aws-sd
adding assume role to aws_sd provider
This commit is contained in:
commit
fd3bed1f87
2
main.go
2
main.go
@ -112,7 +112,7 @@ func main() {
|
||||
log.Infof("Registry \"%s\" cannot be used with AWS ServiceDiscovery. Switching to \"aws-sd\".", cfg.Registry)
|
||||
cfg.Registry = "aws-sd"
|
||||
}
|
||||
p, err = provider.NewAWSSDProvider(domainFilter, cfg.AWSZoneType, cfg.DryRun)
|
||||
p, err = provider.NewAWSSDProvider(domainFilter, cfg.AWSZoneType, cfg.AWSAssumeRole, cfg.DryRun)
|
||||
case "azure":
|
||||
p, err = provider.NewAzureProvider(cfg.AzureConfigFile, domainFilter, zoneIDFilter, cfg.AzureResourceGroup, cfg.DryRun)
|
||||
case "cloudflare":
|
||||
|
@ -23,6 +23,7 @@ import (
|
||||
"encoding/hex"
|
||||
"fmt"
|
||||
"github.com/aws/aws-sdk-go/aws"
|
||||
"github.com/aws/aws-sdk-go/aws/credentials/stscreds"
|
||||
"github.com/aws/aws-sdk-go/aws/request"
|
||||
"github.com/aws/aws-sdk-go/aws/session"
|
||||
sd "github.com/aws/aws-sdk-go/service/servicediscovery"
|
||||
@ -69,7 +70,7 @@ type AWSSDProvider struct {
|
||||
}
|
||||
|
||||
// NewAWSSDProvider initializes a new AWS Route53 Auto Naming based Provider.
|
||||
func NewAWSSDProvider(domainFilter DomainFilter, namespaceType string, dryRun bool) (*AWSSDProvider, error) {
|
||||
func NewAWSSDProvider(domainFilter DomainFilter, namespaceType string, assumeRole string, dryRun bool) (*AWSSDProvider, error) {
|
||||
config := aws.NewConfig()
|
||||
|
||||
config = config.WithHTTPClient(
|
||||
@ -88,6 +89,12 @@ func NewAWSSDProvider(domainFilter DomainFilter, namespaceType string, dryRun bo
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if assumeRole != "" {
|
||||
log.Infof("Assuming role: %s", assumeRole)
|
||||
sess.Config.WithCredentials(stscreds.NewCredentials(sess, assumeRole))
|
||||
}
|
||||
|
||||
sess.Handlers.Build.PushBack(request.MakeAddToUserAgentHandler("ExternalDNS", externaldns.Version))
|
||||
|
||||
provider := &AWSSDProvider{
|
||||
|
Loading…
Reference in New Issue
Block a user