discovery/aws: handle rds clusters without instances

Signed-off-by: Antoine Labarussias <antoinelabarussias@gmail.com>
This commit is contained in:
Antoine Labarussias 2026-06-03 09:21:46 +02:00
parent f3d653fb5c
commit 24b1b60836
No known key found for this signature in database
GPG key ID: 149D68C2439559EF
2 changed files with 15 additions and 3 deletions

View file

@ -486,9 +486,6 @@ func (d *RDSDiscovery) describeDBInstances(ctx context.Context, dbClusterARN str
if err != nil {
return nil, fmt.Errorf("failed to describe DB instances for cluster ARN %s: %w", dbClusterARN, err)
}
if len(output.DBInstances) == 0 {
return nil, fmt.Errorf("no DB instances found for cluster ARN %s", dbClusterARN)
}
for _, dbInstance := range output.DBInstances {
mu.Lock()

View file

@ -250,6 +250,21 @@ func TestRDSDiscoveryRefresh(t *testing.T) {
},
},
},
{
name: "NoInstancesInCluster",
clusters: map[string]types.DBCluster{
"arn:aws:rds:us-west-2:123456789012:cluster:prod-cluster": {
DBClusterArn: aws.String("arn:aws:rds:us-west-2:123456789012:cluster:prod-cluster"),
DBClusterIdentifier: aws.String("prod-cluster"),
Engine: aws.String("aurora-mysql"),
EngineVersion: aws.String("8.0.mysql_aurora.3.04.0"),
Status: aws.String("available"),
DBClusterMembers: []types.DBClusterMember{},
},
},
instances: map[string][]types.DBInstance{},
expectedLabels: []model.LabelSet{},
},
}
for _, tt := range tests {