diff --git a/discovery/aws/ec2.go b/discovery/aws/ec2.go index 4daff43ecc..48ab411d72 100644 --- a/discovery/aws/ec2.go +++ b/discovery/aws/ec2.go @@ -224,7 +224,12 @@ func (d *EC2Discovery) ec2Client(ctx context.Context) (ec2Client, error) { cfg.Credentials = aws.NewCredentialsCache(assumeProvider) } - d.ec2 = ec2.NewFromConfig(cfg) + d.ec2 = ec2.NewFromConfig(cfg, func(options *ec2.Options) { + if d.cfg.Endpoint != "" { + options.BaseEndpoint = &d.cfg.Endpoint + } + options.HTTPClient = httpClient + }) return d.ec2, nil } @@ -234,8 +239,15 @@ func (d *EC2Discovery) refreshAZIDs(ctx context.Context) error { if err != nil { return err } + if azs.AvailabilityZones == nil { + d.azToAZID = make(map[string]string) + return nil + } d.azToAZID = make(map[string]string, len(azs.AvailabilityZones)) for _, az := range azs.AvailabilityZones { + if az.ZoneName == nil || az.ZoneId == nil { + continue + } d.azToAZID[*az.ZoneName] = *az.ZoneId } return nil diff --git a/discovery/aws/lightsail.go b/discovery/aws/lightsail.go index 69a5b6625f..39e4716957 100644 --- a/discovery/aws/lightsail.go +++ b/discovery/aws/lightsail.go @@ -188,7 +188,12 @@ func (d *LightsailDiscovery) lightsailClient(ctx context.Context) (*lightsail.Cl cfg.Credentials = aws.NewCredentialsCache(assumeProvider) } - d.lightsail = lightsail.NewFromConfig(cfg) + d.lightsail = lightsail.NewFromConfig(cfg, func(options *lightsail.Options) { + if d.cfg.Endpoint != "" { + options.BaseEndpoint = &d.cfg.Endpoint + } + options.HTTPClient = httpClient + }) return d.lightsail, nil }