From b807cf210734bc1a490212ef78c2e3de223dd15a Mon Sep 17 00:00:00 2001 From: Delaine Rogers Date: Wed, 19 Aug 2026 14:00:50 -0700 Subject: [PATCH] Allow nil setAttributes --- plugin/service/host/plugin.go | 3 +++ plugin/service/host/plugin_test.go | 15 +++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/plugin/service/host/plugin.go b/plugin/service/host/plugin.go index 17b1836..ec7fb79 100644 --- a/plugin/service/host/plugin.go +++ b/plugin/service/host/plugin.go @@ -594,6 +594,9 @@ func (p *HostPlugin) ListHosts(ctx context.Context, req *pb.ListHostsRequest) (* } func buildFilters(attrs *SetAttributes) ([]types.Filter, error) { + if attrs == nil { + attrs = &SetAttributes{} + } var filters []types.Filter var foundStateFilter bool for _, filterAttr := range attrs.Filters { diff --git a/plugin/service/host/plugin_test.go b/plugin/service/host/plugin_test.go index 5e4bbd1..a10093b 100644 --- a/plugin/service/host/plugin_test.go +++ b/plugin/service/host/plugin_test.go @@ -2383,6 +2383,21 @@ func TestBuildDescribeInstancesInput(t *testing.T) { require.Equal(tc.expected, actual) }) } + + t.Run("nil attrs, dry run", func(t *testing.T) { + require := require.New(t) + actual, err := buildDescribeInstancesInput(nil, true) + require.NoError(err) + require.Equal(&ec2.DescribeInstancesInput{ + DryRun: aws.Bool(true), + Filters: []types.Filter{ + { + Name: aws.String("instance-state-name"), + Values: []string{string(types.InstanceStateNameRunning)}, + }, + }, + }, actual) + }) } func TestAwsInstanceToHost(t *testing.T) {