diff --git a/agent_pool.go b/agent_pool.go index a5db842a6..98cf13dff 100644 --- a/agent_pool.go +++ b/agent_pool.go @@ -70,6 +70,8 @@ type AgentPoolListOptions struct { // Optional: A list of relations to include. See available resources // https://www.terraform.io/cloud-docs/api-docs/agents#available-related-resources Include []AgentPoolIncludeOpt `url:"include,omitempty"` + + Query string `url:"q,omitempty"` } // AgentPoolCreateOptions represents the options for creating an agent pool. diff --git a/agent_pool_integration_test.go b/agent_pool_integration_test.go index a054ff4f9..6edf3a8e6 100644 --- a/agent_pool_integration_test.go +++ b/agent_pool_integration_test.go @@ -68,6 +68,21 @@ func TestAgentPoolsList(t *testing.T) { assert.Nil(t, pools) assert.EqualError(t, err, ErrInvalidOrg.Error()) }) + + t.Run("with query options", func(t *testing.T) { + + pools, err := client.AgentPools.List(ctx, orgTest.Name, &AgentPoolListOptions{ + Query: agentPool.Name, + }) + require.NoError(t, err) + assert.Equal(t, len(pools.Items), 1) + + pools, err = client.AgentPools.List(ctx, orgTest.Name, &AgentPoolListOptions{ + Query: agentPool.Name + "not_going_to_match", + }) + require.NoError(t, err) + assert.Empty(t, pools.Items) + }) } func TestAgentPoolsCreate(t *testing.T) {