From 1aef7c1bc3e8afa3a15a1091ae2dd4c823e816ed Mon Sep 17 00:00:00 2001 From: catriona-m <86247157+catriona-m@users.noreply.github.com> Date: Thu, 18 Jul 2024 15:19:23 +0100 Subject: [PATCH] `dependencies` - bump `hashicorp/go-azure-sdk` to `v0.20240715.1103416` (#26669) * bump go-azure-sdk to v0.20240715.1103416 * go mod tidy --- go.mod | 4 +-- go.sum | 8 ++--- .../sdk/client/resourcemanager/poller_lro.go | 32 ++++++++++--------- .../poller_provisioning_state.go | 10 +++--- vendor/modules.txt | 4 +-- 5 files changed, 31 insertions(+), 27 deletions(-) diff --git a/go.mod b/go.mod index 8d07373d403e..77e11ce9b9fa 100644 --- a/go.mod +++ b/go.mod @@ -17,8 +17,8 @@ require ( github.com/google/go-cmp v0.5.9 github.com/google/uuid v1.4.0 github.com/hashicorp/go-azure-helpers v0.70.0 - github.com/hashicorp/go-azure-sdk/resource-manager v0.20240715.1100358 - github.com/hashicorp/go-azure-sdk/sdk v0.20240715.1100358 + github.com/hashicorp/go-azure-sdk/resource-manager v0.20240715.1103416 + github.com/hashicorp/go-azure-sdk/sdk v0.20240715.1103416 github.com/hashicorp/go-hclog v1.6.3 github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/go-uuid v1.0.3 diff --git a/go.sum b/go.sum index ed0ad0d94a49..d09bb568f87e 100644 --- a/go.sum +++ b/go.sum @@ -95,10 +95,10 @@ github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/go-azure-helpers v0.70.0 h1:3wvA/KLT1utHkgiz6hR426/wl+61Eg144/ba5dE39k8= github.com/hashicorp/go-azure-helpers v0.70.0/go.mod h1:BmbF4JDYXK5sEmFeU5hcn8Br21uElcqLfdQxjatwQKw= -github.com/hashicorp/go-azure-sdk/resource-manager v0.20240715.1100358 h1:b7BEgaBZnIx0HvBy1lyAehJjyTzbivcL/vJEWuhZKO4= -github.com/hashicorp/go-azure-sdk/resource-manager v0.20240715.1100358/go.mod h1:MOGHJxcUV68H2eyaykr0kbmqmF6xcZ9QwlKnkjmRSyk= -github.com/hashicorp/go-azure-sdk/sdk v0.20240715.1100358 h1:4qja7tP0biOJHsCeJIQ5CGqI/OWtaSgEfStVt54f3og= -github.com/hashicorp/go-azure-sdk/sdk v0.20240715.1100358/go.mod h1:dMKF6bXrgGmy1d3pLzkmBpG2JIHgSAV2/OMSCEgyMwE= +github.com/hashicorp/go-azure-sdk/resource-manager v0.20240715.1103416 h1:TEAZyGtJoBPIxE0bif+fjLE0SurzU95pOTM0CILUnh0= +github.com/hashicorp/go-azure-sdk/resource-manager v0.20240715.1103416/go.mod h1:8rhCtgnQvMPQEhKxYJjdxAEhodA9sOT+GzVRvzJYYvk= +github.com/hashicorp/go-azure-sdk/sdk v0.20240715.1103416 h1:84S+8LdbZLDAUo1+dOr2lq13/hIzHnPxX/QokzGDKo4= +github.com/hashicorp/go-azure-sdk/sdk v0.20240715.1103416/go.mod h1:dMKF6bXrgGmy1d3pLzkmBpG2JIHgSAV2/OMSCEgyMwE= github.com/hashicorp/go-checkpoint v0.5.0 h1:MFYpPZCnQqQTE18jFwSII6eUQrD/oxMFp3mlgcqk5mU= github.com/hashicorp/go-checkpoint v0.5.0/go.mod h1:7nfLNL10NsxqO4iWuW6tWW0HjZuDrwkBuEQsVcpCOgg= github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= diff --git a/vendor/github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager/poller_lro.go b/vendor/github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager/poller_lro.go index da08efa21e47..0eade8da42ee 100644 --- a/vendor/github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager/poller_lro.go +++ b/vendor/github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager/poller_lro.go @@ -15,10 +15,8 @@ import ( "strings" "time" - "github.com/hashicorp/go-azure-helpers/lang/response" "github.com/hashicorp/go-azure-sdk/sdk/client" "github.com/hashicorp/go-azure-sdk/sdk/client/pollers" - "github.com/hashicorp/go-azure-sdk/sdk/odata" ) var _ pollers.PollerType = &longRunningOperationPoller{} @@ -79,14 +77,6 @@ func (p *longRunningOperationPoller) Poll(ctx context.Context) (result *pollers. return nil, fmt.Errorf("internal error: cannot poll without a pollingUrl") } - // Retry the polling operation if a 404 was returned - retryOn404 := func(resp *http.Response, _ *odata.OData) (bool, error) { - if resp != nil && response.WasStatusCode(resp, http.StatusNotFound) { - return true, nil - } - return false, nil - } - reqOpts := client.RequestOptions{ ContentType: "application/json; charset=utf-8", ExpectedStatusCodes: []int{ @@ -94,11 +84,14 @@ func (p *longRunningOperationPoller) Poll(ctx context.Context) (result *pollers. http.StatusCreated, http.StatusAccepted, http.StatusNoContent, + + // NOTE: 404 doesn't want to be a retry since we already retry on 404 + http.StatusNotFound, }, HttpMethod: http.MethodGet, OptionsObject: nil, Path: p.pollingUrl.Path, - RetryFunc: client.RequestRetryAny(append(defaultRetryFunctions, retryOn404)...), + RetryFunc: client.RequestRetryAny(defaultRetryFunctions...), } // TODO: port over the `api-version` header @@ -135,6 +128,13 @@ func (p *longRunningOperationPoller) Poll(ctx context.Context) (result *pollers. } } + // We've just created/changed this resource, so it _should_ exist but some APIs + // return a 404 initially - so we should wait for that to complete for non-Delete LROs + if result.HttpResponse.StatusCode == http.StatusNotFound { + result.Status = pollers.PollingStatusInProgress + return + } + // 202's don't necessarily return a body, so there's nothing to deserialize if result.HttpResponse.StatusCode == http.StatusAccepted { result.Status = pollers.PollingStatusInProgress @@ -213,15 +213,17 @@ type operationResult struct { // > cannot parse " 01:58:30 +0000" as "T" StartTime *string `json:"startTime"` - Properties struct { - // Some APIs (such as Storage) return the Resource Representation from the LRO API, as such we need to check provisioningState - ProvisioningState status `json:"provisioningState"` - } `json:"properties"` + Properties operationResultProperties `json:"properties"` // others return Status, so we check that too Status status `json:"status"` } +type operationResultProperties struct { + // Some APIs (such as Storage) return the Resource Representation from the LRO API, as such we need to check provisioningState + ProvisioningState status `json:"provisioningState"` +} + type status string const ( diff --git a/vendor/github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager/poller_provisioning_state.go b/vendor/github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager/poller_provisioning_state.go index 0805d872b613..f5c6f2e81d7a 100644 --- a/vendor/github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager/poller_provisioning_state.go +++ b/vendor/github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager/poller_provisioning_state.go @@ -143,15 +143,17 @@ func (p *provisioningStatePoller) Poll(ctx context.Context) (*pollers.PollResult } type provisioningStateResult struct { - Properties struct { - // Some API's (such as Storage) return the Resource Representation from the LRO API, as such we need to check provisioningState - ProvisioningState status `json:"provisioningState"` - } `json:"properties"` + Properties provisioningStateResultProperties `json:"properties"` // others return Status, so we check that too Status status `json:"status"` } +type provisioningStateResultProperties struct { + // Some API's (such as Storage) return the Resource Representation from the LRO API, as such we need to check provisioningState + ProvisioningState status `json:"provisioningState"` +} + func resourceManagerResourcePathFromUri(input string) (*string, error) { parsed, err := url.ParseRequestURI(input) if err != nil { diff --git a/vendor/modules.txt b/vendor/modules.txt index a5d4356b04cf..d7c413aef345 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -152,7 +152,7 @@ github.com/hashicorp/go-azure-helpers/resourcemanager/tags github.com/hashicorp/go-azure-helpers/resourcemanager/zones github.com/hashicorp/go-azure-helpers/sender github.com/hashicorp/go-azure-helpers/storage -# github.com/hashicorp/go-azure-sdk/resource-manager v0.20240715.1100358 +# github.com/hashicorp/go-azure-sdk/resource-manager v0.20240715.1103416 ## explicit; go 1.21 github.com/hashicorp/go-azure-sdk/resource-manager/aad/2021-05-01/domainservices github.com/hashicorp/go-azure-sdk/resource-manager/aadb2c/2021-04-01-preview @@ -1121,7 +1121,7 @@ github.com/hashicorp/go-azure-sdk/resource-manager/workloads/2023-04-01/saplands github.com/hashicorp/go-azure-sdk/resource-manager/workloads/2023-04-01/saprecommendations github.com/hashicorp/go-azure-sdk/resource-manager/workloads/2023-04-01/sapsupportedsku github.com/hashicorp/go-azure-sdk/resource-manager/workloads/2023-04-01/sapvirtualinstances -# github.com/hashicorp/go-azure-sdk/sdk v0.20240715.1100358 +# github.com/hashicorp/go-azure-sdk/sdk v0.20240715.1103416 ## explicit; go 1.21 github.com/hashicorp/go-azure-sdk/sdk/auth github.com/hashicorp/go-azure-sdk/sdk/auth/autorest