From 1a5da4fbe0b894b033ee909b17508368fd6d18a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Duboc?= Date: Tue, 24 Feb 2026 12:12:57 +0100 Subject: [PATCH] fix(discovery): apply EC2 SD endpoint and guard refreshAZIDs nils (#18133) Signed-off-by: Aurelien Duboc --- discovery/aws/ec2.go | 14 +++++++++++++- discovery/aws/lightsail.go | 7 ++++++- 2 files changed, 19 insertions(+), 2 deletions(-) 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 }