diff --git a/internal/services/resource/client/client.go b/internal/services/resource/client/client.go index 5f1cb279f283..b954b0f8ea10 100644 --- a/internal/services/resource/client/client.go +++ b/internal/services/resource/client/client.go @@ -6,13 +6,13 @@ package client import ( "fmt" - "github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs" // nolint: staticcheck - "github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2020-06-01/resources" // nolint: staticcheck + "github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2020-06-01/resources" // nolint: staticcheck "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2020-05-01/managementlocks" "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2020-05-01/privatelinkassociation" "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2020-05-01/resourcemanagementprivatelink" "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2020-10-01/deploymentscripts" "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2021-07-01/features" + "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions" "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-09-01/providers" "github.com/hashicorp/terraform-provider-azurerm/internal/common" ) @@ -28,7 +28,7 @@ type Client struct { ResourceProvidersClient *providers.ProvidersClient ResourcesClient *resources.Client TagsClient *resources.TagsClient - TemplateSpecsVersionsClient *templatespecs.VersionsClient + TemplateSpecsVersionsClient *templatespecversions.TemplateSpecVersionsClient options *common.ClientOptions } @@ -79,8 +79,11 @@ func NewClient(o *common.ClientOptions) (*Client, error) { resourcesClient := resources.NewClientWithBaseURI(o.ResourceManagerEndpoint, o.SubscriptionId) o.ConfigureClient(&resourcesClient.Client, o.ResourceManagerAuthorizer) - templatespecsVersionsClient := templatespecs.NewVersionsClientWithBaseURI(o.ResourceManagerEndpoint, o.SubscriptionId) - o.ConfigureClient(&templatespecsVersionsClient.Client, o.ResourceManagerAuthorizer) + templateSpecsVersionsClient, err := templatespecversions.NewTemplateSpecVersionsClientWithBaseURI(o.Environment.ResourceManager) + if err != nil { + return nil, fmt.Errorf("building TemplateSpecVersions client: %+v", err) + } + o.Configure(templateSpecsVersionsClient.Client, o.Authorizers.ResourceManager) tagsClient := resources.NewTagsClientWithBaseURI(o.ResourceManagerEndpoint, o.SubscriptionId) o.ConfigureClient(&tagsClient.Client, o.ResourceManagerAuthorizer) @@ -96,7 +99,7 @@ func NewClient(o *common.ClientOptions) (*Client, error) { ResourceProvidersClient: resourceProvidersClient, ResourcesClient: &resourcesClient, TagsClient: &tagsClient, - TemplateSpecsVersionsClient: &templatespecsVersionsClient, + TemplateSpecsVersionsClient: templateSpecsVersionsClient, options: o, }, nil diff --git a/internal/services/resource/template_spec_version_data_source.go b/internal/services/resource/template_spec_version_data_source.go index b64609ee1f49..e813c9ed53c2 100644 --- a/internal/services/resource/template_spec_version_data_source.go +++ b/internal/services/resource/template_spec_version_data_source.go @@ -7,14 +7,14 @@ import ( "fmt" "time" + "github.com/hashicorp/go-azure-helpers/lang/response" "github.com/hashicorp/go-azure-helpers/resourcemanager/commonschema" + "github.com/hashicorp/go-azure-helpers/resourcemanager/tags" + "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions" "github.com/hashicorp/terraform-provider-azurerm/internal/clients" - "github.com/hashicorp/terraform-provider-azurerm/internal/services/resource/parse" "github.com/hashicorp/terraform-provider-azurerm/internal/services/resource/validate" - "github.com/hashicorp/terraform-provider-azurerm/internal/tags" "github.com/hashicorp/terraform-provider-azurerm/internal/tf/pluginsdk" "github.com/hashicorp/terraform-provider-azurerm/internal/timeouts" - "github.com/hashicorp/terraform-provider-azurerm/utils" ) func dataSourceTemplateSpecVersion() *pluginsdk.Resource { @@ -46,7 +46,7 @@ func dataSourceTemplateSpecVersion() *pluginsdk.Resource { Computed: true, }, - "tags": tags.SchemaDataSource(), + "tags": commonschema.TagsDataSource(), }, } } @@ -57,28 +57,28 @@ func dataSourceTemplateSpecVersionRead(d *pluginsdk.ResourceData, meta interface ctx, cancel := timeouts.ForRead(meta.(*clients.Client).StopContext, d) defer cancel() - id := parse.NewTemplateSpecVersionID(subscriptionId, d.Get("resource_group_name").(string), d.Get("name").(string), d.Get("version").(string)) - - resp, err := client.Get(ctx, id.ResourceGroup, id.TemplateSpecName, id.VersionName) + id := templatespecversions.NewTemplateSpecVersionID(subscriptionId, d.Get("resource_group_name").(string), d.Get("name").(string), d.Get("version").(string)) + resp, err := client.Get(ctx, id) if err != nil { - if utils.ResponseWasNotFound(resp.Response) { - return fmt.Errorf("Templatespec %q, with version name %q (resource group %q) was not found: %+v", id.TemplateSpecName, id.VersionName, id.ResourceGroup, err) + if response.WasNotFound(resp.HttpResponse) { + return fmt.Errorf("%s was not found", id) } - return fmt.Errorf("reading Templatespec %q, with version name %q (resource group %q): %+v", id.TemplateSpecName, id.VersionName, id.ResourceGroup, err) + return fmt.Errorf("retrieving %s: %+v", id, err) } - templateBody := "{}" - if props := resp.VersionProperties; props != nil && props.Template != nil { - templateBodyRaw, err := flattenTemplateDeploymentBody(props.Template) + d.SetId(id.ID()) + + if model := resp.Model; model != nil { + templateBodyRaw, err := flattenTemplateDeploymentBody(model.Properties.MainTemplate) if err != nil { return err } + d.Set("template_body", templateBodyRaw) - templateBody = *templateBodyRaw + if err := tags.FlattenAndSet(d, model.Tags); err != nil { + return err + } } - d.Set("template_body", templateBody) - - d.SetId(id.ID()) - return tags.FlattenAndSet(d, resp.Tags) + return nil } diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/CHANGELOG.md b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/CHANGELOG.md deleted file mode 100644 index 52911e4cc5e4..000000000000 --- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/CHANGELOG.md +++ /dev/null @@ -1,2 +0,0 @@ -# Change History - diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/_meta.json b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/_meta.json deleted file mode 100644 index 8c828ad74396..000000000000 --- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/_meta.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commit": "b08824e05817297a4b2874d8db5e6fc8c29349c9", - "readme": "/_/azure-rest-api-specs/specification/resources/resource-manager/readme.md", - "tag": "package-templatespecs-2019-06-preview", - "use": "@microsoft.azure/autorest.go@2.1.187", - "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "autorest_command": "autorest --use=@microsoft.azure/autorest.go@2.1.187 --tag=package-templatespecs-2019-06-preview --go-sdk-folder=/_/azure-sdk-for-go --go --verbose --use-onever --version=2.0.4421 --go.license-header=MICROSOFT_MIT_NO_VERSION /_/azure-rest-api-specs/specification/resources/resource-manager/readme.md", - "additional_properties": { - "additional_options": "--go --verbose --use-onever --version=2.0.4421 --go.license-header=MICROSOFT_MIT_NO_VERSION" - } -} \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/client.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/client.go deleted file mode 100644 index 8f19c11f236d..000000000000 --- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/client.go +++ /dev/null @@ -1,44 +0,0 @@ -// Deprecated: Please note, this package has been deprecated. A replacement package is available [github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armtemplatespecs](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armtemplatespecs). We strongly encourage you to upgrade to continue receiving updates. See [Migration Guide](https://aka.ms/azsdk/golang/t2/migration) for guidance on upgrading. Refer to our [deprecation policy](https://azure.github.io/azure-sdk/policies_support.html) for more details. -// -// Package templatespecs implements the Azure ARM Templatespecs service API version 2019-06-01-preview. -// -// The APIs listed in this specification can be used to manage Template Spec resources through the Azure Resource -// Manager. -package templatespecs - -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is regenerated. - -import ( - "github.com/Azure/go-autorest/autorest" -) - -const ( - // DefaultBaseURI is the default URI used for the service Templatespecs - DefaultBaseURI = "https://management.azure.com" -) - -// BaseClient is the base client for Templatespecs. -type BaseClient struct { - autorest.Client - BaseURI string - SubscriptionID string -} - -// New creates an instance of the BaseClient client. -func New(subscriptionID string) BaseClient { - return NewWithBaseURI(DefaultBaseURI, subscriptionID) -} - -// NewWithBaseURI creates an instance of the BaseClient client using a custom endpoint. Use this when interacting with -// an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack). -func NewWithBaseURI(baseURI string, subscriptionID string) BaseClient { - return BaseClient{ - Client: autorest.NewClientWithUserAgent(UserAgent()), - BaseURI: baseURI, - SubscriptionID: subscriptionID, - } -} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/enums.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/enums.go deleted file mode 100644 index 9aeddb706e36..000000000000 --- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/enums.go +++ /dev/null @@ -1,54 +0,0 @@ -package templatespecs - -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is regenerated. - -// CreatedByType enumerates the values for created by type. -type CreatedByType string - -const ( - // Application ... - Application CreatedByType = "Application" - // Key ... - Key CreatedByType = "Key" - // ManagedIdentity ... - ManagedIdentity CreatedByType = "ManagedIdentity" - // User ... - User CreatedByType = "User" -) - -// PossibleCreatedByTypeValues returns an array of possible values for the CreatedByType const type. -func PossibleCreatedByTypeValues() []CreatedByType { - return []CreatedByType{Application, Key, ManagedIdentity, User} -} - -// Kind enumerates the values for kind. -type Kind string - -const ( - // KindTemplate ... - KindTemplate Kind = "template" - // KindTemplateSpecArtifact ... - KindTemplateSpecArtifact Kind = "TemplateSpecArtifact" -) - -// PossibleKindValues returns an array of possible values for the Kind const type. -func PossibleKindValues() []Kind { - return []Kind{KindTemplate, KindTemplateSpecArtifact} -} - -// TemplateSpecExpandKind enumerates the values for template spec expand kind. -type TemplateSpecExpandKind string - -const ( - // Versions Includes version information with the Template Spec. - Versions TemplateSpecExpandKind = "versions" -) - -// PossibleTemplateSpecExpandKindValues returns an array of possible values for the TemplateSpecExpandKind const type. -func PossibleTemplateSpecExpandKindValues() []TemplateSpecExpandKind { - return []TemplateSpecExpandKind{Versions} -} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/models.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/models.go deleted file mode 100644 index 7c58d7d02004..000000000000 --- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/models.go +++ /dev/null @@ -1,910 +0,0 @@ -package templatespecs - -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is regenerated. - -import ( - "context" - "encoding/json" - "github.com/Azure/go-autorest/autorest" - "github.com/Azure/go-autorest/autorest/date" - "github.com/Azure/go-autorest/autorest/to" - "github.com/Azure/go-autorest/tracing" - "net/http" -) - -// The package's fully qualified name. -const fqdn = "github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs" - -// BasicArtifact represents a Template Spec artifact. -type BasicArtifact interface { - AsTemplateArtifact() (*TemplateArtifact, bool) - AsArtifact() (*Artifact, bool) -} - -// Artifact represents a Template Spec artifact. -type Artifact struct { - // Path - A filesystem safe relative path of the artifact. - Path *string `json:"path,omitempty"` - // Kind - Possible values include: 'KindTemplateSpecArtifact', 'KindTemplate' - Kind Kind `json:"kind,omitempty"` -} - -func unmarshalBasicArtifact(body []byte) (BasicArtifact, error) { - var m map[string]interface{} - err := json.Unmarshal(body, &m) - if err != nil { - return nil, err - } - - switch m["kind"] { - case string(KindTemplate): - var ta TemplateArtifact - err := json.Unmarshal(body, &ta) - return ta, err - default: - var a Artifact - err := json.Unmarshal(body, &a) - return a, err - } -} -func unmarshalBasicArtifactArray(body []byte) ([]BasicArtifact, error) { - var rawMessages []*json.RawMessage - err := json.Unmarshal(body, &rawMessages) - if err != nil { - return nil, err - } - - aArray := make([]BasicArtifact, len(rawMessages)) - - for index, rawMessage := range rawMessages { - a, err := unmarshalBasicArtifact(*rawMessage) - if err != nil { - return nil, err - } - aArray[index] = a - } - return aArray, nil -} - -// MarshalJSON is the custom marshaler for Artifact. -func (a Artifact) MarshalJSON() ([]byte, error) { - a.Kind = KindTemplateSpecArtifact - objectMap := make(map[string]interface{}) - if a.Path != nil { - objectMap["path"] = a.Path - } - if a.Kind != "" { - objectMap["kind"] = a.Kind - } - return json.Marshal(objectMap) -} - -// AsTemplateArtifact is the BasicArtifact implementation for Artifact. -func (a Artifact) AsTemplateArtifact() (*TemplateArtifact, bool) { - return nil, false -} - -// AsArtifact is the BasicArtifact implementation for Artifact. -func (a Artifact) AsArtifact() (*Artifact, bool) { - return &a, true -} - -// AsBasicArtifact is the BasicArtifact implementation for Artifact. -func (a Artifact) AsBasicArtifact() (BasicArtifact, bool) { - return &a, true -} - -// AzureResourceBase common properties for all Azure resources. -type AzureResourceBase struct { - // ID - READ-ONLY; String Id used to locate any resource on Azure. - ID *string `json:"id,omitempty"` - // Name - READ-ONLY; Name of this resource. - Name *string `json:"name,omitempty"` - // Type - READ-ONLY; Type of this resource. - Type *string `json:"type,omitempty"` - // SystemData - READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData *SystemData `json:"systemData,omitempty"` -} - -// MarshalJSON is the custom marshaler for AzureResourceBase. -func (arb AzureResourceBase) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - return json.Marshal(objectMap) -} - -// Error template Specs error response. -type Error struct { - Error *ErrorResponse `json:"error,omitempty"` -} - -// ErrorAdditionalInfo the resource management error additional info. -type ErrorAdditionalInfo struct { - // Type - READ-ONLY; The additional info type. - Type *string `json:"type,omitempty"` - // Info - READ-ONLY; The additional info. - Info interface{} `json:"info,omitempty"` -} - -// MarshalJSON is the custom marshaler for ErrorAdditionalInfo. -func (eai ErrorAdditionalInfo) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - return json.Marshal(objectMap) -} - -// ErrorResponse common error response for all Azure Resource Manager APIs to return error details for -// failed operations. (This also follows the OData error response format.) -type ErrorResponse struct { - // Code - READ-ONLY; The error code. - Code *string `json:"code,omitempty"` - // Message - READ-ONLY; The error message. - Message *string `json:"message,omitempty"` - // Target - READ-ONLY; The error target. - Target *string `json:"target,omitempty"` - // Details - READ-ONLY; The error details. - Details *[]ErrorResponse `json:"details,omitempty"` - // AdditionalInfo - READ-ONLY; The error additional info. - AdditionalInfo *[]ErrorAdditionalInfo `json:"additionalInfo,omitempty"` -} - -// MarshalJSON is the custom marshaler for ErrorResponse. -func (er ErrorResponse) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - return json.Marshal(objectMap) -} - -// ListResult list of Template Specs. -type ListResult struct { - autorest.Response `json:"-"` - // Value - An array of Template Specs. - Value *[]TemplateSpec `json:"value,omitempty"` - // NextLink - READ-ONLY; The URL to use for getting the next set of results. - NextLink *string `json:"nextLink,omitempty"` -} - -// MarshalJSON is the custom marshaler for ListResult. -func (lr ListResult) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - if lr.Value != nil { - objectMap["value"] = lr.Value - } - return json.Marshal(objectMap) -} - -// ListResultIterator provides access to a complete listing of TemplateSpec values. -type ListResultIterator struct { - i int - page ListResultPage -} - -// NextWithContext advances to the next value. If there was an error making -// the request the iterator does not advance and the error is returned. -func (iter *ListResultIterator) NextWithContext(ctx context.Context) (err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/ListResultIterator.NextWithContext") - defer func() { - sc := -1 - if iter.Response().Response.Response != nil { - sc = iter.Response().Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - iter.i++ - if iter.i < len(iter.page.Values()) { - return nil - } - err = iter.page.NextWithContext(ctx) - if err != nil { - iter.i-- - return err - } - iter.i = 0 - return nil -} - -// Next advances to the next value. If there was an error making -// the request the iterator does not advance and the error is returned. -// Deprecated: Use NextWithContext() instead. -func (iter *ListResultIterator) Next() error { - return iter.NextWithContext(context.Background()) -} - -// NotDone returns true if the enumeration should be started or is not yet complete. -func (iter ListResultIterator) NotDone() bool { - return iter.page.NotDone() && iter.i < len(iter.page.Values()) -} - -// Response returns the raw server response from the last page request. -func (iter ListResultIterator) Response() ListResult { - return iter.page.Response() -} - -// Value returns the current value or a zero-initialized value if the -// iterator has advanced beyond the end of the collection. -func (iter ListResultIterator) Value() TemplateSpec { - if !iter.page.NotDone() { - return TemplateSpec{} - } - return iter.page.Values()[iter.i] -} - -// Creates a new instance of the ListResultIterator type. -func NewListResultIterator(page ListResultPage) ListResultIterator { - return ListResultIterator{page: page} -} - -// IsEmpty returns true if the ListResult contains no values. -func (lr ListResult) IsEmpty() bool { - return lr.Value == nil || len(*lr.Value) == 0 -} - -// hasNextLink returns true if the NextLink is not empty. -func (lr ListResult) hasNextLink() bool { - return lr.NextLink != nil && len(*lr.NextLink) != 0 -} - -// listResultPreparer prepares a request to retrieve the next set of results. -// It returns nil if no more results exist. -func (lr ListResult) listResultPreparer(ctx context.Context) (*http.Request, error) { - if !lr.hasNextLink() { - return nil, nil - } - return autorest.Prepare((&http.Request{}).WithContext(ctx), - autorest.AsJSON(), - autorest.AsGet(), - autorest.WithBaseURL(to.String(lr.NextLink))) -} - -// ListResultPage contains a page of TemplateSpec values. -type ListResultPage struct { - fn func(context.Context, ListResult) (ListResult, error) - lr ListResult -} - -// NextWithContext advances to the next page of values. If there was an error making -// the request the page does not advance and the error is returned. -func (page *ListResultPage) NextWithContext(ctx context.Context) (err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/ListResultPage.NextWithContext") - defer func() { - sc := -1 - if page.Response().Response.Response != nil { - sc = page.Response().Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - for { - next, err := page.fn(ctx, page.lr) - if err != nil { - return err - } - page.lr = next - if !next.hasNextLink() || !next.IsEmpty() { - break - } - } - return nil -} - -// Next advances to the next page of values. If there was an error making -// the request the page does not advance and the error is returned. -// Deprecated: Use NextWithContext() instead. -func (page *ListResultPage) Next() error { - return page.NextWithContext(context.Background()) -} - -// NotDone returns true if the page enumeration should be started or is not yet complete. -func (page ListResultPage) NotDone() bool { - return !page.lr.IsEmpty() -} - -// Response returns the raw server response from the last page request. -func (page ListResultPage) Response() ListResult { - return page.lr -} - -// Values returns the slice of values for the current page or nil if there are no values. -func (page ListResultPage) Values() []TemplateSpec { - if page.lr.IsEmpty() { - return nil - } - return *page.lr.Value -} - -// Creates a new instance of the ListResultPage type. -func NewListResultPage(cur ListResult, getNextPage func(context.Context, ListResult) (ListResult, error)) ListResultPage { - return ListResultPage{ - fn: getNextPage, - lr: cur, - } -} - -// Properties template Spec properties. -type Properties struct { - // Description - Template Spec description. - Description *string `json:"description,omitempty"` - // DisplayName - Template Spec display name. - DisplayName *string `json:"displayName,omitempty"` - // Versions - READ-ONLY; High-level information about the versions within this Template Spec. The keys are the version names. Only populated if the $expand query parameter is set to 'versions'. - Versions map[string]*VersionInfo `json:"versions"` -} - -// MarshalJSON is the custom marshaler for Properties. -func (p Properties) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - if p.Description != nil { - objectMap["description"] = p.Description - } - if p.DisplayName != nil { - objectMap["displayName"] = p.DisplayName - } - return json.Marshal(objectMap) -} - -// SystemData metadata pertaining to creation and last modification of the resource. -type SystemData struct { - // CreatedBy - The identity that created the resource. - CreatedBy *string `json:"createdBy,omitempty"` - // CreatedByType - The type of identity that created the resource. Possible values include: 'User', 'Application', 'ManagedIdentity', 'Key' - CreatedByType CreatedByType `json:"createdByType,omitempty"` - // CreatedAt - The timestamp of resource creation (UTC). - CreatedAt *date.Time `json:"createdAt,omitempty"` - // LastModifiedBy - The identity that last modified the resource. - LastModifiedBy *string `json:"lastModifiedBy,omitempty"` - // LastModifiedByType - The type of identity that last modified the resource. Possible values include: 'User', 'Application', 'ManagedIdentity', 'Key' - LastModifiedByType CreatedByType `json:"lastModifiedByType,omitempty"` - // LastModifiedAt - The type of identity that last modified the resource. - LastModifiedAt *date.Time `json:"lastModifiedAt,omitempty"` -} - -// TemplateArtifact represents a Template Spec artifact containing an embedded Azure Resource Manager -// template. -type TemplateArtifact struct { - // Template - The Azure Resource Manager template. - Template interface{} `json:"template,omitempty"` - // Path - A filesystem safe relative path of the artifact. - Path *string `json:"path,omitempty"` - // Kind - Possible values include: 'KindTemplateSpecArtifact', 'KindTemplate' - Kind Kind `json:"kind,omitempty"` -} - -// MarshalJSON is the custom marshaler for TemplateArtifact. -func (ta TemplateArtifact) MarshalJSON() ([]byte, error) { - ta.Kind = KindTemplate - objectMap := make(map[string]interface{}) - if ta.Template != nil { - objectMap["template"] = ta.Template - } - if ta.Path != nil { - objectMap["path"] = ta.Path - } - if ta.Kind != "" { - objectMap["kind"] = ta.Kind - } - return json.Marshal(objectMap) -} - -// AsTemplateArtifact is the BasicArtifact implementation for TemplateArtifact. -func (ta TemplateArtifact) AsTemplateArtifact() (*TemplateArtifact, bool) { - return &ta, true -} - -// AsArtifact is the BasicArtifact implementation for TemplateArtifact. -func (ta TemplateArtifact) AsArtifact() (*Artifact, bool) { - return nil, false -} - -// AsBasicArtifact is the BasicArtifact implementation for TemplateArtifact. -func (ta TemplateArtifact) AsBasicArtifact() (BasicArtifact, bool) { - return &ta, true -} - -// TemplateSpec template Spec object. -type TemplateSpec struct { - autorest.Response `json:"-"` - // Location - The location of the Template Spec. It cannot be changed after Template Spec creation. It must be one of the supported Azure locations. - Location *string `json:"location,omitempty"` - // Properties - Template Spec properties. - *Properties `json:"properties,omitempty"` - // Tags - Resource tags. - Tags map[string]*string `json:"tags"` - // ID - READ-ONLY; String Id used to locate any resource on Azure. - ID *string `json:"id,omitempty"` - // Name - READ-ONLY; Name of this resource. - Name *string `json:"name,omitempty"` - // Type - READ-ONLY; Type of this resource. - Type *string `json:"type,omitempty"` - // SystemData - READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData *SystemData `json:"systemData,omitempty"` -} - -// MarshalJSON is the custom marshaler for TemplateSpec. -func (ts TemplateSpec) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - if ts.Location != nil { - objectMap["location"] = ts.Location - } - if ts.Properties != nil { - objectMap["properties"] = ts.Properties - } - if ts.Tags != nil { - objectMap["tags"] = ts.Tags - } - return json.Marshal(objectMap) -} - -// UnmarshalJSON is the custom unmarshaler for TemplateSpec struct. -func (ts *TemplateSpec) UnmarshalJSON(body []byte) error { - var m map[string]*json.RawMessage - err := json.Unmarshal(body, &m) - if err != nil { - return err - } - for k, v := range m { - switch k { - case "location": - if v != nil { - var location string - err = json.Unmarshal(*v, &location) - if err != nil { - return err - } - ts.Location = &location - } - case "properties": - if v != nil { - var properties Properties - err = json.Unmarshal(*v, &properties) - if err != nil { - return err - } - ts.Properties = &properties - } - case "tags": - if v != nil { - var tags map[string]*string - err = json.Unmarshal(*v, &tags) - if err != nil { - return err - } - ts.Tags = tags - } - case "id": - if v != nil { - var ID string - err = json.Unmarshal(*v, &ID) - if err != nil { - return err - } - ts.ID = &ID - } - case "name": - if v != nil { - var name string - err = json.Unmarshal(*v, &name) - if err != nil { - return err - } - ts.Name = &name - } - case "type": - if v != nil { - var typeVar string - err = json.Unmarshal(*v, &typeVar) - if err != nil { - return err - } - ts.Type = &typeVar - } - case "systemData": - if v != nil { - var systemData SystemData - err = json.Unmarshal(*v, &systemData) - if err != nil { - return err - } - ts.SystemData = &systemData - } - } - } - - return nil -} - -// UpdateModel template Spec properties to be updated (only tags are currently supported). -type UpdateModel struct { - // Tags - Resource tags. - Tags map[string]*string `json:"tags"` - // ID - READ-ONLY; String Id used to locate any resource on Azure. - ID *string `json:"id,omitempty"` - // Name - READ-ONLY; Name of this resource. - Name *string `json:"name,omitempty"` - // Type - READ-ONLY; Type of this resource. - Type *string `json:"type,omitempty"` - // SystemData - READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData *SystemData `json:"systemData,omitempty"` -} - -// MarshalJSON is the custom marshaler for UpdateModel. -func (um UpdateModel) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - if um.Tags != nil { - objectMap["tags"] = um.Tags - } - return json.Marshal(objectMap) -} - -// VersionInfo high-level information about a Template Spec version. -type VersionInfo struct { - // Description - READ-ONLY; Template Spec version description. - Description *string `json:"description,omitempty"` - // TimeCreated - READ-ONLY; The timestamp of when the version was created. - TimeCreated *date.Time `json:"timeCreated,omitempty"` - // TimeModified - READ-ONLY; The timestamp of when the version was last modified. - TimeModified *date.Time `json:"timeModified,omitempty"` -} - -// MarshalJSON is the custom marshaler for VersionInfo. -func (vi VersionInfo) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - return json.Marshal(objectMap) -} - -// VersionProperties template Spec Version properties. -type VersionProperties struct { - // Artifacts - An array of Template Spec artifacts. - Artifacts *[]BasicArtifact `json:"artifacts,omitempty"` - // Description - Template Spec version description. - Description *string `json:"description,omitempty"` - // Template - The Azure Resource Manager template content. - Template interface{} `json:"template,omitempty"` -} - -// UnmarshalJSON is the custom unmarshaler for VersionProperties struct. -func (vp *VersionProperties) UnmarshalJSON(body []byte) error { - var m map[string]*json.RawMessage - err := json.Unmarshal(body, &m) - if err != nil { - return err - } - for k, v := range m { - switch k { - case "artifacts": - if v != nil { - artifacts, err := unmarshalBasicArtifactArray(*v) - if err != nil { - return err - } - vp.Artifacts = &artifacts - } - case "description": - if v != nil { - var description string - err = json.Unmarshal(*v, &description) - if err != nil { - return err - } - vp.Description = &description - } - case "template": - if v != nil { - var templateVar interface{} - err = json.Unmarshal(*v, &templateVar) - if err != nil { - return err - } - vp.Template = templateVar - } - } - } - - return nil -} - -// VersionsListResult list of Template Specs versions -type VersionsListResult struct { - autorest.Response `json:"-"` - // Value - An array of Template Spec versions. - Value *[]VersionTemplatespecs `json:"value,omitempty"` - // NextLink - READ-ONLY; The URL to use for getting the next set of results. - NextLink *string `json:"nextLink,omitempty"` -} - -// MarshalJSON is the custom marshaler for VersionsListResult. -func (vlr VersionsListResult) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - if vlr.Value != nil { - objectMap["value"] = vlr.Value - } - return json.Marshal(objectMap) -} - -// VersionsListResultIterator provides access to a complete listing of VersionTemplatespecs values. -type VersionsListResultIterator struct { - i int - page VersionsListResultPage -} - -// NextWithContext advances to the next value. If there was an error making -// the request the iterator does not advance and the error is returned. -func (iter *VersionsListResultIterator) NextWithContext(ctx context.Context) (err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/VersionsListResultIterator.NextWithContext") - defer func() { - sc := -1 - if iter.Response().Response.Response != nil { - sc = iter.Response().Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - iter.i++ - if iter.i < len(iter.page.Values()) { - return nil - } - err = iter.page.NextWithContext(ctx) - if err != nil { - iter.i-- - return err - } - iter.i = 0 - return nil -} - -// Next advances to the next value. If there was an error making -// the request the iterator does not advance and the error is returned. -// Deprecated: Use NextWithContext() instead. -func (iter *VersionsListResultIterator) Next() error { - return iter.NextWithContext(context.Background()) -} - -// NotDone returns true if the enumeration should be started or is not yet complete. -func (iter VersionsListResultIterator) NotDone() bool { - return iter.page.NotDone() && iter.i < len(iter.page.Values()) -} - -// Response returns the raw server response from the last page request. -func (iter VersionsListResultIterator) Response() VersionsListResult { - return iter.page.Response() -} - -// Value returns the current value or a zero-initialized value if the -// iterator has advanced beyond the end of the collection. -func (iter VersionsListResultIterator) Value() VersionTemplatespecs { - if !iter.page.NotDone() { - return VersionTemplatespecs{} - } - return iter.page.Values()[iter.i] -} - -// Creates a new instance of the VersionsListResultIterator type. -func NewVersionsListResultIterator(page VersionsListResultPage) VersionsListResultIterator { - return VersionsListResultIterator{page: page} -} - -// IsEmpty returns true if the ListResult contains no values. -func (vlr VersionsListResult) IsEmpty() bool { - return vlr.Value == nil || len(*vlr.Value) == 0 -} - -// hasNextLink returns true if the NextLink is not empty. -func (vlr VersionsListResult) hasNextLink() bool { - return vlr.NextLink != nil && len(*vlr.NextLink) != 0 -} - -// versionsListResultPreparer prepares a request to retrieve the next set of results. -// It returns nil if no more results exist. -func (vlr VersionsListResult) versionsListResultPreparer(ctx context.Context) (*http.Request, error) { - if !vlr.hasNextLink() { - return nil, nil - } - return autorest.Prepare((&http.Request{}).WithContext(ctx), - autorest.AsJSON(), - autorest.AsGet(), - autorest.WithBaseURL(to.String(vlr.NextLink))) -} - -// VersionsListResultPage contains a page of VersionTemplatespecs values. -type VersionsListResultPage struct { - fn func(context.Context, VersionsListResult) (VersionsListResult, error) - vlr VersionsListResult -} - -// NextWithContext advances to the next page of values. If there was an error making -// the request the page does not advance and the error is returned. -func (page *VersionsListResultPage) NextWithContext(ctx context.Context) (err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/VersionsListResultPage.NextWithContext") - defer func() { - sc := -1 - if page.Response().Response.Response != nil { - sc = page.Response().Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - for { - next, err := page.fn(ctx, page.vlr) - if err != nil { - return err - } - page.vlr = next - if !next.hasNextLink() || !next.IsEmpty() { - break - } - } - return nil -} - -// Next advances to the next page of values. If there was an error making -// the request the page does not advance and the error is returned. -// Deprecated: Use NextWithContext() instead. -func (page *VersionsListResultPage) Next() error { - return page.NextWithContext(context.Background()) -} - -// NotDone returns true if the page enumeration should be started or is not yet complete. -func (page VersionsListResultPage) NotDone() bool { - return !page.vlr.IsEmpty() -} - -// Response returns the raw server response from the last page request. -func (page VersionsListResultPage) Response() VersionsListResult { - return page.vlr -} - -// Values returns the slice of values for the current page or nil if there are no values. -func (page VersionsListResultPage) Values() []VersionTemplatespecs { - if page.vlr.IsEmpty() { - return nil - } - return *page.vlr.Value -} - -// Creates a new instance of the VersionsListResultPage type. -func NewVersionsListResultPage(cur VersionsListResult, getNextPage func(context.Context, VersionsListResult) (VersionsListResult, error)) VersionsListResultPage { - return VersionsListResultPage{ - fn: getNextPage, - vlr: cur, - } -} - -// VersionTemplatespecs template Spec Version object. -type VersionTemplatespecs struct { - autorest.Response `json:"-"` - // Location - The location of the Template Spec Version. It must match the location of the parent Template Spec. - Location *string `json:"location,omitempty"` - // VersionProperties - Template Spec Version properties. - *VersionProperties `json:"properties,omitempty"` - // Tags - Resource tags. - Tags map[string]*string `json:"tags"` - // ID - READ-ONLY; String Id used to locate any resource on Azure. - ID *string `json:"id,omitempty"` - // Name - READ-ONLY; Name of this resource. - Name *string `json:"name,omitempty"` - // Type - READ-ONLY; Type of this resource. - Type *string `json:"type,omitempty"` - // SystemData - READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData *SystemData `json:"systemData,omitempty"` -} - -// MarshalJSON is the custom marshaler for VersionTemplatespecs. -func (vt VersionTemplatespecs) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - if vt.Location != nil { - objectMap["location"] = vt.Location - } - if vt.VersionProperties != nil { - objectMap["properties"] = vt.VersionProperties - } - if vt.Tags != nil { - objectMap["tags"] = vt.Tags - } - return json.Marshal(objectMap) -} - -// UnmarshalJSON is the custom unmarshaler for VersionTemplatespecs struct. -func (vt *VersionTemplatespecs) UnmarshalJSON(body []byte) error { - var m map[string]*json.RawMessage - err := json.Unmarshal(body, &m) - if err != nil { - return err - } - for k, v := range m { - switch k { - case "location": - if v != nil { - var location string - err = json.Unmarshal(*v, &location) - if err != nil { - return err - } - vt.Location = &location - } - case "properties": - if v != nil { - var versionProperties VersionProperties - err = json.Unmarshal(*v, &versionProperties) - if err != nil { - return err - } - vt.VersionProperties = &versionProperties - } - case "tags": - if v != nil { - var tags map[string]*string - err = json.Unmarshal(*v, &tags) - if err != nil { - return err - } - vt.Tags = tags - } - case "id": - if v != nil { - var ID string - err = json.Unmarshal(*v, &ID) - if err != nil { - return err - } - vt.ID = &ID - } - case "name": - if v != nil { - var name string - err = json.Unmarshal(*v, &name) - if err != nil { - return err - } - vt.Name = &name - } - case "type": - if v != nil { - var typeVar string - err = json.Unmarshal(*v, &typeVar) - if err != nil { - return err - } - vt.Type = &typeVar - } - case "systemData": - if v != nil { - var systemData SystemData - err = json.Unmarshal(*v, &systemData) - if err != nil { - return err - } - vt.SystemData = &systemData - } - } - } - - return nil -} - -// VersionUpdateModel template Spec Version properties to be updated (only tags are currently supported). -type VersionUpdateModel struct { - // Tags - Resource tags. - Tags map[string]*string `json:"tags"` - // ID - READ-ONLY; String Id used to locate any resource on Azure. - ID *string `json:"id,omitempty"` - // Name - READ-ONLY; Name of this resource. - Name *string `json:"name,omitempty"` - // Type - READ-ONLY; Type of this resource. - Type *string `json:"type,omitempty"` - // SystemData - READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData *SystemData `json:"systemData,omitempty"` -} - -// MarshalJSON is the custom marshaler for VersionUpdateModel. -func (vum VersionUpdateModel) MarshalJSON() ([]byte, error) { - objectMap := make(map[string]interface{}) - if vum.Tags != nil { - objectMap["tags"] = vum.Tags - } - return json.Marshal(objectMap) -} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/templatespecs.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/templatespecs.go deleted file mode 100644 index 92532ffdb50a..000000000000 --- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/templatespecs.go +++ /dev/null @@ -1,651 +0,0 @@ -package templatespecs - -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is regenerated. - -import ( - "context" - "github.com/Azure/go-autorest/autorest" - "github.com/Azure/go-autorest/autorest/azure" - "github.com/Azure/go-autorest/autorest/validation" - "github.com/Azure/go-autorest/tracing" - "net/http" -) - -// Client is the the APIs listed in this specification can be used to manage Template Spec resources through the Azure -// Resource Manager. -type Client struct { - BaseClient -} - -// NewClient creates an instance of the Client client. -func NewClient(subscriptionID string) Client { - return NewClientWithBaseURI(DefaultBaseURI, subscriptionID) -} - -// NewClientWithBaseURI creates an instance of the Client client using a custom endpoint. Use this when interacting -// with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack). -func NewClientWithBaseURI(baseURI string, subscriptionID string) Client { - return Client{NewWithBaseURI(baseURI, subscriptionID)} -} - -// CreateOrUpdate creates or updates a Template Spec. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -// templateSpec - template Spec supplied to the operation. -func (client Client) CreateOrUpdate(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpec TemplateSpec) (result TemplateSpec, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/Client.CreateOrUpdate") - defer func() { - sc := -1 - if result.Response.Response != nil { - sc = result.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpec, - Constraints: []validation.Constraint{{Target: "templateSpec.Location", Name: validation.Null, Rule: true, Chain: nil}, - {Target: "templateSpec.Properties", Name: validation.Null, Rule: false, - Chain: []validation.Constraint{{Target: "templateSpec.Properties.Description", Name: validation.Null, Rule: false, - Chain: []validation.Constraint{{Target: "templateSpec.Properties.Description", Name: validation.MaxLength, Rule: 4096, Chain: nil}}}, - {Target: "templateSpec.Properties.DisplayName", Name: validation.Null, Rule: false, - Chain: []validation.Constraint{{Target: "templateSpec.Properties.DisplayName", Name: validation.MaxLength, Rule: 64, Chain: nil}}}, - }}}}}); err != nil { - return result, validation.NewError("templatespecs.Client", "CreateOrUpdate", err.Error()) - } - - req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, templateSpecName, templateSpec) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "CreateOrUpdate", nil, "Failure preparing request") - return - } - - resp, err := client.CreateOrUpdateSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.Client", "CreateOrUpdate", resp, "Failure sending request") - return - } - - result, err = client.CreateOrUpdateResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "CreateOrUpdate", resp, "Failure responding to request") - return - } - - return -} - -// CreateOrUpdatePreparer prepares the CreateOrUpdate request. -func (client Client) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpec TemplateSpec) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - - preparer := autorest.CreatePreparer( - autorest.AsContentType("application/json; charset=utf-8"), - autorest.AsPut(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}", pathParameters), - autorest.WithJSON(templateSpec), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the -// http.Response Body if it receives an error. -func (client Client) CreateOrUpdateSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always -// closes the http.Response Body. -func (client Client) CreateOrUpdateResponder(resp *http.Response) (result TemplateSpec, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} - -// Delete deletes a Template Spec by name. When operation completes, status code 200 returned without content. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -func (client Client) Delete(ctx context.Context, resourceGroupName string, templateSpecName string) (result autorest.Response, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/Client.Delete") - defer func() { - sc := -1 - if result.Response != nil { - sc = result.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil { - return result, validation.NewError("templatespecs.Client", "Delete", err.Error()) - } - - req, err := client.DeletePreparer(ctx, resourceGroupName, templateSpecName) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Delete", nil, "Failure preparing request") - return - } - - resp, err := client.DeleteSender(req) - if err != nil { - result.Response = resp - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Delete", resp, "Failure sending request") - return - } - - result, err = client.DeleteResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Delete", resp, "Failure responding to request") - return - } - - return -} - -// DeletePreparer prepares the Delete request. -func (client Client) DeletePreparer(ctx context.Context, resourceGroupName string, templateSpecName string) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - - preparer := autorest.CreatePreparer( - autorest.AsDelete(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}", pathParameters), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// DeleteSender sends the Delete request. The method will close the -// http.Response Body if it receives an error. -func (client Client) DeleteSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// DeleteResponder handles the response to the Delete request. The method always -// closes the http.Response Body. -func (client Client) DeleteResponder(resp *http.Response) (result autorest.Response, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusNoContent), - autorest.ByClosing()) - result.Response = resp - return -} - -// Get gets a Template Spec with a given name. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -// expand - allows for expansion of additional Template Spec details in the response. Optional. -func (client Client) Get(ctx context.Context, resourceGroupName string, templateSpecName string, expand TemplateSpecExpandKind) (result TemplateSpec, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/Client.Get") - defer func() { - sc := -1 - if result.Response.Response != nil { - sc = result.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil { - return result, validation.NewError("templatespecs.Client", "Get", err.Error()) - } - - req, err := client.GetPreparer(ctx, resourceGroupName, templateSpecName, expand) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Get", nil, "Failure preparing request") - return - } - - resp, err := client.GetSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Get", resp, "Failure sending request") - return - } - - result, err = client.GetResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Get", resp, "Failure responding to request") - return - } - - return -} - -// GetPreparer prepares the Get request. -func (client Client) GetPreparer(ctx context.Context, resourceGroupName string, templateSpecName string, expand TemplateSpecExpandKind) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - if len(string(expand)) > 0 { - queryParameters["$expand"] = autorest.Encode("query", expand) - } - - preparer := autorest.CreatePreparer( - autorest.AsGet(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}", pathParameters), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// GetSender sends the Get request. The method will close the -// http.Response Body if it receives an error. -func (client Client) GetSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// GetResponder handles the response to the Get request. The method always -// closes the http.Response Body. -func (client Client) GetResponder(resp *http.Response) (result TemplateSpec, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} - -// ListByResourceGroup lists all the Template Specs within the specified resource group. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// expand - allows for expansion of additional Template Spec details in the response. Optional. -func (client Client) ListByResourceGroup(ctx context.Context, resourceGroupName string, expand TemplateSpecExpandKind) (result ListResultPage, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/Client.ListByResourceGroup") - defer func() { - sc := -1 - if result.lr.Response.Response != nil { - sc = result.lr.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil { - return result, validation.NewError("templatespecs.Client", "ListByResourceGroup", err.Error()) - } - - result.fn = client.listByResourceGroupNextResults - req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName, expand) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "ListByResourceGroup", nil, "Failure preparing request") - return - } - - resp, err := client.ListByResourceGroupSender(req) - if err != nil { - result.lr.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.Client", "ListByResourceGroup", resp, "Failure sending request") - return - } - - result.lr, err = client.ListByResourceGroupResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "ListByResourceGroup", resp, "Failure responding to request") - return - } - if result.lr.hasNextLink() && result.lr.IsEmpty() { - err = result.NextWithContext(ctx) - return - } - - return -} - -// ListByResourceGroupPreparer prepares the ListByResourceGroup request. -func (client Client) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string, expand TemplateSpecExpandKind) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - if len(string(expand)) > 0 { - queryParameters["$expand"] = autorest.Encode("query", expand) - } - - preparer := autorest.CreatePreparer( - autorest.AsGet(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/", pathParameters), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// ListByResourceGroupSender sends the ListByResourceGroup request. The method will close the -// http.Response Body if it receives an error. -func (client Client) ListByResourceGroupSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// ListByResourceGroupResponder handles the response to the ListByResourceGroup request. The method always -// closes the http.Response Body. -func (client Client) ListByResourceGroupResponder(resp *http.Response) (result ListResult, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} - -// listByResourceGroupNextResults retrieves the next set of results, if any. -func (client Client) listByResourceGroupNextResults(ctx context.Context, lastResults ListResult) (result ListResult, err error) { - req, err := lastResults.listResultPreparer(ctx) - if err != nil { - return result, autorest.NewErrorWithError(err, "templatespecs.Client", "listByResourceGroupNextResults", nil, "Failure preparing next results request") - } - if req == nil { - return - } - resp, err := client.ListByResourceGroupSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "templatespecs.Client", "listByResourceGroupNextResults", resp, "Failure sending next results request") - } - result, err = client.ListByResourceGroupResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "listByResourceGroupNextResults", resp, "Failure responding to next results request") - } - return -} - -// ListByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required. -func (client Client) ListByResourceGroupComplete(ctx context.Context, resourceGroupName string, expand TemplateSpecExpandKind) (result ListResultIterator, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/Client.ListByResourceGroup") - defer func() { - sc := -1 - if result.Response().Response.Response != nil { - sc = result.page.Response().Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - result.page, err = client.ListByResourceGroup(ctx, resourceGroupName, expand) - return -} - -// ListBySubscription lists all the Template Specs within the specified subscriptions. -// Parameters: -// expand - allows for expansion of additional Template Spec details in the response. Optional. -func (client Client) ListBySubscription(ctx context.Context, expand TemplateSpecExpandKind) (result ListResultPage, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/Client.ListBySubscription") - defer func() { - sc := -1 - if result.lr.Response.Response != nil { - sc = result.lr.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - result.fn = client.listBySubscriptionNextResults - req, err := client.ListBySubscriptionPreparer(ctx, expand) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "ListBySubscription", nil, "Failure preparing request") - return - } - - resp, err := client.ListBySubscriptionSender(req) - if err != nil { - result.lr.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.Client", "ListBySubscription", resp, "Failure sending request") - return - } - - result.lr, err = client.ListBySubscriptionResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "ListBySubscription", resp, "Failure responding to request") - return - } - if result.lr.hasNextLink() && result.lr.IsEmpty() { - err = result.NextWithContext(ctx) - return - } - - return -} - -// ListBySubscriptionPreparer prepares the ListBySubscription request. -func (client Client) ListBySubscriptionPreparer(ctx context.Context, expand TemplateSpecExpandKind) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - if len(string(expand)) > 0 { - queryParameters["$expand"] = autorest.Encode("query", expand) - } - - preparer := autorest.CreatePreparer( - autorest.AsGet(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.Resources/templateSpecs/", pathParameters), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// ListBySubscriptionSender sends the ListBySubscription request. The method will close the -// http.Response Body if it receives an error. -func (client Client) ListBySubscriptionSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// ListBySubscriptionResponder handles the response to the ListBySubscription request. The method always -// closes the http.Response Body. -func (client Client) ListBySubscriptionResponder(resp *http.Response) (result ListResult, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} - -// listBySubscriptionNextResults retrieves the next set of results, if any. -func (client Client) listBySubscriptionNextResults(ctx context.Context, lastResults ListResult) (result ListResult, err error) { - req, err := lastResults.listResultPreparer(ctx) - if err != nil { - return result, autorest.NewErrorWithError(err, "templatespecs.Client", "listBySubscriptionNextResults", nil, "Failure preparing next results request") - } - if req == nil { - return - } - resp, err := client.ListBySubscriptionSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "templatespecs.Client", "listBySubscriptionNextResults", resp, "Failure sending next results request") - } - result, err = client.ListBySubscriptionResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "listBySubscriptionNextResults", resp, "Failure responding to next results request") - } - return -} - -// ListBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required. -func (client Client) ListBySubscriptionComplete(ctx context.Context, expand TemplateSpecExpandKind) (result ListResultIterator, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/Client.ListBySubscription") - defer func() { - sc := -1 - if result.Response().Response.Response != nil { - sc = result.page.Response().Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - result.page, err = client.ListBySubscription(ctx, expand) - return -} - -// Update updates Template Spec tags with specified values. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -// templateSpec - template Spec resource with the tags to be updated. -func (client Client) Update(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpec *UpdateModel) (result TemplateSpec, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/Client.Update") - defer func() { - sc := -1 - if result.Response.Response != nil { - sc = result.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil { - return result, validation.NewError("templatespecs.Client", "Update", err.Error()) - } - - req, err := client.UpdatePreparer(ctx, resourceGroupName, templateSpecName, templateSpec) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Update", nil, "Failure preparing request") - return - } - - resp, err := client.UpdateSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Update", resp, "Failure sending request") - return - } - - result, err = client.UpdateResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.Client", "Update", resp, "Failure responding to request") - return - } - - return -} - -// UpdatePreparer prepares the Update request. -func (client Client) UpdatePreparer(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpec *UpdateModel) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - - preparer := autorest.CreatePreparer( - autorest.AsContentType("application/json; charset=utf-8"), - autorest.AsPatch(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}", pathParameters), - autorest.WithQueryParameters(queryParameters)) - if templateSpec != nil { - preparer = autorest.DecoratePreparer(preparer, - autorest.WithJSON(templateSpec)) - } - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// UpdateSender sends the Update request. The method will close the -// http.Response Body if it receives an error. -func (client Client) UpdateSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// UpdateResponder handles the response to the Update request. The method always -// closes the http.Response Body. -func (client Client) UpdateResponder(resp *http.Response) (result TemplateSpec, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/version.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/version.go deleted file mode 100644 index 655ef6c00424..000000000000 --- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/version.go +++ /dev/null @@ -1,19 +0,0 @@ -package templatespecs - -import "github.com/Azure/azure-sdk-for-go/version" - -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is regenerated. - -// UserAgent returns the UserAgent string to use when sending http.Requests. -func UserAgent() string { - return "Azure-SDK-For-Go/" + Version() + " templatespecs/2019-06-01-preview" -} - -// Version returns the semantic version (see http://semver.org) of the client. -func Version() string { - return version.Number -} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/versions.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/versions.go deleted file mode 100644 index 55e195ddfb5d..000000000000 --- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs/versions.go +++ /dev/null @@ -1,554 +0,0 @@ -package templatespecs - -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is regenerated. - -import ( - "context" - "github.com/Azure/go-autorest/autorest" - "github.com/Azure/go-autorest/autorest/azure" - "github.com/Azure/go-autorest/autorest/validation" - "github.com/Azure/go-autorest/tracing" - "net/http" -) - -// VersionsClient is the the APIs listed in this specification can be used to manage Template Spec resources through -// the Azure Resource Manager. -type VersionsClient struct { - BaseClient -} - -// NewVersionsClient creates an instance of the VersionsClient client. -func NewVersionsClient(subscriptionID string) VersionsClient { - return NewVersionsClientWithBaseURI(DefaultBaseURI, subscriptionID) -} - -// NewVersionsClientWithBaseURI creates an instance of the VersionsClient client using a custom endpoint. Use this -// when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack). -func NewVersionsClientWithBaseURI(baseURI string, subscriptionID string) VersionsClient { - return VersionsClient{NewWithBaseURI(baseURI, subscriptionID)} -} - -// CreateOrUpdate creates or updates a Template Spec version. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -// templateSpecVersion - the version of the Template Spec. -// templateSpecVersionModel - template Spec Version supplied to the operation. -func (client VersionsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpecVersion string, templateSpecVersionModel VersionTemplatespecs) (result VersionTemplatespecs, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/VersionsClient.CreateOrUpdate") - defer func() { - sc := -1 - if result.Response.Response != nil { - sc = result.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecVersion, - Constraints: []validation.Constraint{{Target: "templateSpecVersion", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecVersion", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecVersion", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecVersionModel, - Constraints: []validation.Constraint{{Target: "templateSpecVersionModel.Location", Name: validation.Null, Rule: true, Chain: nil}, - {Target: "templateSpecVersionModel.VersionProperties", Name: validation.Null, Rule: true, - Chain: []validation.Constraint{{Target: "templateSpecVersionModel.VersionProperties.Description", Name: validation.Null, Rule: false, - Chain: []validation.Constraint{{Target: "templateSpecVersionModel.VersionProperties.Description", Name: validation.MaxLength, Rule: 4096, Chain: nil}}}, - }}}}}); err != nil { - return result, validation.NewError("templatespecs.VersionsClient", "CreateOrUpdate", err.Error()) - } - - req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, templateSpecName, templateSpecVersion, templateSpecVersionModel) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "CreateOrUpdate", nil, "Failure preparing request") - return - } - - resp, err := client.CreateOrUpdateSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "CreateOrUpdate", resp, "Failure sending request") - return - } - - result, err = client.CreateOrUpdateResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "CreateOrUpdate", resp, "Failure responding to request") - return - } - - return -} - -// CreateOrUpdatePreparer prepares the CreateOrUpdate request. -func (client VersionsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpecVersion string, templateSpecVersionModel VersionTemplatespecs) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - "templateSpecVersion": autorest.Encode("path", templateSpecVersion), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - - preparer := autorest.CreatePreparer( - autorest.AsContentType("application/json; charset=utf-8"), - autorest.AsPut(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions/{templateSpecVersion}", pathParameters), - autorest.WithJSON(templateSpecVersionModel), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the -// http.Response Body if it receives an error. -func (client VersionsClient) CreateOrUpdateSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always -// closes the http.Response Body. -func (client VersionsClient) CreateOrUpdateResponder(resp *http.Response) (result VersionTemplatespecs, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} - -// Delete deletes a specific version from a Template Spec. When operation completes, status code 200 returned without -// content. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -// templateSpecVersion - the version of the Template Spec. -func (client VersionsClient) Delete(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpecVersion string) (result autorest.Response, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/VersionsClient.Delete") - defer func() { - sc := -1 - if result.Response != nil { - sc = result.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecVersion, - Constraints: []validation.Constraint{{Target: "templateSpecVersion", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecVersion", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecVersion", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil { - return result, validation.NewError("templatespecs.VersionsClient", "Delete", err.Error()) - } - - req, err := client.DeletePreparer(ctx, resourceGroupName, templateSpecName, templateSpecVersion) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Delete", nil, "Failure preparing request") - return - } - - resp, err := client.DeleteSender(req) - if err != nil { - result.Response = resp - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Delete", resp, "Failure sending request") - return - } - - result, err = client.DeleteResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Delete", resp, "Failure responding to request") - return - } - - return -} - -// DeletePreparer prepares the Delete request. -func (client VersionsClient) DeletePreparer(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpecVersion string) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - "templateSpecVersion": autorest.Encode("path", templateSpecVersion), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - - preparer := autorest.CreatePreparer( - autorest.AsDelete(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions/{templateSpecVersion}", pathParameters), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// DeleteSender sends the Delete request. The method will close the -// http.Response Body if it receives an error. -func (client VersionsClient) DeleteSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// DeleteResponder handles the response to the Delete request. The method always -// closes the http.Response Body. -func (client VersionsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusNoContent), - autorest.ByClosing()) - result.Response = resp - return -} - -// Get gets a Template Spec version from a specific Template Spec. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -// templateSpecVersion - the version of the Template Spec. -func (client VersionsClient) Get(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpecVersion string) (result VersionTemplatespecs, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/VersionsClient.Get") - defer func() { - sc := -1 - if result.Response.Response != nil { - sc = result.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecVersion, - Constraints: []validation.Constraint{{Target: "templateSpecVersion", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecVersion", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecVersion", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil { - return result, validation.NewError("templatespecs.VersionsClient", "Get", err.Error()) - } - - req, err := client.GetPreparer(ctx, resourceGroupName, templateSpecName, templateSpecVersion) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Get", nil, "Failure preparing request") - return - } - - resp, err := client.GetSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Get", resp, "Failure sending request") - return - } - - result, err = client.GetResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Get", resp, "Failure responding to request") - return - } - - return -} - -// GetPreparer prepares the Get request. -func (client VersionsClient) GetPreparer(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpecVersion string) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - "templateSpecVersion": autorest.Encode("path", templateSpecVersion), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - - preparer := autorest.CreatePreparer( - autorest.AsGet(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions/{templateSpecVersion}", pathParameters), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// GetSender sends the Get request. The method will close the -// http.Response Body if it receives an error. -func (client VersionsClient) GetSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// GetResponder handles the response to the Get request. The method always -// closes the http.Response Body. -func (client VersionsClient) GetResponder(resp *http.Response) (result VersionTemplatespecs, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} - -// List lists all the Template Spec versions in the specified Template Spec. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -func (client VersionsClient) List(ctx context.Context, resourceGroupName string, templateSpecName string) (result VersionsListResultPage, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/VersionsClient.List") - defer func() { - sc := -1 - if result.vlr.Response.Response != nil { - sc = result.vlr.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil { - return result, validation.NewError("templatespecs.VersionsClient", "List", err.Error()) - } - - result.fn = client.listNextResults - req, err := client.ListPreparer(ctx, resourceGroupName, templateSpecName) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "List", nil, "Failure preparing request") - return - } - - resp, err := client.ListSender(req) - if err != nil { - result.vlr.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "List", resp, "Failure sending request") - return - } - - result.vlr, err = client.ListResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "List", resp, "Failure responding to request") - return - } - if result.vlr.hasNextLink() && result.vlr.IsEmpty() { - err = result.NextWithContext(ctx) - return - } - - return -} - -// ListPreparer prepares the List request. -func (client VersionsClient) ListPreparer(ctx context.Context, resourceGroupName string, templateSpecName string) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - - preparer := autorest.CreatePreparer( - autorest.AsGet(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions", pathParameters), - autorest.WithQueryParameters(queryParameters)) - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// ListSender sends the List request. The method will close the -// http.Response Body if it receives an error. -func (client VersionsClient) ListSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// ListResponder handles the response to the List request. The method always -// closes the http.Response Body. -func (client VersionsClient) ListResponder(resp *http.Response) (result VersionsListResult, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} - -// listNextResults retrieves the next set of results, if any. -func (client VersionsClient) listNextResults(ctx context.Context, lastResults VersionsListResult) (result VersionsListResult, err error) { - req, err := lastResults.versionsListResultPreparer(ctx) - if err != nil { - return result, autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "listNextResults", nil, "Failure preparing next results request") - } - if req == nil { - return - } - resp, err := client.ListSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "listNextResults", resp, "Failure sending next results request") - } - result, err = client.ListResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "listNextResults", resp, "Failure responding to next results request") - } - return -} - -// ListComplete enumerates all values, automatically crossing page boundaries as required. -func (client VersionsClient) ListComplete(ctx context.Context, resourceGroupName string, templateSpecName string) (result VersionsListResultIterator, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/VersionsClient.List") - defer func() { - sc := -1 - if result.Response().Response.Response != nil { - sc = result.page.Response().Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - result.page, err = client.List(ctx, resourceGroupName, templateSpecName) - return -} - -// Update updates Template Spec Version tags with specified values. -// Parameters: -// resourceGroupName - the name of the resource group. The name is case insensitive. -// templateSpecName - name of the Template Spec. -// templateSpecVersion - the version of the Template Spec. -// templateSpecVersionUpdateModel - template Spec Version resource with the tags to be updated. -func (client VersionsClient) Update(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpecVersion string, templateSpecVersionUpdateModel *VersionUpdateModel) (result VersionTemplatespecs, err error) { - if tracing.IsEnabled() { - ctx = tracing.StartSpan(ctx, fqdn+"/VersionsClient.Update") - defer func() { - sc := -1 - if result.Response.Response != nil { - sc = result.Response.Response.StatusCode - } - tracing.EndSpan(ctx, sc, err) - }() - } - if err := validation.Validate([]validation.Validation{ - {TargetValue: resourceGroupName, - Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecName, - Constraints: []validation.Constraint{{Target: "templateSpecName", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecName", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, - {TargetValue: templateSpecVersion, - Constraints: []validation.Constraint{{Target: "templateSpecVersion", Name: validation.MaxLength, Rule: 90, Chain: nil}, - {Target: "templateSpecVersion", Name: validation.MinLength, Rule: 1, Chain: nil}, - {Target: "templateSpecVersion", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil { - return result, validation.NewError("templatespecs.VersionsClient", "Update", err.Error()) - } - - req, err := client.UpdatePreparer(ctx, resourceGroupName, templateSpecName, templateSpecVersion, templateSpecVersionUpdateModel) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Update", nil, "Failure preparing request") - return - } - - resp, err := client.UpdateSender(req) - if err != nil { - result.Response = autorest.Response{Response: resp} - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Update", resp, "Failure sending request") - return - } - - result, err = client.UpdateResponder(resp) - if err != nil { - err = autorest.NewErrorWithError(err, "templatespecs.VersionsClient", "Update", resp, "Failure responding to request") - return - } - - return -} - -// UpdatePreparer prepares the Update request. -func (client VersionsClient) UpdatePreparer(ctx context.Context, resourceGroupName string, templateSpecName string, templateSpecVersion string, templateSpecVersionUpdateModel *VersionUpdateModel) (*http.Request, error) { - pathParameters := map[string]interface{}{ - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), - "templateSpecName": autorest.Encode("path", templateSpecName), - "templateSpecVersion": autorest.Encode("path", templateSpecVersion), - } - - const APIVersion = "2019-06-01-preview" - queryParameters := map[string]interface{}{ - "api-version": APIVersion, - } - - preparer := autorest.CreatePreparer( - autorest.AsContentType("application/json; charset=utf-8"), - autorest.AsPatch(), - autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/templateSpecs/{templateSpecName}/versions/{templateSpecVersion}", pathParameters), - autorest.WithQueryParameters(queryParameters)) - if templateSpecVersionUpdateModel != nil { - preparer = autorest.DecoratePreparer(preparer, - autorest.WithJSON(templateSpecVersionUpdateModel)) - } - return preparer.Prepare((&http.Request{}).WithContext(ctx)) -} - -// UpdateSender sends the Update request. The method will close the -// http.Response Body if it receives an error. -func (client VersionsClient) UpdateSender(req *http.Request) (*http.Response, error) { - return client.Send(req, azure.DoRetryWithRegistration(client.Client)) -} - -// UpdateResponder handles the response to the Update request. The method always -// closes the http.Response Body. -func (client VersionsClient) UpdateResponder(resp *http.Response) (result VersionTemplatespecs, err error) { - err = autorest.Respond( - resp, - azure.WithErrorUnlessStatusCode(http.StatusOK), - autorest.ByUnmarshallingJSON(&result), - autorest.ByClosing()) - result.Response = autorest.Response{Response: resp} - return -} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/README.md b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/README.md new file mode 100644 index 000000000000..69139c49a84e --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/README.md @@ -0,0 +1,144 @@ + +## `github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions` Documentation + +The `templatespecversions` SDK allows for interaction with the Azure Resource Manager Service `resources` (API Version `2022-02-01`). + +This readme covers example usages, but further information on [using this SDK can be found in the project root](https://github.com/hashicorp/go-azure-sdk/tree/main/docs). + +### Import Path + +```go +import "github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions" +``` + + +### Client Initialization + +```go +client := templatespecversions.NewTemplateSpecVersionsClientWithBaseURI("https://management.azure.com") +client.Client.Authorizer = authorizer +``` + + +### Example Usage: `TemplateSpecVersionsClient.CreateOrUpdate` + +```go +ctx := context.TODO() +id := templatespecversions.NewTemplateSpecVersionID("12345678-1234-9876-4563-123456789012", "example-resource-group", "templateSpecValue", "versionValue") + +payload := templatespecversions.TemplateSpecVersion{ + // ... +} + + +read, err := client.CreateOrUpdate(ctx, id, payload) +if err != nil { + // handle the error +} +if model := read.Model; model != nil { + // do something with the model/response object +} +``` + + +### Example Usage: `TemplateSpecVersionsClient.Delete` + +```go +ctx := context.TODO() +id := templatespecversions.NewTemplateSpecVersionID("12345678-1234-9876-4563-123456789012", "example-resource-group", "templateSpecValue", "versionValue") + +read, err := client.Delete(ctx, id) +if err != nil { + // handle the error +} +if model := read.Model; model != nil { + // do something with the model/response object +} +``` + + +### Example Usage: `TemplateSpecVersionsClient.Get` + +```go +ctx := context.TODO() +id := templatespecversions.NewTemplateSpecVersionID("12345678-1234-9876-4563-123456789012", "example-resource-group", "templateSpecValue", "versionValue") + +read, err := client.Get(ctx, id) +if err != nil { + // handle the error +} +if model := read.Model; model != nil { + // do something with the model/response object +} +``` + + +### Example Usage: `TemplateSpecVersionsClient.GetBuiltIn` + +```go +ctx := context.TODO() +id := templatespecversions.NewVersionID("builtInTemplateSpecValue", "versionValue") + +read, err := client.GetBuiltIn(ctx, id) +if err != nil { + // handle the error +} +if model := read.Model; model != nil { + // do something with the model/response object +} +``` + + +### Example Usage: `TemplateSpecVersionsClient.List` + +```go +ctx := context.TODO() +id := templatespecversions.NewTemplateSpecID("12345678-1234-9876-4563-123456789012", "example-resource-group", "templateSpecValue") + +// alternatively `client.List(ctx, id)` can be used to do batched pagination +items, err := client.ListComplete(ctx, id) +if err != nil { + // handle the error +} +for _, item := range items { + // do something +} +``` + + +### Example Usage: `TemplateSpecVersionsClient.ListBuiltIns` + +```go +ctx := context.TODO() +id := templatespecversions.NewBuiltInTemplateSpecID("builtInTemplateSpecValue") + +// alternatively `client.ListBuiltIns(ctx, id)` can be used to do batched pagination +items, err := client.ListBuiltInsComplete(ctx, id) +if err != nil { + // handle the error +} +for _, item := range items { + // do something +} +``` + + +### Example Usage: `TemplateSpecVersionsClient.Update` + +```go +ctx := context.TODO() +id := templatespecversions.NewTemplateSpecVersionID("12345678-1234-9876-4563-123456789012", "example-resource-group", "templateSpecValue", "versionValue") + +payload := templatespecversions.TemplateSpecVersionUpdateModel{ + // ... +} + + +read, err := client.Update(ctx, id, payload) +if err != nil { + // handle the error +} +if model := read.Model; model != nil { + // do something with the model/response object +} +``` diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/client.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/client.go new file mode 100644 index 000000000000..7493bcc63fc8 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/client.go @@ -0,0 +1,26 @@ +package templatespecversions + +import ( + "fmt" + + "github.com/hashicorp/go-azure-sdk/sdk/client/resourcemanager" + sdkEnv "github.com/hashicorp/go-azure-sdk/sdk/environments" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type TemplateSpecVersionsClient struct { + Client *resourcemanager.Client +} + +func NewTemplateSpecVersionsClientWithBaseURI(sdkApi sdkEnv.Api) (*TemplateSpecVersionsClient, error) { + client, err := resourcemanager.NewResourceManagerClient(sdkApi, "templatespecversions", defaultApiVersion) + if err != nil { + return nil, fmt.Errorf("instantiating TemplateSpecVersionsClient: %+v", err) + } + + return &TemplateSpecVersionsClient{ + Client: client, + }, nil +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_builtintemplatespec.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_builtintemplatespec.go new file mode 100644 index 000000000000..b15fe7c5a640 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_builtintemplatespec.go @@ -0,0 +1,101 @@ +package templatespecversions + +import ( + "fmt" + "strings" + + "github.com/hashicorp/go-azure-helpers/resourcemanager/resourceids" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +var _ resourceids.ResourceId = BuiltInTemplateSpecId{} + +// BuiltInTemplateSpecId is a struct representing the Resource ID for a Built In Template Spec +type BuiltInTemplateSpecId struct { + BuiltInTemplateSpecName string +} + +// NewBuiltInTemplateSpecID returns a new BuiltInTemplateSpecId struct +func NewBuiltInTemplateSpecID(builtInTemplateSpecName string) BuiltInTemplateSpecId { + return BuiltInTemplateSpecId{ + BuiltInTemplateSpecName: builtInTemplateSpecName, + } +} + +// ParseBuiltInTemplateSpecID parses 'input' into a BuiltInTemplateSpecId +func ParseBuiltInTemplateSpecID(input string) (*BuiltInTemplateSpecId, error) { + parser := resourceids.NewParserFromResourceIdType(BuiltInTemplateSpecId{}) + parsed, err := parser.Parse(input, false) + if err != nil { + return nil, fmt.Errorf("parsing %q: %+v", input, err) + } + + var ok bool + id := BuiltInTemplateSpecId{} + + if id.BuiltInTemplateSpecName, ok = parsed.Parsed["builtInTemplateSpecName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "builtInTemplateSpecName", *parsed) + } + + return &id, nil +} + +// ParseBuiltInTemplateSpecIDInsensitively parses 'input' case-insensitively into a BuiltInTemplateSpecId +// note: this method should only be used for API response data and not user input +func ParseBuiltInTemplateSpecIDInsensitively(input string) (*BuiltInTemplateSpecId, error) { + parser := resourceids.NewParserFromResourceIdType(BuiltInTemplateSpecId{}) + parsed, err := parser.Parse(input, true) + if err != nil { + return nil, fmt.Errorf("parsing %q: %+v", input, err) + } + + var ok bool + id := BuiltInTemplateSpecId{} + + if id.BuiltInTemplateSpecName, ok = parsed.Parsed["builtInTemplateSpecName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "builtInTemplateSpecName", *parsed) + } + + return &id, nil +} + +// ValidateBuiltInTemplateSpecID checks that 'input' can be parsed as a Built In Template Spec ID +func ValidateBuiltInTemplateSpecID(input interface{}, key string) (warnings []string, errors []error) { + v, ok := input.(string) + if !ok { + errors = append(errors, fmt.Errorf("expected %q to be a string", key)) + return + } + + if _, err := ParseBuiltInTemplateSpecID(v); err != nil { + errors = append(errors, err) + } + + return +} + +// ID returns the formatted Built In Template Spec ID +func (id BuiltInTemplateSpecId) ID() string { + fmtString := "/providers/Microsoft.Resources/builtInTemplateSpecs/%s" + return fmt.Sprintf(fmtString, id.BuiltInTemplateSpecName) +} + +// Segments returns a slice of Resource ID Segments which comprise this Built In Template Spec ID +func (id BuiltInTemplateSpecId) Segments() []resourceids.Segment { + return []resourceids.Segment{ + resourceids.StaticSegment("staticProviders", "providers", "providers"), + resourceids.ResourceProviderSegment("staticMicrosoftResources", "Microsoft.Resources", "Microsoft.Resources"), + resourceids.StaticSegment("staticBuiltInTemplateSpecs", "builtInTemplateSpecs", "builtInTemplateSpecs"), + resourceids.UserSpecifiedSegment("builtInTemplateSpecName", "builtInTemplateSpecValue"), + } +} + +// String returns a human-readable description of this Built In Template Spec ID +func (id BuiltInTemplateSpecId) String() string { + components := []string{ + fmt.Sprintf("Built In Template Spec Name: %q", id.BuiltInTemplateSpecName), + } + return fmt.Sprintf("Built In Template Spec (%s)", strings.Join(components, "\n")) +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_templatespec.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_templatespec.go new file mode 100644 index 000000000000..3a93eb9eb3a5 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_templatespec.go @@ -0,0 +1,127 @@ +package templatespecversions + +import ( + "fmt" + "strings" + + "github.com/hashicorp/go-azure-helpers/resourcemanager/resourceids" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +var _ resourceids.ResourceId = TemplateSpecId{} + +// TemplateSpecId is a struct representing the Resource ID for a Template Spec +type TemplateSpecId struct { + SubscriptionId string + ResourceGroupName string + TemplateSpecName string +} + +// NewTemplateSpecID returns a new TemplateSpecId struct +func NewTemplateSpecID(subscriptionId string, resourceGroupName string, templateSpecName string) TemplateSpecId { + return TemplateSpecId{ + SubscriptionId: subscriptionId, + ResourceGroupName: resourceGroupName, + TemplateSpecName: templateSpecName, + } +} + +// ParseTemplateSpecID parses 'input' into a TemplateSpecId +func ParseTemplateSpecID(input string) (*TemplateSpecId, error) { + parser := resourceids.NewParserFromResourceIdType(TemplateSpecId{}) + parsed, err := parser.Parse(input, false) + if err != nil { + return nil, fmt.Errorf("parsing %q: %+v", input, err) + } + + var ok bool + id := TemplateSpecId{} + + if id.SubscriptionId, ok = parsed.Parsed["subscriptionId"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "subscriptionId", *parsed) + } + + if id.ResourceGroupName, ok = parsed.Parsed["resourceGroupName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "resourceGroupName", *parsed) + } + + if id.TemplateSpecName, ok = parsed.Parsed["templateSpecName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "templateSpecName", *parsed) + } + + return &id, nil +} + +// ParseTemplateSpecIDInsensitively parses 'input' case-insensitively into a TemplateSpecId +// note: this method should only be used for API response data and not user input +func ParseTemplateSpecIDInsensitively(input string) (*TemplateSpecId, error) { + parser := resourceids.NewParserFromResourceIdType(TemplateSpecId{}) + parsed, err := parser.Parse(input, true) + if err != nil { + return nil, fmt.Errorf("parsing %q: %+v", input, err) + } + + var ok bool + id := TemplateSpecId{} + + if id.SubscriptionId, ok = parsed.Parsed["subscriptionId"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "subscriptionId", *parsed) + } + + if id.ResourceGroupName, ok = parsed.Parsed["resourceGroupName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "resourceGroupName", *parsed) + } + + if id.TemplateSpecName, ok = parsed.Parsed["templateSpecName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "templateSpecName", *parsed) + } + + return &id, nil +} + +// ValidateTemplateSpecID checks that 'input' can be parsed as a Template Spec ID +func ValidateTemplateSpecID(input interface{}, key string) (warnings []string, errors []error) { + v, ok := input.(string) + if !ok { + errors = append(errors, fmt.Errorf("expected %q to be a string", key)) + return + } + + if _, err := ParseTemplateSpecID(v); err != nil { + errors = append(errors, err) + } + + return +} + +// ID returns the formatted Template Spec ID +func (id TemplateSpecId) ID() string { + fmtString := "/subscriptions/%s/resourceGroups/%s/providers/Microsoft.Resources/templateSpecs/%s" + return fmt.Sprintf(fmtString, id.SubscriptionId, id.ResourceGroupName, id.TemplateSpecName) +} + +// Segments returns a slice of Resource ID Segments which comprise this Template Spec ID +func (id TemplateSpecId) Segments() []resourceids.Segment { + return []resourceids.Segment{ + resourceids.StaticSegment("staticSubscriptions", "subscriptions", "subscriptions"), + resourceids.SubscriptionIdSegment("subscriptionId", "12345678-1234-9876-4563-123456789012"), + resourceids.StaticSegment("staticResourceGroups", "resourceGroups", "resourceGroups"), + resourceids.ResourceGroupSegment("resourceGroupName", "example-resource-group"), + resourceids.StaticSegment("staticProviders", "providers", "providers"), + resourceids.ResourceProviderSegment("staticMicrosoftResources", "Microsoft.Resources", "Microsoft.Resources"), + resourceids.StaticSegment("staticTemplateSpecs", "templateSpecs", "templateSpecs"), + resourceids.UserSpecifiedSegment("templateSpecName", "templateSpecValue"), + } +} + +// String returns a human-readable description of this Template Spec ID +func (id TemplateSpecId) String() string { + components := []string{ + fmt.Sprintf("Subscription: %q", id.SubscriptionId), + fmt.Sprintf("Resource Group Name: %q", id.ResourceGroupName), + fmt.Sprintf("Template Spec Name: %q", id.TemplateSpecName), + } + return fmt.Sprintf("Template Spec (%s)", strings.Join(components, "\n")) +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_templatespecversion.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_templatespecversion.go new file mode 100644 index 000000000000..5fb30a5f89cc --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_templatespecversion.go @@ -0,0 +1,140 @@ +package templatespecversions + +import ( + "fmt" + "strings" + + "github.com/hashicorp/go-azure-helpers/resourcemanager/resourceids" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +var _ resourceids.ResourceId = TemplateSpecVersionId{} + +// TemplateSpecVersionId is a struct representing the Resource ID for a Template Spec Version +type TemplateSpecVersionId struct { + SubscriptionId string + ResourceGroupName string + TemplateSpecName string + VersionName string +} + +// NewTemplateSpecVersionID returns a new TemplateSpecVersionId struct +func NewTemplateSpecVersionID(subscriptionId string, resourceGroupName string, templateSpecName string, versionName string) TemplateSpecVersionId { + return TemplateSpecVersionId{ + SubscriptionId: subscriptionId, + ResourceGroupName: resourceGroupName, + TemplateSpecName: templateSpecName, + VersionName: versionName, + } +} + +// ParseTemplateSpecVersionID parses 'input' into a TemplateSpecVersionId +func ParseTemplateSpecVersionID(input string) (*TemplateSpecVersionId, error) { + parser := resourceids.NewParserFromResourceIdType(TemplateSpecVersionId{}) + parsed, err := parser.Parse(input, false) + if err != nil { + return nil, fmt.Errorf("parsing %q: %+v", input, err) + } + + var ok bool + id := TemplateSpecVersionId{} + + if id.SubscriptionId, ok = parsed.Parsed["subscriptionId"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "subscriptionId", *parsed) + } + + if id.ResourceGroupName, ok = parsed.Parsed["resourceGroupName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "resourceGroupName", *parsed) + } + + if id.TemplateSpecName, ok = parsed.Parsed["templateSpecName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "templateSpecName", *parsed) + } + + if id.VersionName, ok = parsed.Parsed["versionName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "versionName", *parsed) + } + + return &id, nil +} + +// ParseTemplateSpecVersionIDInsensitively parses 'input' case-insensitively into a TemplateSpecVersionId +// note: this method should only be used for API response data and not user input +func ParseTemplateSpecVersionIDInsensitively(input string) (*TemplateSpecVersionId, error) { + parser := resourceids.NewParserFromResourceIdType(TemplateSpecVersionId{}) + parsed, err := parser.Parse(input, true) + if err != nil { + return nil, fmt.Errorf("parsing %q: %+v", input, err) + } + + var ok bool + id := TemplateSpecVersionId{} + + if id.SubscriptionId, ok = parsed.Parsed["subscriptionId"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "subscriptionId", *parsed) + } + + if id.ResourceGroupName, ok = parsed.Parsed["resourceGroupName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "resourceGroupName", *parsed) + } + + if id.TemplateSpecName, ok = parsed.Parsed["templateSpecName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "templateSpecName", *parsed) + } + + if id.VersionName, ok = parsed.Parsed["versionName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "versionName", *parsed) + } + + return &id, nil +} + +// ValidateTemplateSpecVersionID checks that 'input' can be parsed as a Template Spec Version ID +func ValidateTemplateSpecVersionID(input interface{}, key string) (warnings []string, errors []error) { + v, ok := input.(string) + if !ok { + errors = append(errors, fmt.Errorf("expected %q to be a string", key)) + return + } + + if _, err := ParseTemplateSpecVersionID(v); err != nil { + errors = append(errors, err) + } + + return +} + +// ID returns the formatted Template Spec Version ID +func (id TemplateSpecVersionId) ID() string { + fmtString := "/subscriptions/%s/resourceGroups/%s/providers/Microsoft.Resources/templateSpecs/%s/versions/%s" + return fmt.Sprintf(fmtString, id.SubscriptionId, id.ResourceGroupName, id.TemplateSpecName, id.VersionName) +} + +// Segments returns a slice of Resource ID Segments which comprise this Template Spec Version ID +func (id TemplateSpecVersionId) Segments() []resourceids.Segment { + return []resourceids.Segment{ + resourceids.StaticSegment("staticSubscriptions", "subscriptions", "subscriptions"), + resourceids.SubscriptionIdSegment("subscriptionId", "12345678-1234-9876-4563-123456789012"), + resourceids.StaticSegment("staticResourceGroups", "resourceGroups", "resourceGroups"), + resourceids.ResourceGroupSegment("resourceGroupName", "example-resource-group"), + resourceids.StaticSegment("staticProviders", "providers", "providers"), + resourceids.ResourceProviderSegment("staticMicrosoftResources", "Microsoft.Resources", "Microsoft.Resources"), + resourceids.StaticSegment("staticTemplateSpecs", "templateSpecs", "templateSpecs"), + resourceids.UserSpecifiedSegment("templateSpecName", "templateSpecValue"), + resourceids.StaticSegment("staticVersions", "versions", "versions"), + resourceids.UserSpecifiedSegment("versionName", "versionValue"), + } +} + +// String returns a human-readable description of this Template Spec Version ID +func (id TemplateSpecVersionId) String() string { + components := []string{ + fmt.Sprintf("Subscription: %q", id.SubscriptionId), + fmt.Sprintf("Resource Group Name: %q", id.ResourceGroupName), + fmt.Sprintf("Template Spec Name: %q", id.TemplateSpecName), + fmt.Sprintf("Version Name: %q", id.VersionName), + } + return fmt.Sprintf("Template Spec Version (%s)", strings.Join(components, "\n")) +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_version.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_version.go new file mode 100644 index 000000000000..64b6b101dcc1 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/id_version.go @@ -0,0 +1,114 @@ +package templatespecversions + +import ( + "fmt" + "strings" + + "github.com/hashicorp/go-azure-helpers/resourcemanager/resourceids" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +var _ resourceids.ResourceId = VersionId{} + +// VersionId is a struct representing the Resource ID for a Version +type VersionId struct { + BuiltInTemplateSpecName string + VersionName string +} + +// NewVersionID returns a new VersionId struct +func NewVersionID(builtInTemplateSpecName string, versionName string) VersionId { + return VersionId{ + BuiltInTemplateSpecName: builtInTemplateSpecName, + VersionName: versionName, + } +} + +// ParseVersionID parses 'input' into a VersionId +func ParseVersionID(input string) (*VersionId, error) { + parser := resourceids.NewParserFromResourceIdType(VersionId{}) + parsed, err := parser.Parse(input, false) + if err != nil { + return nil, fmt.Errorf("parsing %q: %+v", input, err) + } + + var ok bool + id := VersionId{} + + if id.BuiltInTemplateSpecName, ok = parsed.Parsed["builtInTemplateSpecName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "builtInTemplateSpecName", *parsed) + } + + if id.VersionName, ok = parsed.Parsed["versionName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "versionName", *parsed) + } + + return &id, nil +} + +// ParseVersionIDInsensitively parses 'input' case-insensitively into a VersionId +// note: this method should only be used for API response data and not user input +func ParseVersionIDInsensitively(input string) (*VersionId, error) { + parser := resourceids.NewParserFromResourceIdType(VersionId{}) + parsed, err := parser.Parse(input, true) + if err != nil { + return nil, fmt.Errorf("parsing %q: %+v", input, err) + } + + var ok bool + id := VersionId{} + + if id.BuiltInTemplateSpecName, ok = parsed.Parsed["builtInTemplateSpecName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "builtInTemplateSpecName", *parsed) + } + + if id.VersionName, ok = parsed.Parsed["versionName"]; !ok { + return nil, resourceids.NewSegmentNotSpecifiedError(id, "versionName", *parsed) + } + + return &id, nil +} + +// ValidateVersionID checks that 'input' can be parsed as a Version ID +func ValidateVersionID(input interface{}, key string) (warnings []string, errors []error) { + v, ok := input.(string) + if !ok { + errors = append(errors, fmt.Errorf("expected %q to be a string", key)) + return + } + + if _, err := ParseVersionID(v); err != nil { + errors = append(errors, err) + } + + return +} + +// ID returns the formatted Version ID +func (id VersionId) ID() string { + fmtString := "/providers/Microsoft.Resources/builtInTemplateSpecs/%s/versions/%s" + return fmt.Sprintf(fmtString, id.BuiltInTemplateSpecName, id.VersionName) +} + +// Segments returns a slice of Resource ID Segments which comprise this Version ID +func (id VersionId) Segments() []resourceids.Segment { + return []resourceids.Segment{ + resourceids.StaticSegment("staticProviders", "providers", "providers"), + resourceids.ResourceProviderSegment("staticMicrosoftResources", "Microsoft.Resources", "Microsoft.Resources"), + resourceids.StaticSegment("staticBuiltInTemplateSpecs", "builtInTemplateSpecs", "builtInTemplateSpecs"), + resourceids.UserSpecifiedSegment("builtInTemplateSpecName", "builtInTemplateSpecValue"), + resourceids.StaticSegment("staticVersions", "versions", "versions"), + resourceids.UserSpecifiedSegment("versionName", "versionValue"), + } +} + +// String returns a human-readable description of this Version ID +func (id VersionId) String() string { + components := []string{ + fmt.Sprintf("Built In Template Spec Name: %q", id.BuiltInTemplateSpecName), + fmt.Sprintf("Version Name: %q", id.VersionName), + } + return fmt.Sprintf("Version (%s)", strings.Join(components, "\n")) +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_createorupdate.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_createorupdate.go new file mode 100644 index 000000000000..e8f3519c1962 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_createorupdate.go @@ -0,0 +1,56 @@ +package templatespecversions + +import ( + "context" + "net/http" + + "github.com/hashicorp/go-azure-sdk/sdk/client" + "github.com/hashicorp/go-azure-sdk/sdk/odata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type CreateOrUpdateOperationResponse struct { + HttpResponse *http.Response + OData *odata.OData + Model *TemplateSpecVersion +} + +// CreateOrUpdate ... +func (c TemplateSpecVersionsClient) CreateOrUpdate(ctx context.Context, id TemplateSpecVersionId, input TemplateSpecVersion) (result CreateOrUpdateOperationResponse, err error) { + opts := client.RequestOptions{ + ContentType: "application/json; charset=utf-8", + ExpectedStatusCodes: []int{ + http.StatusCreated, + http.StatusOK, + }, + HttpMethod: http.MethodPut, + Path: id.ID(), + } + + req, err := c.Client.NewRequest(ctx, opts) + if err != nil { + return + } + + if err = req.Marshal(input); err != nil { + return + } + + var resp *client.Response + resp, err = req.Execute(ctx) + if resp != nil { + result.OData = resp.OData + result.HttpResponse = resp.Response + } + if err != nil { + return + } + + if err = resp.Unmarshal(&result.Model); err != nil { + return + } + + return +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_delete.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_delete.go new file mode 100644 index 000000000000..ad097db49b9d --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_delete.go @@ -0,0 +1,47 @@ +package templatespecversions + +import ( + "context" + "net/http" + + "github.com/hashicorp/go-azure-sdk/sdk/client" + "github.com/hashicorp/go-azure-sdk/sdk/odata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type DeleteOperationResponse struct { + HttpResponse *http.Response + OData *odata.OData +} + +// Delete ... +func (c TemplateSpecVersionsClient) Delete(ctx context.Context, id TemplateSpecVersionId) (result DeleteOperationResponse, err error) { + opts := client.RequestOptions{ + ContentType: "application/json; charset=utf-8", + ExpectedStatusCodes: []int{ + http.StatusNoContent, + http.StatusOK, + }, + HttpMethod: http.MethodDelete, + Path: id.ID(), + } + + req, err := c.Client.NewRequest(ctx, opts) + if err != nil { + return + } + + var resp *client.Response + resp, err = req.Execute(ctx) + if resp != nil { + result.OData = resp.OData + result.HttpResponse = resp.Response + } + if err != nil { + return + } + + return +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_get.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_get.go new file mode 100644 index 000000000000..b44fe95f56b8 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_get.go @@ -0,0 +1,51 @@ +package templatespecversions + +import ( + "context" + "net/http" + + "github.com/hashicorp/go-azure-sdk/sdk/client" + "github.com/hashicorp/go-azure-sdk/sdk/odata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type GetOperationResponse struct { + HttpResponse *http.Response + OData *odata.OData + Model *TemplateSpecVersion +} + +// Get ... +func (c TemplateSpecVersionsClient) Get(ctx context.Context, id TemplateSpecVersionId) (result GetOperationResponse, err error) { + opts := client.RequestOptions{ + ContentType: "application/json; charset=utf-8", + ExpectedStatusCodes: []int{ + http.StatusOK, + }, + HttpMethod: http.MethodGet, + Path: id.ID(), + } + + req, err := c.Client.NewRequest(ctx, opts) + if err != nil { + return + } + + var resp *client.Response + resp, err = req.Execute(ctx) + if resp != nil { + result.OData = resp.OData + result.HttpResponse = resp.Response + } + if err != nil { + return + } + + if err = resp.Unmarshal(&result.Model); err != nil { + return + } + + return +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_getbuiltin.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_getbuiltin.go new file mode 100644 index 000000000000..93107cdab0e8 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_getbuiltin.go @@ -0,0 +1,51 @@ +package templatespecversions + +import ( + "context" + "net/http" + + "github.com/hashicorp/go-azure-sdk/sdk/client" + "github.com/hashicorp/go-azure-sdk/sdk/odata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type GetBuiltInOperationResponse struct { + HttpResponse *http.Response + OData *odata.OData + Model *TemplateSpecVersion +} + +// GetBuiltIn ... +func (c TemplateSpecVersionsClient) GetBuiltIn(ctx context.Context, id VersionId) (result GetBuiltInOperationResponse, err error) { + opts := client.RequestOptions{ + ContentType: "application/json; charset=utf-8", + ExpectedStatusCodes: []int{ + http.StatusOK, + }, + HttpMethod: http.MethodGet, + Path: id.ID(), + } + + req, err := c.Client.NewRequest(ctx, opts) + if err != nil { + return + } + + var resp *client.Response + resp, err = req.Execute(ctx) + if resp != nil { + result.OData = resp.OData + result.HttpResponse = resp.Response + } + if err != nil { + return + } + + if err = resp.Unmarshal(&result.Model); err != nil { + return + } + + return +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_list.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_list.go new file mode 100644 index 000000000000..77fd9cbcc616 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_list.go @@ -0,0 +1,89 @@ +package templatespecversions + +import ( + "context" + "fmt" + "net/http" + + "github.com/hashicorp/go-azure-sdk/sdk/client" + "github.com/hashicorp/go-azure-sdk/sdk/odata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type ListOperationResponse struct { + HttpResponse *http.Response + OData *odata.OData + Model *[]TemplateSpecVersion +} + +type ListCompleteResult struct { + Items []TemplateSpecVersion +} + +// List ... +func (c TemplateSpecVersionsClient) List(ctx context.Context, id TemplateSpecId) (result ListOperationResponse, err error) { + opts := client.RequestOptions{ + ContentType: "application/json; charset=utf-8", + ExpectedStatusCodes: []int{ + http.StatusOK, + }, + HttpMethod: http.MethodGet, + Path: fmt.Sprintf("%s/versions", id.ID()), + } + + req, err := c.Client.NewRequest(ctx, opts) + if err != nil { + return + } + + var resp *client.Response + resp, err = req.ExecutePaged(ctx) + if resp != nil { + result.OData = resp.OData + result.HttpResponse = resp.Response + } + if err != nil { + return + } + + var values struct { + Values *[]TemplateSpecVersion `json:"value"` + } + if err = resp.Unmarshal(&values); err != nil { + return + } + + result.Model = values.Values + + return +} + +// ListComplete retrieves all the results into a single object +func (c TemplateSpecVersionsClient) ListComplete(ctx context.Context, id TemplateSpecId) (ListCompleteResult, error) { + return c.ListCompleteMatchingPredicate(ctx, id, TemplateSpecVersionOperationPredicate{}) +} + +// ListCompleteMatchingPredicate retrieves all the results and then applies the predicate +func (c TemplateSpecVersionsClient) ListCompleteMatchingPredicate(ctx context.Context, id TemplateSpecId, predicate TemplateSpecVersionOperationPredicate) (result ListCompleteResult, err error) { + items := make([]TemplateSpecVersion, 0) + + resp, err := c.List(ctx, id) + if err != nil { + err = fmt.Errorf("loading results: %+v", err) + return + } + if resp.Model != nil { + for _, v := range *resp.Model { + if predicate.Matches(v) { + items = append(items, v) + } + } + } + + result = ListCompleteResult{ + Items: items, + } + return +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_listbuiltins.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_listbuiltins.go new file mode 100644 index 000000000000..d7e242511af5 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_listbuiltins.go @@ -0,0 +1,89 @@ +package templatespecversions + +import ( + "context" + "fmt" + "net/http" + + "github.com/hashicorp/go-azure-sdk/sdk/client" + "github.com/hashicorp/go-azure-sdk/sdk/odata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type ListBuiltInsOperationResponse struct { + HttpResponse *http.Response + OData *odata.OData + Model *[]TemplateSpecVersion +} + +type ListBuiltInsCompleteResult struct { + Items []TemplateSpecVersion +} + +// ListBuiltIns ... +func (c TemplateSpecVersionsClient) ListBuiltIns(ctx context.Context, id BuiltInTemplateSpecId) (result ListBuiltInsOperationResponse, err error) { + opts := client.RequestOptions{ + ContentType: "application/json; charset=utf-8", + ExpectedStatusCodes: []int{ + http.StatusOK, + }, + HttpMethod: http.MethodGet, + Path: fmt.Sprintf("%s/versions", id.ID()), + } + + req, err := c.Client.NewRequest(ctx, opts) + if err != nil { + return + } + + var resp *client.Response + resp, err = req.ExecutePaged(ctx) + if resp != nil { + result.OData = resp.OData + result.HttpResponse = resp.Response + } + if err != nil { + return + } + + var values struct { + Values *[]TemplateSpecVersion `json:"value"` + } + if err = resp.Unmarshal(&values); err != nil { + return + } + + result.Model = values.Values + + return +} + +// ListBuiltInsComplete retrieves all the results into a single object +func (c TemplateSpecVersionsClient) ListBuiltInsComplete(ctx context.Context, id BuiltInTemplateSpecId) (ListBuiltInsCompleteResult, error) { + return c.ListBuiltInsCompleteMatchingPredicate(ctx, id, TemplateSpecVersionOperationPredicate{}) +} + +// ListBuiltInsCompleteMatchingPredicate retrieves all the results and then applies the predicate +func (c TemplateSpecVersionsClient) ListBuiltInsCompleteMatchingPredicate(ctx context.Context, id BuiltInTemplateSpecId, predicate TemplateSpecVersionOperationPredicate) (result ListBuiltInsCompleteResult, err error) { + items := make([]TemplateSpecVersion, 0) + + resp, err := c.ListBuiltIns(ctx, id) + if err != nil { + err = fmt.Errorf("loading results: %+v", err) + return + } + if resp.Model != nil { + for _, v := range *resp.Model { + if predicate.Matches(v) { + items = append(items, v) + } + } + } + + result = ListBuiltInsCompleteResult{ + Items: items, + } + return +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_update.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_update.go new file mode 100644 index 000000000000..9f92c8e0c762 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/method_update.go @@ -0,0 +1,55 @@ +package templatespecversions + +import ( + "context" + "net/http" + + "github.com/hashicorp/go-azure-sdk/sdk/client" + "github.com/hashicorp/go-azure-sdk/sdk/odata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type UpdateOperationResponse struct { + HttpResponse *http.Response + OData *odata.OData + Model *TemplateSpecVersion +} + +// Update ... +func (c TemplateSpecVersionsClient) Update(ctx context.Context, id TemplateSpecVersionId, input TemplateSpecVersionUpdateModel) (result UpdateOperationResponse, err error) { + opts := client.RequestOptions{ + ContentType: "application/json; charset=utf-8", + ExpectedStatusCodes: []int{ + http.StatusOK, + }, + HttpMethod: http.MethodPatch, + Path: id.ID(), + } + + req, err := c.Client.NewRequest(ctx, opts) + if err != nil { + return + } + + if err = req.Marshal(input); err != nil { + return + } + + var resp *client.Response + resp, err = req.Execute(ctx) + if resp != nil { + result.OData = resp.OData + result.HttpResponse = resp.Response + } + if err != nil { + return + } + + if err = resp.Unmarshal(&result.Model); err != nil { + return + } + + return +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_linkedtemplateartifact.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_linkedtemplateartifact.go new file mode 100644 index 000000000000..73f692b8fc17 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_linkedtemplateartifact.go @@ -0,0 +1,9 @@ +package templatespecversions + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type LinkedTemplateArtifact struct { + Path string `json:"path"` + Template interface{} `json:"template"` +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversion.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversion.go new file mode 100644 index 000000000000..2ef477ea82f1 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversion.go @@ -0,0 +1,18 @@ +package templatespecversions + +import ( + "github.com/hashicorp/go-azure-helpers/resourcemanager/systemdata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type TemplateSpecVersion struct { + Id *string `json:"id,omitempty"` + Location string `json:"location"` + Name *string `json:"name,omitempty"` + Properties TemplateSpecVersionProperties `json:"properties"` + SystemData *systemdata.SystemData `json:"systemData,omitempty"` + Tags *map[string]string `json:"tags,omitempty"` + Type *string `json:"type,omitempty"` +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversionproperties.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversionproperties.go new file mode 100644 index 000000000000..e00067893dfc --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversionproperties.go @@ -0,0 +1,12 @@ +package templatespecversions + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type TemplateSpecVersionProperties struct { + Description *string `json:"description,omitempty"` + LinkedTemplates *[]LinkedTemplateArtifact `json:"linkedTemplates,omitempty"` + MainTemplate *interface{} `json:"mainTemplate,omitempty"` + Metadata *interface{} `json:"metadata,omitempty"` + UiFormDefinition *interface{} `json:"uiFormDefinition,omitempty"` +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversionupdatemodel.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversionupdatemodel.go new file mode 100644 index 000000000000..a6d34b8f4207 --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/model_templatespecversionupdatemodel.go @@ -0,0 +1,16 @@ +package templatespecversions + +import ( + "github.com/hashicorp/go-azure-helpers/resourcemanager/systemdata" +) + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type TemplateSpecVersionUpdateModel struct { + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + SystemData *systemdata.SystemData `json:"systemData,omitempty"` + Tags *map[string]string `json:"tags,omitempty"` + Type *string `json:"type,omitempty"` +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/predicates.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/predicates.go new file mode 100644 index 000000000000..4595a22ba41c --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/predicates.go @@ -0,0 +1,32 @@ +package templatespecversions + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +type TemplateSpecVersionOperationPredicate struct { + Id *string + Location *string + Name *string + Type *string +} + +func (p TemplateSpecVersionOperationPredicate) Matches(input TemplateSpecVersion) bool { + + if p.Id != nil && (input.Id == nil || *p.Id != *input.Id) { + return false + } + + if p.Location != nil && *p.Location != input.Location { + return false + } + + if p.Name != nil && (input.Name == nil || *p.Name != *input.Name) { + return false + } + + if p.Type != nil && (input.Type == nil || *p.Type != *input.Type) { + return false + } + + return true +} diff --git a/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/version.go b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/version.go new file mode 100644 index 000000000000..47cb26ca227e --- /dev/null +++ b/vendor/github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions/version.go @@ -0,0 +1,12 @@ +package templatespecversions + +import "fmt" + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. + +const defaultApiVersion = "2022-02-01" + +func userAgent() string { + return fmt.Sprintf("hashicorp/go-azure-sdk/templatespecversions/%s", defaultApiVersion) +} diff --git a/vendor/modules.txt b/vendor/modules.txt index 704ccdde4a26..3e5c504ee899 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -10,7 +10,6 @@ github.com/Azure/azure-sdk-for-go/services/hdinsight/mgmt/2018-06-01/hdinsight github.com/Azure/azure-sdk-for-go/services/preview/alertsmanagement/mgmt/2019-06-01-preview/alertsmanagement github.com/Azure/azure-sdk-for-go/services/preview/authorization/mgmt/2020-04-01-preview/authorization github.com/Azure/azure-sdk-for-go/services/preview/monitor/mgmt/2021-07-01-preview/insights -github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2019-06-01-preview/templatespecs github.com/Azure/azure-sdk-for-go/services/preview/resources/mgmt/2021-06-01-preview/policy github.com/Azure/azure-sdk-for-go/services/preview/security/mgmt/v3.0/security github.com/Azure/azure-sdk-for-go/services/preview/securityinsight/mgmt/2021-09-01-preview/securityinsight @@ -863,6 +862,7 @@ github.com/hashicorp/go-azure-sdk/resource-manager/resources/2020-05-01/privatel github.com/hashicorp/go-azure-sdk/resource-manager/resources/2020-05-01/resourcemanagementprivatelink github.com/hashicorp/go-azure-sdk/resource-manager/resources/2020-10-01/deploymentscripts github.com/hashicorp/go-azure-sdk/resource-manager/resources/2021-07-01/features +github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-02-01/templatespecversions github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-06-01/policyassignments github.com/hashicorp/go-azure-sdk/resource-manager/resources/2022-09-01/providers github.com/hashicorp/go-azure-sdk/resource-manager/search/2022-09-01/services