From b877a0c938642d865529a5233cc2dfabbbad85d0 Mon Sep 17 00:00:00 2001 From: Paul Kirkwood Date: Wed, 15 Feb 2023 10:45:45 +0000 Subject: auto_update can only be set to true on create --- .../internal/service/taskagent/resource_agentpool.go | 14 +++++++++++--- .../internal/service/taskagent/resource_agentpool_test.go | 1 - 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/azuredevops/internal/service/taskagent/resource_agentpool.go b/azuredevops/internal/service/taskagent/resource_agentpool.go index 0cba6887..e5686a7d 100644 --- a/azuredevops/internal/service/taskagent/resource_agentpool.go +++ b/azuredevops/internal/service/taskagent/resource_agentpool.go @@ -49,7 +49,6 @@ func ResourceAgentPool() *schema.Resource { "auto_update": { Type: schema.TypeBool, Optional: true, - Default: false, }, }, } @@ -153,7 +152,10 @@ func flattenAzureAgentPool(d *schema.ResourceData, agentPool *taskagent.TaskAgen d.Set("name", converter.ToString(agentPool.Name, "")) d.Set("pool_type", *agentPool.PoolType) d.Set("auto_provision", *agentPool.AutoProvision) - d.Set("auto_update", *agentPool.AutoUpdate) + + if agentPool.AutoUpdate != nil { + d.Set("auto_update", *agentPool.AutoUpdate) + } } func expandAgentPool(d *schema.ResourceData, forCreate bool) (*taskagent.TaskAgentPool, error) { @@ -169,7 +171,13 @@ func expandAgentPool(d *schema.ResourceData, forCreate bool) (*taskagent.TaskAge Name: converter.String(d.Get("name").(string)), PoolType: &poolType, AutoProvision: converter.Bool(d.Get("auto_provision").(bool)), - AutoUpdate: converter.Bool(d.Get("auto_update").(bool)), + } + + if autoUpdate, ok := d.GetOk("auto_update"); ok { + if forCreate && !autoUpdate.(bool) { + return nil, fmt.Errorf("auto_update can only be set to true on create") + } + pool.AutoUpdate = converter.Bool(d.Get("auto_update").(bool)) } return pool, nil diff --git a/azuredevops/internal/service/taskagent/resource_agentpool_test.go b/azuredevops/internal/service/taskagent/resource_agentpool_test.go index f1f81fe2..bafd0c3b 100644 --- a/azuredevops/internal/service/taskagent/resource_agentpool_test.go +++ b/azuredevops/internal/service/taskagent/resource_agentpool_test.go @@ -30,7 +30,6 @@ var testAgentPool = taskagent.TaskAgentPool{ Name: converter.String("Name"), PoolType: &taskagent.TaskAgentPoolTypeValues.Automation, AutoProvision: converter.Bool(false), - AutoUpdate: converter.Bool(false), } // verifies that the flatten/expand round trip yields the same agent pool definition -- cgit v1.2.3