From ad74e0585316e26d02494805a06d1d194c0763fe Mon Sep 17 00:00:00 2001 From: Ross Smith Date: Tue, 10 Oct 2023 18:05:21 +0100 Subject: [PATCH] APIM Backend, NamedValue and Subscription (#3376) * Add Backend / NamedValue / Subscription * Added samples * APIM Integration Tests Co-authored-by: Matthew Christopher --- docs/hugo/content/reference/_index.md | 9 +- .../content/reference/apimanagement/_index.md | 9 +- .../backend_extension_types_gen.go | 20 + .../named_value_extension_types_gen.go | 20 + .../customizations/structure.txt | 5 +- .../subscription_extension_types_gen.go | 20 + .../v1api20220801/backend_types_gen.go | 3426 ++++++++++++++++ .../v1api20220801/backend_types_gen_test.go | 1935 +++++++++ .../v1api20220801/named_value_types_gen.go | 1365 +++++++ .../named_value_types_gen_test.go | 736 ++++ .../service_backend_spec_arm_types_gen.go | 146 + ...service_backend_spec_arm_types_gen_test.go | 642 +++ .../service_backend_status_arm_types_gen.go | 135 + ...rvice_backend_status_arm_types_gen_test.go | 643 +++ .../service_named_value_spec_arm_types_gen.go | 60 + ...ice_named_value_spec_arm_types_gen_test.go | 233 ++ ...ervice_named_value_status_arm_types_gen.go | 65 + ...e_named_value_status_arm_types_gen_test.go | 312 ++ ...service_subscription_spec_arm_types_gen.go | 69 + ...ce_subscription_spec_arm_types_gen_test.go | 166 + ...rvice_subscription_status_arm_types_gen.go | 79 + ..._subscription_status_arm_types_gen_test.go | 172 + .../v1api20220801/service_types_gen.go | 5 - .../apimanagement/v1api20220801/structure.txt | 504 ++- .../v1api20220801/subscription_types_gen.go | 1129 ++++++ .../subscription_types_gen_test.go | 400 ++ .../v1api20220801/zz_generated.deepcopy.go | 3532 +++++++++++++---- .../v1api20220801storage/backend_types_gen.go | 352 ++ .../backend_types_gen_test.go | 1178 ++++++ .../named_value_types_gen.go | 237 ++ .../named_value_types_gen_test.go | 441 ++ .../v1api20220801storage/service_types_gen.go | 6 - .../v1api20220801storage/structure.txt | 568 ++- .../subscription_types_gen.go | 221 ++ .../subscription_types_gen_test.go | 219 + .../zz_generated.deepcopy.go | 1334 ++++++- v2/api/apimanagement/versions_matrix.md | 36 + v2/azure-arm.yaml | 36 +- .../controllers/controller_resources_gen.go | 120 +- .../crd_apimanagement_20220801_test.go | 103 +- .../Test_ApiManagement_20220801_CRUD.yaml | 417 +- ...ent_v1api20220801_CreationAndDeletion.yaml | 1367 +++++-- .../v1api20220801/v1api20220801_backend.yaml | 11 + .../v1api20220801_namedvalue.yaml | 11 + .../v1api20220801_subscription.yaml | 10 + 45 files changed, 20919 insertions(+), 1585 deletions(-) create mode 100644 v2/api/apimanagement/customizations/backend_extension_types_gen.go create mode 100644 v2/api/apimanagement/customizations/named_value_extension_types_gen.go create mode 100644 v2/api/apimanagement/customizations/subscription_extension_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/backend_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/backend_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801/named_value_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/named_value_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801/service_backend_spec_arm_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/service_backend_spec_arm_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801/service_backend_status_arm_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/service_backend_status_arm_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801/service_named_value_spec_arm_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/service_named_value_spec_arm_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801/service_named_value_status_arm_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/service_named_value_status_arm_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801/service_subscription_spec_arm_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/service_subscription_spec_arm_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801/service_subscription_status_arm_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/service_subscription_status_arm_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801/subscription_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801/subscription_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801storage/backend_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801storage/backend_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801storage/named_value_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801storage/named_value_types_gen_test.go create mode 100644 v2/api/apimanagement/v1api20220801storage/subscription_types_gen.go create mode 100644 v2/api/apimanagement/v1api20220801storage/subscription_types_gen_test.go create mode 100644 v2/samples/apimanagement/v1api20220801/v1api20220801_backend.yaml create mode 100644 v2/samples/apimanagement/v1api20220801/v1api20220801_namedvalue.yaml create mode 100644 v2/samples/apimanagement/v1api20220801/v1api20220801_subscription.yaml diff --git a/docs/hugo/content/reference/_index.md b/docs/hugo/content/reference/_index.md index 41682c5eb14..b355a4eb3a5 100644 --- a/docs/hugo/content/reference/_index.md +++ b/docs/hugo/content/reference/_index.md @@ -22,9 +22,12 @@ To install the CRDs for these resources, your ASO configuration must include `ap Development of these new resources is complete and they will be available in the next release of ASO. -| Resource | ARM Version | CRD Version | Supported From | Sample | -|------------------------------------------------------------------------------------------------------------------------------------------------|-------------|---------------|----------------|-------------------------------------------------------------------------------------------------------------------------------------| -| [Service](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Service) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_service.yaml) | +| Resource | ARM Version | CRD Version | Supported From | Sample | +|----------------------------------------------------------------------------------------------------------------------------------------------------------|-------------|---------------|----------------|------------------------------------------------------------------------------------------------------------------------------------------| +| [Backend](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Backend) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_backend.yaml) | +| [NamedValue](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.NamedValue) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_namedvalue.yaml) | +| [Service](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Service) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_service.yaml) | +| [Subscription](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Subscription) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_subscription.yaml) | ## AppConfiguration diff --git a/docs/hugo/content/reference/apimanagement/_index.md b/docs/hugo/content/reference/apimanagement/_index.md index 87a30c95b28..a46211efa7b 100644 --- a/docs/hugo/content/reference/apimanagement/_index.md +++ b/docs/hugo/content/reference/apimanagement/_index.md @@ -9,7 +9,10 @@ To install the CRDs for these resources, your ASO configuration must include `ap Development of these new resources is complete and they will be available in the next release of ASO. -| Resource | ARM Version | CRD Version | Supported From | Sample | -|------------------------------------------------------------------------------------------------------------------------------------------------|-------------|---------------|----------------|-------------------------------------------------------------------------------------------------------------------------------------| -| [Service](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Service) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_service.yaml) | +| Resource | ARM Version | CRD Version | Supported From | Sample | +|----------------------------------------------------------------------------------------------------------------------------------------------------------|-------------|---------------|----------------|------------------------------------------------------------------------------------------------------------------------------------------| +| [Backend](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Backend) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_backend.yaml) | +| [NamedValue](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.NamedValue) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_namedvalue.yaml) | +| [Service](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Service) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_service.yaml) | +| [Subscription](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Subscription) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_subscription.yaml) | diff --git a/v2/api/apimanagement/customizations/backend_extension_types_gen.go b/v2/api/apimanagement/customizations/backend_extension_types_gen.go new file mode 100644 index 00000000000..9f2b269d691 --- /dev/null +++ b/v2/api/apimanagement/customizations/backend_extension_types_gen.go @@ -0,0 +1,20 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package customizations + +import ( + v20220801 "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" +) + +type BackendExtension struct { +} + +// GetExtendedResources Returns the KubernetesResource slice for Resource versions +func (extension *BackendExtension) GetExtendedResources() []genruntime.KubernetesResource { + return []genruntime.KubernetesResource{ + &v20220801.Backend{}, + &v20220801s.Backend{}} +} diff --git a/v2/api/apimanagement/customizations/named_value_extension_types_gen.go b/v2/api/apimanagement/customizations/named_value_extension_types_gen.go new file mode 100644 index 00000000000..e57af76978a --- /dev/null +++ b/v2/api/apimanagement/customizations/named_value_extension_types_gen.go @@ -0,0 +1,20 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package customizations + +import ( + v20220801 "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" +) + +type NamedValueExtension struct { +} + +// GetExtendedResources Returns the KubernetesResource slice for Resource versions +func (extension *NamedValueExtension) GetExtendedResources() []genruntime.KubernetesResource { + return []genruntime.KubernetesResource{ + &v20220801.NamedValue{}, + &v20220801s.NamedValue{}} +} diff --git a/v2/api/apimanagement/customizations/structure.txt b/v2/api/apimanagement/customizations/structure.txt index d80a84ff384..5f89d936dd7 100644 --- a/v2/api/apimanagement/customizations/structure.txt +++ b/v2/api/apimanagement/customizations/structure.txt @@ -1,3 +1,6 @@ // Code generated by azure-service-operator-codegen. DO NOT EDIT. github.com/Azure/azure-service-operator/v2/api/apimanagement/customizations -└── ServiceExtension: Object (0 properties) +├── BackendExtension: Object (0 properties) +├── NamedValueExtension: Object (0 properties) +├── ServiceExtension: Object (0 properties) +└── SubscriptionExtension: Object (0 properties) diff --git a/v2/api/apimanagement/customizations/subscription_extension_types_gen.go b/v2/api/apimanagement/customizations/subscription_extension_types_gen.go new file mode 100644 index 00000000000..d1860a2ac62 --- /dev/null +++ b/v2/api/apimanagement/customizations/subscription_extension_types_gen.go @@ -0,0 +1,20 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package customizations + +import ( + v20220801 "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" +) + +type SubscriptionExtension struct { +} + +// GetExtendedResources Returns the KubernetesResource slice for Resource versions +func (extension *SubscriptionExtension) GetExtendedResources() []genruntime.KubernetesResource { + return []genruntime.KubernetesResource{ + &v20220801.Subscription{}, + &v20220801s.Subscription{}} +} diff --git a/v2/api/apimanagement/v1api20220801/backend_types_gen.go b/v2/api/apimanagement/v1api20220801/backend_types_gen.go new file mode 100644 index 00000000000..91b25267e91 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/backend_types_gen.go @@ -0,0 +1,3426 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "fmt" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/Azure/azure-service-operator/v2/internal/reflecthelpers" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" + "sigs.k8s.io/controller-runtime/pkg/webhook/admission" +) + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimbackends.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId} +type Backend struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec Service_Backend_Spec `json:"spec,omitempty"` + Status Service_Backend_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &Backend{} + +// GetConditions returns the conditions of the resource +func (backend *Backend) GetConditions() conditions.Conditions { + return backend.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (backend *Backend) SetConditions(conditions conditions.Conditions) { + backend.Status.Conditions = conditions +} + +var _ conversion.Convertible = &Backend{} + +// ConvertFrom populates our Backend from the provided hub Backend +func (backend *Backend) ConvertFrom(hub conversion.Hub) error { + source, ok := hub.(*v20220801s.Backend) + if !ok { + return fmt.Errorf("expected apimanagement/v1api20220801storage/Backend but received %T instead", hub) + } + + return backend.AssignProperties_From_Backend(source) +} + +// ConvertTo populates the provided hub Backend from our Backend +func (backend *Backend) ConvertTo(hub conversion.Hub) error { + destination, ok := hub.(*v20220801s.Backend) + if !ok { + return fmt.Errorf("expected apimanagement/v1api20220801storage/Backend but received %T instead", hub) + } + + return backend.AssignProperties_To_Backend(destination) +} + +// +kubebuilder:webhook:path=/mutate-apimanagement-azure-com-v1api20220801-backend,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=apimanagement.azure.com,resources=backends,verbs=create;update,versions=v1api20220801,name=default.v1api20220801.backends.apimanagement.azure.com,admissionReviewVersions=v1 + +var _ admission.Defaulter = &Backend{} + +// Default applies defaults to the Backend resource +func (backend *Backend) Default() { + backend.defaultImpl() + var temp any = backend + if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok { + runtimeDefaulter.CustomDefault() + } +} + +// defaultAzureName defaults the Azure name of the resource to the Kubernetes name +func (backend *Backend) defaultAzureName() { + if backend.Spec.AzureName == "" { + backend.Spec.AzureName = backend.Name + } +} + +// defaultImpl applies the code generated defaults to the Backend resource +func (backend *Backend) defaultImpl() { backend.defaultAzureName() } + +var _ genruntime.ImportableResource = &Backend{} + +// InitializeSpec initializes the spec for this resource from the given status +func (backend *Backend) InitializeSpec(status genruntime.ConvertibleStatus) error { + if s, ok := status.(*Service_Backend_STATUS); ok { + return backend.Spec.Initialize_From_Service_Backend_STATUS(s) + } + + return fmt.Errorf("expected Status of type Service_Backend_STATUS but received %T instead", status) +} + +var _ genruntime.KubernetesResource = &Backend{} + +// AzureName returns the Azure name of the resource +func (backend *Backend) AzureName() string { + return backend.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (backend Backend) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (backend *Backend) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (backend *Backend) GetSpec() genruntime.ConvertibleSpec { + return &backend.Spec +} + +// GetStatus returns the status of this resource +func (backend *Backend) GetStatus() genruntime.ConvertibleStatus { + return &backend.Status +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/backends" +func (backend *Backend) GetType() string { + return "Microsoft.ApiManagement/service/backends" +} + +// NewEmptyStatus returns a new empty (blank) status +func (backend *Backend) NewEmptyStatus() genruntime.ConvertibleStatus { + return &Service_Backend_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (backend *Backend) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(backend.Spec) + return backend.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (backend *Backend) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*Service_Backend_STATUS); ok { + backend.Status = *st + return nil + } + + // Convert status to required version + var st Service_Backend_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + backend.Status = st + return nil +} + +// +kubebuilder:webhook:path=/validate-apimanagement-azure-com-v1api20220801-backend,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=apimanagement.azure.com,resources=backends,verbs=create;update,versions=v1api20220801,name=validate.v1api20220801.backends.apimanagement.azure.com,admissionReviewVersions=v1 + +var _ admission.Validator = &Backend{} + +// ValidateCreate validates the creation of the resource +func (backend *Backend) ValidateCreate() (admission.Warnings, error) { + validations := backend.createValidations() + var temp any = backend + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.CreateValidations()...) + } + return genruntime.ValidateCreate(validations) +} + +// ValidateDelete validates the deletion of the resource +func (backend *Backend) ValidateDelete() (admission.Warnings, error) { + validations := backend.deleteValidations() + var temp any = backend + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.DeleteValidations()...) + } + return genruntime.ValidateDelete(validations) +} + +// ValidateUpdate validates an update of the resource +func (backend *Backend) ValidateUpdate(old runtime.Object) (admission.Warnings, error) { + validations := backend.updateValidations() + var temp any = backend + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.UpdateValidations()...) + } + return genruntime.ValidateUpdate(old, validations) +} + +// createValidations validates the creation of the resource +func (backend *Backend) createValidations() []func() (admission.Warnings, error) { + return []func() (admission.Warnings, error){backend.validateResourceReferences, backend.validateOwnerReference} +} + +// deleteValidations validates the deletion of the resource +func (backend *Backend) deleteValidations() []func() (admission.Warnings, error) { + return nil +} + +// updateValidations validates the update of the resource +func (backend *Backend) updateValidations() []func(old runtime.Object) (admission.Warnings, error) { + return []func(old runtime.Object) (admission.Warnings, error){ + func(old runtime.Object) (admission.Warnings, error) { + return backend.validateResourceReferences() + }, + backend.validateWriteOnceProperties, + func(old runtime.Object) (admission.Warnings, error) { + return backend.validateOwnerReference() + }, + } +} + +// validateOwnerReference validates the owner field +func (backend *Backend) validateOwnerReference() (admission.Warnings, error) { + return genruntime.ValidateOwner(backend) +} + +// validateResourceReferences validates all resource references +func (backend *Backend) validateResourceReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindResourceReferences(&backend.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateResourceReferences(refs) +} + +// validateWriteOnceProperties validates all WriteOnce properties +func (backend *Backend) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) { + oldObj, ok := old.(*Backend) + if !ok { + return nil, nil + } + + return genruntime.ValidateWriteOnceProperties(oldObj, backend) +} + +// AssignProperties_From_Backend populates our Backend from the provided source Backend +func (backend *Backend) AssignProperties_From_Backend(source *v20220801s.Backend) error { + + // ObjectMeta + backend.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec Service_Backend_Spec + err := spec.AssignProperties_From_Service_Backend_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Service_Backend_Spec() to populate field Spec") + } + backend.Spec = spec + + // Status + var status Service_Backend_STATUS + err = status.AssignProperties_From_Service_Backend_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Service_Backend_STATUS() to populate field Status") + } + backend.Status = status + + // No error + return nil +} + +// AssignProperties_To_Backend populates the provided destination Backend from our Backend +func (backend *Backend) AssignProperties_To_Backend(destination *v20220801s.Backend) error { + + // ObjectMeta + destination.ObjectMeta = *backend.ObjectMeta.DeepCopy() + + // Spec + var spec v20220801s.Service_Backend_Spec + err := backend.Spec.AssignProperties_To_Service_Backend_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Service_Backend_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20220801s.Service_Backend_STATUS + err = backend.Status.AssignProperties_To_Service_Backend_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Service_Backend_STATUS() to populate field Status") + } + destination.Status = status + + // No error + return nil +} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (backend *Backend) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: backend.Spec.OriginalVersion(), + Kind: "Backend", + } +} + +// +kubebuilder:object:root=true +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimbackends.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId} +type BackendList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []Backend `json:"items"` +} + +// +kubebuilder:validation:Enum={"2022-08-01"} +type APIVersion string + +const APIVersion_Value = APIVersion("2022-08-01") + +type Service_Backend_Spec struct { + // +kubebuilder:validation:MaxLength=80 + // +kubebuilder:validation:MinLength=1 + // AzureName: The name of the resource in Azure. This is often the same as the name of the resource in Kubernetes but it + // doesn't have to be. + AzureName string `json:"azureName,omitempty"` + + // Credentials: Backend Credentials Contract Properties + Credentials *BackendCredentialsContract `json:"credentials,omitempty"` + + // +kubebuilder:validation:MaxLength=2000 + // +kubebuilder:validation:MinLength=1 + // Description: Backend Description. + Description *string `json:"description,omitempty"` + + // +kubebuilder:validation:Required + // Owner: The owner of the resource. The owner controls where the resource goes when it is deployed. The owner also + // controls the resources lifecycle. When the owner is deleted the resource will also be deleted. Owner is expected to be a + // reference to a apimanagement.azure.com/Service resource + Owner *genruntime.KnownResourceReference `group:"apimanagement.azure.com" json:"owner,omitempty" kind:"Service"` + + // Properties: Backend Properties contract + Properties *BackendProperties `json:"properties,omitempty"` + + // +kubebuilder:validation:Required + // Protocol: Backend communication protocol. + Protocol *BackendContractProperties_Protocol `json:"protocol,omitempty"` + + // Proxy: Backend gateway Contract Properties + Proxy *BackendProxyContract `json:"proxy,omitempty"` + + // ResourceReference: Management Uri of the Resource in External System. This URL can be the Arm Resource Id of Logic Apps, + // Function Apps or API Apps. + ResourceReference *genruntime.ResourceReference `armReference:"ResourceId" json:"resourceReference,omitempty"` + + // +kubebuilder:validation:MaxLength=300 + // +kubebuilder:validation:MinLength=1 + // Title: Backend Title. + Title *string `json:"title,omitempty"` + + // Tls: Backend TLS Properties + Tls *BackendTlsProperties `json:"tls,omitempty"` + + // +kubebuilder:validation:Required + // +kubebuilder:validation:MaxLength=2000 + // +kubebuilder:validation:MinLength=1 + // Url: Runtime Url of the Backend. + Url *string `json:"url,omitempty"` +} + +var _ genruntime.ARMTransformer = &Service_Backend_Spec{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (backend *Service_Backend_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if backend == nil { + return nil, nil + } + result := &Service_Backend_Spec_ARM{} + + // Set property "Name": + result.Name = resolved.Name + + // Set property "Properties": + if backend.Credentials != nil || + backend.Description != nil || + backend.Properties != nil || + backend.Protocol != nil || + backend.Proxy != nil || + backend.ResourceReference != nil || + backend.Title != nil || + backend.Tls != nil || + backend.Url != nil { + result.Properties = &BackendContractProperties_ARM{} + } + if backend.Credentials != nil { + credentials_ARM, err := (*backend.Credentials).ConvertToARM(resolved) + if err != nil { + return nil, err + } + credentials := *credentials_ARM.(*BackendCredentialsContract_ARM) + result.Properties.Credentials = &credentials + } + if backend.Description != nil { + description := *backend.Description + result.Properties.Description = &description + } + if backend.Properties != nil { + properties_ARM, err := (*backend.Properties).ConvertToARM(resolved) + if err != nil { + return nil, err + } + properties := *properties_ARM.(*BackendProperties_ARM) + result.Properties.Properties = &properties + } + if backend.Protocol != nil { + protocol := *backend.Protocol + result.Properties.Protocol = &protocol + } + if backend.Proxy != nil { + proxy_ARM, err := (*backend.Proxy).ConvertToARM(resolved) + if err != nil { + return nil, err + } + proxy := *proxy_ARM.(*BackendProxyContract_ARM) + result.Properties.Proxy = &proxy + } + if backend.ResourceReference != nil { + resourceIdARMID, err := resolved.ResolvedReferences.Lookup(*backend.ResourceReference) + if err != nil { + return nil, err + } + resourceId := resourceIdARMID + result.Properties.ResourceId = &resourceId + } + if backend.Title != nil { + title := *backend.Title + result.Properties.Title = &title + } + if backend.Tls != nil { + tls_ARM, err := (*backend.Tls).ConvertToARM(resolved) + if err != nil { + return nil, err + } + tls := *tls_ARM.(*BackendTlsProperties_ARM) + result.Properties.Tls = &tls + } + if backend.Url != nil { + url := *backend.Url + result.Properties.Url = &url + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (backend *Service_Backend_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Service_Backend_Spec_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (backend *Service_Backend_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Service_Backend_Spec_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Service_Backend_Spec_ARM, got %T", armInput) + } + + // Set property "AzureName": + backend.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name)) + + // Set property "Credentials": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Credentials != nil { + var credentials1 BackendCredentialsContract + err := credentials1.PopulateFromARM(owner, *typedInput.Properties.Credentials) + if err != nil { + return err + } + credentials := credentials1 + backend.Credentials = &credentials + } + } + + // Set property "Description": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Description != nil { + description := *typedInput.Properties.Description + backend.Description = &description + } + } + + // Set property "Owner": + backend.Owner = &genruntime.KnownResourceReference{ + Name: owner.Name, + ARMID: owner.ARMID, + } + + // Set property "Properties": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Properties != nil { + var properties1 BackendProperties + err := properties1.PopulateFromARM(owner, *typedInput.Properties.Properties) + if err != nil { + return err + } + properties := properties1 + backend.Properties = &properties + } + } + + // Set property "Protocol": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Protocol != nil { + protocol := *typedInput.Properties.Protocol + backend.Protocol = &protocol + } + } + + // Set property "Proxy": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Proxy != nil { + var proxy1 BackendProxyContract + err := proxy1.PopulateFromARM(owner, *typedInput.Properties.Proxy) + if err != nil { + return err + } + proxy := proxy1 + backend.Proxy = &proxy + } + } + + // no assignment for property "ResourceReference" + + // Set property "Title": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Title != nil { + title := *typedInput.Properties.Title + backend.Title = &title + } + } + + // Set property "Tls": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Tls != nil { + var tls1 BackendTlsProperties + err := tls1.PopulateFromARM(owner, *typedInput.Properties.Tls) + if err != nil { + return err + } + tls := tls1 + backend.Tls = &tls + } + } + + // Set property "Url": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Url != nil { + url := *typedInput.Properties.Url + backend.Url = &url + } + } + + // No error + return nil +} + +var _ genruntime.ConvertibleSpec = &Service_Backend_Spec{} + +// ConvertSpecFrom populates our Service_Backend_Spec from the provided source +func (backend *Service_Backend_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20220801s.Service_Backend_Spec) + if ok { + // Populate our instance from source + return backend.AssignProperties_From_Service_Backend_Spec(src) + } + + // Convert to an intermediate form + src = &v20220801s.Service_Backend_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = backend.AssignProperties_From_Service_Backend_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our Service_Backend_Spec +func (backend *Service_Backend_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20220801s.Service_Backend_Spec) + if ok { + // Populate destination from our instance + return backend.AssignProperties_To_Service_Backend_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20220801s.Service_Backend_Spec{} + err := backend.AssignProperties_To_Service_Backend_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_Service_Backend_Spec populates our Service_Backend_Spec from the provided source Service_Backend_Spec +func (backend *Service_Backend_Spec) AssignProperties_From_Service_Backend_Spec(source *v20220801s.Service_Backend_Spec) error { + + // AzureName + backend.AzureName = source.AzureName + + // Credentials + if source.Credentials != nil { + var credential BackendCredentialsContract + err := credential.AssignProperties_From_BackendCredentialsContract(source.Credentials) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendCredentialsContract() to populate field Credentials") + } + backend.Credentials = &credential + } else { + backend.Credentials = nil + } + + // Description + if source.Description != nil { + description := *source.Description + backend.Description = &description + } else { + backend.Description = nil + } + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + backend.Owner = &owner + } else { + backend.Owner = nil + } + + // Properties + if source.Properties != nil { + var property BackendProperties + err := property.AssignProperties_From_BackendProperties(source.Properties) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendProperties() to populate field Properties") + } + backend.Properties = &property + } else { + backend.Properties = nil + } + + // Protocol + if source.Protocol != nil { + protocol := BackendContractProperties_Protocol(*source.Protocol) + backend.Protocol = &protocol + } else { + backend.Protocol = nil + } + + // Proxy + if source.Proxy != nil { + var proxy BackendProxyContract + err := proxy.AssignProperties_From_BackendProxyContract(source.Proxy) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendProxyContract() to populate field Proxy") + } + backend.Proxy = &proxy + } else { + backend.Proxy = nil + } + + // ResourceReference + if source.ResourceReference != nil { + resourceReference := source.ResourceReference.Copy() + backend.ResourceReference = &resourceReference + } else { + backend.ResourceReference = nil + } + + // Title + if source.Title != nil { + title := *source.Title + backend.Title = &title + } else { + backend.Title = nil + } + + // Tls + if source.Tls != nil { + var tl BackendTlsProperties + err := tl.AssignProperties_From_BackendTlsProperties(source.Tls) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendTlsProperties() to populate field Tls") + } + backend.Tls = &tl + } else { + backend.Tls = nil + } + + // Url + if source.Url != nil { + url := *source.Url + backend.Url = &url + } else { + backend.Url = nil + } + + // No error + return nil +} + +// AssignProperties_To_Service_Backend_Spec populates the provided destination Service_Backend_Spec from our Service_Backend_Spec +func (backend *Service_Backend_Spec) AssignProperties_To_Service_Backend_Spec(destination *v20220801s.Service_Backend_Spec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AzureName + destination.AzureName = backend.AzureName + + // Credentials + if backend.Credentials != nil { + var credential v20220801s.BackendCredentialsContract + err := backend.Credentials.AssignProperties_To_BackendCredentialsContract(&credential) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendCredentialsContract() to populate field Credentials") + } + destination.Credentials = &credential + } else { + destination.Credentials = nil + } + + // Description + if backend.Description != nil { + description := *backend.Description + destination.Description = &description + } else { + destination.Description = nil + } + + // OriginalVersion + destination.OriginalVersion = backend.OriginalVersion() + + // Owner + if backend.Owner != nil { + owner := backend.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // Properties + if backend.Properties != nil { + var property v20220801s.BackendProperties + err := backend.Properties.AssignProperties_To_BackendProperties(&property) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendProperties() to populate field Properties") + } + destination.Properties = &property + } else { + destination.Properties = nil + } + + // Protocol + if backend.Protocol != nil { + protocol := string(*backend.Protocol) + destination.Protocol = &protocol + } else { + destination.Protocol = nil + } + + // Proxy + if backend.Proxy != nil { + var proxy v20220801s.BackendProxyContract + err := backend.Proxy.AssignProperties_To_BackendProxyContract(&proxy) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendProxyContract() to populate field Proxy") + } + destination.Proxy = &proxy + } else { + destination.Proxy = nil + } + + // ResourceReference + if backend.ResourceReference != nil { + resourceReference := backend.ResourceReference.Copy() + destination.ResourceReference = &resourceReference + } else { + destination.ResourceReference = nil + } + + // Title + if backend.Title != nil { + title := *backend.Title + destination.Title = &title + } else { + destination.Title = nil + } + + // Tls + if backend.Tls != nil { + var tl v20220801s.BackendTlsProperties + err := backend.Tls.AssignProperties_To_BackendTlsProperties(&tl) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendTlsProperties() to populate field Tls") + } + destination.Tls = &tl + } else { + destination.Tls = nil + } + + // Url + if backend.Url != nil { + url := *backend.Url + destination.Url = &url + } else { + destination.Url = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_Service_Backend_STATUS populates our Service_Backend_Spec from the provided source Service_Backend_STATUS +func (backend *Service_Backend_Spec) Initialize_From_Service_Backend_STATUS(source *Service_Backend_STATUS) error { + + // Credentials + if source.Credentials != nil { + var credential BackendCredentialsContract + err := credential.Initialize_From_BackendCredentialsContract_STATUS(source.Credentials) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_BackendCredentialsContract_STATUS() to populate field Credentials") + } + backend.Credentials = &credential + } else { + backend.Credentials = nil + } + + // Description + if source.Description != nil { + description := *source.Description + backend.Description = &description + } else { + backend.Description = nil + } + + // Properties + if source.Properties != nil { + var property BackendProperties + err := property.Initialize_From_BackendProperties_STATUS(source.Properties) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_BackendProperties_STATUS() to populate field Properties") + } + backend.Properties = &property + } else { + backend.Properties = nil + } + + // Protocol + if source.Protocol != nil { + protocol := BackendContractProperties_Protocol(*source.Protocol) + backend.Protocol = &protocol + } else { + backend.Protocol = nil + } + + // Proxy + if source.Proxy != nil { + var proxy BackendProxyContract + err := proxy.Initialize_From_BackendProxyContract_STATUS(source.Proxy) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_BackendProxyContract_STATUS() to populate field Proxy") + } + backend.Proxy = &proxy + } else { + backend.Proxy = nil + } + + // ResourceReference + if source.ResourceId != nil { + resourceReference := genruntime.CreateResourceReferenceFromARMID(*source.ResourceId) + backend.ResourceReference = &resourceReference + } else { + backend.ResourceReference = nil + } + + // Title + if source.Title != nil { + title := *source.Title + backend.Title = &title + } else { + backend.Title = nil + } + + // Tls + if source.Tls != nil { + var tl BackendTlsProperties + err := tl.Initialize_From_BackendTlsProperties_STATUS(source.Tls) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_BackendTlsProperties_STATUS() to populate field Tls") + } + backend.Tls = &tl + } else { + backend.Tls = nil + } + + // Url + if source.Url != nil { + url := *source.Url + backend.Url = &url + } else { + backend.Url = nil + } + + // No error + return nil +} + +// OriginalVersion returns the original API version used to create the resource. +func (backend *Service_Backend_Spec) OriginalVersion() string { + return GroupVersion.Version +} + +// SetAzureName sets the Azure name of the resource +func (backend *Service_Backend_Spec) SetAzureName(azureName string) { backend.AzureName = azureName } + +type Service_Backend_STATUS struct { + // Conditions: The observed state of the resource + Conditions []conditions.Condition `json:"conditions,omitempty"` + + // Credentials: Backend Credentials Contract Properties + Credentials *BackendCredentialsContract_STATUS `json:"credentials,omitempty"` + + // Description: Backend Description. + Description *string `json:"description,omitempty"` + + // Id: Fully qualified resource ID for the resource. Ex - + // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + Id *string `json:"id,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // Properties: Backend Properties contract + Properties *BackendProperties_STATUS `json:"properties,omitempty"` + + // Protocol: Backend communication protocol. + Protocol *BackendContractProperties_Protocol_STATUS `json:"protocol,omitempty"` + + // Proxy: Backend gateway Contract Properties + Proxy *BackendProxyContract_STATUS `json:"proxy,omitempty"` + + // ResourceId: Management Uri of the Resource in External System. This URL can be the Arm Resource Id of Logic Apps, + // Function Apps or API Apps. + ResourceId *string `json:"resourceId,omitempty"` + + // Title: Backend Title. + Title *string `json:"title,omitempty"` + + // Tls: Backend TLS Properties + Tls *BackendTlsProperties_STATUS `json:"tls,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` + + // Url: Runtime Url of the Backend. + Url *string `json:"url,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &Service_Backend_STATUS{} + +// ConvertStatusFrom populates our Service_Backend_STATUS from the provided source +func (backend *Service_Backend_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20220801s.Service_Backend_STATUS) + if ok { + // Populate our instance from source + return backend.AssignProperties_From_Service_Backend_STATUS(src) + } + + // Convert to an intermediate form + src = &v20220801s.Service_Backend_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = backend.AssignProperties_From_Service_Backend_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our Service_Backend_STATUS +func (backend *Service_Backend_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20220801s.Service_Backend_STATUS) + if ok { + // Populate destination from our instance + return backend.AssignProperties_To_Service_Backend_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20220801s.Service_Backend_STATUS{} + err := backend.AssignProperties_To_Service_Backend_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +var _ genruntime.FromARMConverter = &Service_Backend_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (backend *Service_Backend_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Service_Backend_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (backend *Service_Backend_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Service_Backend_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Service_Backend_STATUS_ARM, got %T", armInput) + } + + // no assignment for property "Conditions" + + // Set property "Credentials": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Credentials != nil { + var credentials1 BackendCredentialsContract_STATUS + err := credentials1.PopulateFromARM(owner, *typedInput.Properties.Credentials) + if err != nil { + return err + } + credentials := credentials1 + backend.Credentials = &credentials + } + } + + // Set property "Description": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Description != nil { + description := *typedInput.Properties.Description + backend.Description = &description + } + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + backend.Id = &id + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + backend.Name = &name + } + + // Set property "Properties": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Properties != nil { + var properties1 BackendProperties_STATUS + err := properties1.PopulateFromARM(owner, *typedInput.Properties.Properties) + if err != nil { + return err + } + properties := properties1 + backend.Properties = &properties + } + } + + // Set property "Protocol": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Protocol != nil { + protocol := *typedInput.Properties.Protocol + backend.Protocol = &protocol + } + } + + // Set property "Proxy": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Proxy != nil { + var proxy1 BackendProxyContract_STATUS + err := proxy1.PopulateFromARM(owner, *typedInput.Properties.Proxy) + if err != nil { + return err + } + proxy := proxy1 + backend.Proxy = &proxy + } + } + + // Set property "ResourceId": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ResourceId != nil { + resourceId := *typedInput.Properties.ResourceId + backend.ResourceId = &resourceId + } + } + + // Set property "Title": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Title != nil { + title := *typedInput.Properties.Title + backend.Title = &title + } + } + + // Set property "Tls": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Tls != nil { + var tls1 BackendTlsProperties_STATUS + err := tls1.PopulateFromARM(owner, *typedInput.Properties.Tls) + if err != nil { + return err + } + tls := tls1 + backend.Tls = &tls + } + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + backend.Type = &typeVar + } + + // Set property "Url": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Url != nil { + url := *typedInput.Properties.Url + backend.Url = &url + } + } + + // No error + return nil +} + +// AssignProperties_From_Service_Backend_STATUS populates our Service_Backend_STATUS from the provided source Service_Backend_STATUS +func (backend *Service_Backend_STATUS) AssignProperties_From_Service_Backend_STATUS(source *v20220801s.Service_Backend_STATUS) error { + + // Conditions + backend.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // Credentials + if source.Credentials != nil { + var credential BackendCredentialsContract_STATUS + err := credential.AssignProperties_From_BackendCredentialsContract_STATUS(source.Credentials) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendCredentialsContract_STATUS() to populate field Credentials") + } + backend.Credentials = &credential + } else { + backend.Credentials = nil + } + + // Description + backend.Description = genruntime.ClonePointerToString(source.Description) + + // Id + backend.Id = genruntime.ClonePointerToString(source.Id) + + // Name + backend.Name = genruntime.ClonePointerToString(source.Name) + + // Properties + if source.Properties != nil { + var property BackendProperties_STATUS + err := property.AssignProperties_From_BackendProperties_STATUS(source.Properties) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendProperties_STATUS() to populate field Properties") + } + backend.Properties = &property + } else { + backend.Properties = nil + } + + // Protocol + if source.Protocol != nil { + protocol := BackendContractProperties_Protocol_STATUS(*source.Protocol) + backend.Protocol = &protocol + } else { + backend.Protocol = nil + } + + // Proxy + if source.Proxy != nil { + var proxy BackendProxyContract_STATUS + err := proxy.AssignProperties_From_BackendProxyContract_STATUS(source.Proxy) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendProxyContract_STATUS() to populate field Proxy") + } + backend.Proxy = &proxy + } else { + backend.Proxy = nil + } + + // ResourceId + backend.ResourceId = genruntime.ClonePointerToString(source.ResourceId) + + // Title + backend.Title = genruntime.ClonePointerToString(source.Title) + + // Tls + if source.Tls != nil { + var tl BackendTlsProperties_STATUS + err := tl.AssignProperties_From_BackendTlsProperties_STATUS(source.Tls) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendTlsProperties_STATUS() to populate field Tls") + } + backend.Tls = &tl + } else { + backend.Tls = nil + } + + // Type + backend.Type = genruntime.ClonePointerToString(source.Type) + + // Url + backend.Url = genruntime.ClonePointerToString(source.Url) + + // No error + return nil +} + +// AssignProperties_To_Service_Backend_STATUS populates the provided destination Service_Backend_STATUS from our Service_Backend_STATUS +func (backend *Service_Backend_STATUS) AssignProperties_To_Service_Backend_STATUS(destination *v20220801s.Service_Backend_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(backend.Conditions) + + // Credentials + if backend.Credentials != nil { + var credential v20220801s.BackendCredentialsContract_STATUS + err := backend.Credentials.AssignProperties_To_BackendCredentialsContract_STATUS(&credential) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendCredentialsContract_STATUS() to populate field Credentials") + } + destination.Credentials = &credential + } else { + destination.Credentials = nil + } + + // Description + destination.Description = genruntime.ClonePointerToString(backend.Description) + + // Id + destination.Id = genruntime.ClonePointerToString(backend.Id) + + // Name + destination.Name = genruntime.ClonePointerToString(backend.Name) + + // Properties + if backend.Properties != nil { + var property v20220801s.BackendProperties_STATUS + err := backend.Properties.AssignProperties_To_BackendProperties_STATUS(&property) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendProperties_STATUS() to populate field Properties") + } + destination.Properties = &property + } else { + destination.Properties = nil + } + + // Protocol + if backend.Protocol != nil { + protocol := string(*backend.Protocol) + destination.Protocol = &protocol + } else { + destination.Protocol = nil + } + + // Proxy + if backend.Proxy != nil { + var proxy v20220801s.BackendProxyContract_STATUS + err := backend.Proxy.AssignProperties_To_BackendProxyContract_STATUS(&proxy) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendProxyContract_STATUS() to populate field Proxy") + } + destination.Proxy = &proxy + } else { + destination.Proxy = nil + } + + // ResourceId + destination.ResourceId = genruntime.ClonePointerToString(backend.ResourceId) + + // Title + destination.Title = genruntime.ClonePointerToString(backend.Title) + + // Tls + if backend.Tls != nil { + var tl v20220801s.BackendTlsProperties_STATUS + err := backend.Tls.AssignProperties_To_BackendTlsProperties_STATUS(&tl) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendTlsProperties_STATUS() to populate field Tls") + } + destination.Tls = &tl + } else { + destination.Tls = nil + } + + // Type + destination.Type = genruntime.ClonePointerToString(backend.Type) + + // Url + destination.Url = genruntime.ClonePointerToString(backend.Url) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// +kubebuilder:validation:Enum={"http","soap"} +type BackendContractProperties_Protocol string + +const ( + BackendContractProperties_Protocol_Http = BackendContractProperties_Protocol("http") + BackendContractProperties_Protocol_Soap = BackendContractProperties_Protocol("soap") +) + +type BackendContractProperties_Protocol_STATUS string + +const ( + BackendContractProperties_Protocol_STATUS_Http = BackendContractProperties_Protocol_STATUS("http") + BackendContractProperties_Protocol_STATUS_Soap = BackendContractProperties_Protocol_STATUS("soap") +) + +// Details of the Credentials used to connect to Backend. +type BackendCredentialsContract struct { + // Authorization: Authorization header authentication + Authorization *BackendAuthorizationHeaderCredentials `json:"authorization,omitempty"` + + // +kubebuilder:validation:MaxItems=32 + // Certificate: List of Client Certificate Thumbprints. Will be ignored if certificatesIds are provided. + Certificate []string `json:"certificate,omitempty"` + + // +kubebuilder:validation:MaxItems=32 + // CertificateIds: List of Client Certificate Ids. + CertificateIds []string `json:"certificateIds,omitempty"` + + // Header: Header Parameter description. + Header map[string][]string `json:"header,omitempty"` + + // Query: Query Parameter description. + Query map[string][]string `json:"query,omitempty"` +} + +var _ genruntime.ARMTransformer = &BackendCredentialsContract{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (contract *BackendCredentialsContract) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if contract == nil { + return nil, nil + } + result := &BackendCredentialsContract_ARM{} + + // Set property "Authorization": + if contract.Authorization != nil { + authorization_ARM, err := (*contract.Authorization).ConvertToARM(resolved) + if err != nil { + return nil, err + } + authorization := *authorization_ARM.(*BackendAuthorizationHeaderCredentials_ARM) + result.Authorization = &authorization + } + + // Set property "Certificate": + for _, item := range contract.Certificate { + result.Certificate = append(result.Certificate, item) + } + + // Set property "CertificateIds": + for _, item := range contract.CertificateIds { + result.CertificateIds = append(result.CertificateIds, item) + } + + // Set property "Header": + if contract.Header != nil { + result.Header = make(map[string][]string, len(contract.Header)) + for key, value := range contract.Header { + var valueTemp []string + for _, item := range value { + valueTemp = append(valueTemp, item) + } + result.Header[key] = valueTemp + } + } + + // Set property "Query": + if contract.Query != nil { + result.Query = make(map[string][]string, len(contract.Query)) + for key, value := range contract.Query { + var valueTemp []string + for _, item := range value { + valueTemp = append(valueTemp, item) + } + result.Query[key] = valueTemp + } + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (contract *BackendCredentialsContract) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendCredentialsContract_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (contract *BackendCredentialsContract) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendCredentialsContract_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendCredentialsContract_ARM, got %T", armInput) + } + + // Set property "Authorization": + if typedInput.Authorization != nil { + var authorization1 BackendAuthorizationHeaderCredentials + err := authorization1.PopulateFromARM(owner, *typedInput.Authorization) + if err != nil { + return err + } + authorization := authorization1 + contract.Authorization = &authorization + } + + // Set property "Certificate": + for _, item := range typedInput.Certificate { + contract.Certificate = append(contract.Certificate, item) + } + + // Set property "CertificateIds": + for _, item := range typedInput.CertificateIds { + contract.CertificateIds = append(contract.CertificateIds, item) + } + + // Set property "Header": + if typedInput.Header != nil { + contract.Header = make(map[string][]string, len(typedInput.Header)) + for key, value := range typedInput.Header { + var valueTemp []string + for _, item := range value { + valueTemp = append(valueTemp, item) + } + contract.Header[key] = valueTemp + } + } + + // Set property "Query": + if typedInput.Query != nil { + contract.Query = make(map[string][]string, len(typedInput.Query)) + for key, value := range typedInput.Query { + var valueTemp []string + for _, item := range value { + valueTemp = append(valueTemp, item) + } + contract.Query[key] = valueTemp + } + } + + // No error + return nil +} + +// AssignProperties_From_BackendCredentialsContract populates our BackendCredentialsContract from the provided source BackendCredentialsContract +func (contract *BackendCredentialsContract) AssignProperties_From_BackendCredentialsContract(source *v20220801s.BackendCredentialsContract) error { + + // Authorization + if source.Authorization != nil { + var authorization BackendAuthorizationHeaderCredentials + err := authorization.AssignProperties_From_BackendAuthorizationHeaderCredentials(source.Authorization) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendAuthorizationHeaderCredentials() to populate field Authorization") + } + contract.Authorization = &authorization + } else { + contract.Authorization = nil + } + + // Certificate + if source.Certificate != nil { + certificateList := make([]string, len(source.Certificate)) + for certificateIndex, certificateItem := range source.Certificate { + // Shadow the loop variable to avoid aliasing + certificateItem := certificateItem + certificateList[certificateIndex] = certificateItem + } + contract.Certificate = certificateList + } else { + contract.Certificate = nil + } + + // CertificateIds + if source.CertificateIds != nil { + certificateIdList := make([]string, len(source.CertificateIds)) + for certificateIdIndex, certificateIdItem := range source.CertificateIds { + // Shadow the loop variable to avoid aliasing + certificateIdItem := certificateIdItem + certificateIdList[certificateIdIndex] = certificateIdItem + } + contract.CertificateIds = certificateIdList + } else { + contract.CertificateIds = nil + } + + // Header + if source.Header != nil { + headerMap := make(map[string][]string, len(source.Header)) + for headerKey, headerValue := range source.Header { + // Shadow the loop variable to avoid aliasing + headerValue := headerValue + headerMap[headerKey] = genruntime.CloneSliceOfString(headerValue) + } + contract.Header = headerMap + } else { + contract.Header = nil + } + + // Query + if source.Query != nil { + queryMap := make(map[string][]string, len(source.Query)) + for queryKey, queryValue := range source.Query { + // Shadow the loop variable to avoid aliasing + queryValue := queryValue + queryMap[queryKey] = genruntime.CloneSliceOfString(queryValue) + } + contract.Query = queryMap + } else { + contract.Query = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendCredentialsContract populates the provided destination BackendCredentialsContract from our BackendCredentialsContract +func (contract *BackendCredentialsContract) AssignProperties_To_BackendCredentialsContract(destination *v20220801s.BackendCredentialsContract) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Authorization + if contract.Authorization != nil { + var authorization v20220801s.BackendAuthorizationHeaderCredentials + err := contract.Authorization.AssignProperties_To_BackendAuthorizationHeaderCredentials(&authorization) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendAuthorizationHeaderCredentials() to populate field Authorization") + } + destination.Authorization = &authorization + } else { + destination.Authorization = nil + } + + // Certificate + if contract.Certificate != nil { + certificateList := make([]string, len(contract.Certificate)) + for certificateIndex, certificateItem := range contract.Certificate { + // Shadow the loop variable to avoid aliasing + certificateItem := certificateItem + certificateList[certificateIndex] = certificateItem + } + destination.Certificate = certificateList + } else { + destination.Certificate = nil + } + + // CertificateIds + if contract.CertificateIds != nil { + certificateIdList := make([]string, len(contract.CertificateIds)) + for certificateIdIndex, certificateIdItem := range contract.CertificateIds { + // Shadow the loop variable to avoid aliasing + certificateIdItem := certificateIdItem + certificateIdList[certificateIdIndex] = certificateIdItem + } + destination.CertificateIds = certificateIdList + } else { + destination.CertificateIds = nil + } + + // Header + if contract.Header != nil { + headerMap := make(map[string][]string, len(contract.Header)) + for headerKey, headerValue := range contract.Header { + // Shadow the loop variable to avoid aliasing + headerValue := headerValue + headerMap[headerKey] = genruntime.CloneSliceOfString(headerValue) + } + destination.Header = headerMap + } else { + destination.Header = nil + } + + // Query + if contract.Query != nil { + queryMap := make(map[string][]string, len(contract.Query)) + for queryKey, queryValue := range contract.Query { + // Shadow the loop variable to avoid aliasing + queryValue := queryValue + queryMap[queryKey] = genruntime.CloneSliceOfString(queryValue) + } + destination.Query = queryMap + } else { + destination.Query = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_BackendCredentialsContract_STATUS populates our BackendCredentialsContract from the provided source BackendCredentialsContract_STATUS +func (contract *BackendCredentialsContract) Initialize_From_BackendCredentialsContract_STATUS(source *BackendCredentialsContract_STATUS) error { + + // Authorization + if source.Authorization != nil { + var authorization BackendAuthorizationHeaderCredentials + err := authorization.Initialize_From_BackendAuthorizationHeaderCredentials_STATUS(source.Authorization) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_BackendAuthorizationHeaderCredentials_STATUS() to populate field Authorization") + } + contract.Authorization = &authorization + } else { + contract.Authorization = nil + } + + // Certificate + if source.Certificate != nil { + certificateList := make([]string, len(source.Certificate)) + for certificateIndex, certificateItem := range source.Certificate { + // Shadow the loop variable to avoid aliasing + certificateItem := certificateItem + certificateList[certificateIndex] = certificateItem + } + contract.Certificate = certificateList + } else { + contract.Certificate = nil + } + + // CertificateIds + if source.CertificateIds != nil { + certificateIdList := make([]string, len(source.CertificateIds)) + for certificateIdIndex, certificateIdItem := range source.CertificateIds { + // Shadow the loop variable to avoid aliasing + certificateIdItem := certificateIdItem + certificateIdList[certificateIdIndex] = certificateIdItem + } + contract.CertificateIds = certificateIdList + } else { + contract.CertificateIds = nil + } + + // Header + if source.Header != nil { + headerMap := make(map[string][]string, len(source.Header)) + for headerKey, headerValue := range source.Header { + // Shadow the loop variable to avoid aliasing + headerValue := headerValue + headerMap[headerKey] = genruntime.CloneSliceOfString(headerValue) + } + contract.Header = headerMap + } else { + contract.Header = nil + } + + // Query + if source.Query != nil { + queryMap := make(map[string][]string, len(source.Query)) + for queryKey, queryValue := range source.Query { + // Shadow the loop variable to avoid aliasing + queryValue := queryValue + queryMap[queryKey] = genruntime.CloneSliceOfString(queryValue) + } + contract.Query = queryMap + } else { + contract.Query = nil + } + + // No error + return nil +} + +// Details of the Credentials used to connect to Backend. +type BackendCredentialsContract_STATUS struct { + // Authorization: Authorization header authentication + Authorization *BackendAuthorizationHeaderCredentials_STATUS `json:"authorization,omitempty"` + + // Certificate: List of Client Certificate Thumbprints. Will be ignored if certificatesIds are provided. + Certificate []string `json:"certificate,omitempty"` + + // CertificateIds: List of Client Certificate Ids. + CertificateIds []string `json:"certificateIds,omitempty"` + + // Header: Header Parameter description. + Header map[string][]string `json:"header,omitempty"` + + // Query: Query Parameter description. + Query map[string][]string `json:"query,omitempty"` +} + +var _ genruntime.FromARMConverter = &BackendCredentialsContract_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (contract *BackendCredentialsContract_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendCredentialsContract_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (contract *BackendCredentialsContract_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendCredentialsContract_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendCredentialsContract_STATUS_ARM, got %T", armInput) + } + + // Set property "Authorization": + if typedInput.Authorization != nil { + var authorization1 BackendAuthorizationHeaderCredentials_STATUS + err := authorization1.PopulateFromARM(owner, *typedInput.Authorization) + if err != nil { + return err + } + authorization := authorization1 + contract.Authorization = &authorization + } + + // Set property "Certificate": + for _, item := range typedInput.Certificate { + contract.Certificate = append(contract.Certificate, item) + } + + // Set property "CertificateIds": + for _, item := range typedInput.CertificateIds { + contract.CertificateIds = append(contract.CertificateIds, item) + } + + // Set property "Header": + if typedInput.Header != nil { + contract.Header = make(map[string][]string, len(typedInput.Header)) + for key, value := range typedInput.Header { + var valueTemp []string + for _, item := range value { + valueTemp = append(valueTemp, item) + } + contract.Header[key] = valueTemp + } + } + + // Set property "Query": + if typedInput.Query != nil { + contract.Query = make(map[string][]string, len(typedInput.Query)) + for key, value := range typedInput.Query { + var valueTemp []string + for _, item := range value { + valueTemp = append(valueTemp, item) + } + contract.Query[key] = valueTemp + } + } + + // No error + return nil +} + +// AssignProperties_From_BackendCredentialsContract_STATUS populates our BackendCredentialsContract_STATUS from the provided source BackendCredentialsContract_STATUS +func (contract *BackendCredentialsContract_STATUS) AssignProperties_From_BackendCredentialsContract_STATUS(source *v20220801s.BackendCredentialsContract_STATUS) error { + + // Authorization + if source.Authorization != nil { + var authorization BackendAuthorizationHeaderCredentials_STATUS + err := authorization.AssignProperties_From_BackendAuthorizationHeaderCredentials_STATUS(source.Authorization) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendAuthorizationHeaderCredentials_STATUS() to populate field Authorization") + } + contract.Authorization = &authorization + } else { + contract.Authorization = nil + } + + // Certificate + contract.Certificate = genruntime.CloneSliceOfString(source.Certificate) + + // CertificateIds + contract.CertificateIds = genruntime.CloneSliceOfString(source.CertificateIds) + + // Header + if source.Header != nil { + headerMap := make(map[string][]string, len(source.Header)) + for headerKey, headerValue := range source.Header { + // Shadow the loop variable to avoid aliasing + headerValue := headerValue + headerMap[headerKey] = genruntime.CloneSliceOfString(headerValue) + } + contract.Header = headerMap + } else { + contract.Header = nil + } + + // Query + if source.Query != nil { + queryMap := make(map[string][]string, len(source.Query)) + for queryKey, queryValue := range source.Query { + // Shadow the loop variable to avoid aliasing + queryValue := queryValue + queryMap[queryKey] = genruntime.CloneSliceOfString(queryValue) + } + contract.Query = queryMap + } else { + contract.Query = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendCredentialsContract_STATUS populates the provided destination BackendCredentialsContract_STATUS from our BackendCredentialsContract_STATUS +func (contract *BackendCredentialsContract_STATUS) AssignProperties_To_BackendCredentialsContract_STATUS(destination *v20220801s.BackendCredentialsContract_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Authorization + if contract.Authorization != nil { + var authorization v20220801s.BackendAuthorizationHeaderCredentials_STATUS + err := contract.Authorization.AssignProperties_To_BackendAuthorizationHeaderCredentials_STATUS(&authorization) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendAuthorizationHeaderCredentials_STATUS() to populate field Authorization") + } + destination.Authorization = &authorization + } else { + destination.Authorization = nil + } + + // Certificate + destination.Certificate = genruntime.CloneSliceOfString(contract.Certificate) + + // CertificateIds + destination.CertificateIds = genruntime.CloneSliceOfString(contract.CertificateIds) + + // Header + if contract.Header != nil { + headerMap := make(map[string][]string, len(contract.Header)) + for headerKey, headerValue := range contract.Header { + // Shadow the loop variable to avoid aliasing + headerValue := headerValue + headerMap[headerKey] = genruntime.CloneSliceOfString(headerValue) + } + destination.Header = headerMap + } else { + destination.Header = nil + } + + // Query + if contract.Query != nil { + queryMap := make(map[string][]string, len(contract.Query)) + for queryKey, queryValue := range contract.Query { + // Shadow the loop variable to avoid aliasing + queryValue := queryValue + queryMap[queryKey] = genruntime.CloneSliceOfString(queryValue) + } + destination.Query = queryMap + } else { + destination.Query = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Properties specific to the Backend Type. +type BackendProperties struct { + // ServiceFabricCluster: Backend Service Fabric Cluster Properties + ServiceFabricCluster *BackendServiceFabricClusterProperties `json:"serviceFabricCluster,omitempty"` +} + +var _ genruntime.ARMTransformer = &BackendProperties{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (properties *BackendProperties) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if properties == nil { + return nil, nil + } + result := &BackendProperties_ARM{} + + // Set property "ServiceFabricCluster": + if properties.ServiceFabricCluster != nil { + serviceFabricCluster_ARM, err := (*properties.ServiceFabricCluster).ConvertToARM(resolved) + if err != nil { + return nil, err + } + serviceFabricCluster := *serviceFabricCluster_ARM.(*BackendServiceFabricClusterProperties_ARM) + result.ServiceFabricCluster = &serviceFabricCluster + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *BackendProperties) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendProperties_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *BackendProperties) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendProperties_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendProperties_ARM, got %T", armInput) + } + + // Set property "ServiceFabricCluster": + if typedInput.ServiceFabricCluster != nil { + var serviceFabricCluster1 BackendServiceFabricClusterProperties + err := serviceFabricCluster1.PopulateFromARM(owner, *typedInput.ServiceFabricCluster) + if err != nil { + return err + } + serviceFabricCluster := serviceFabricCluster1 + properties.ServiceFabricCluster = &serviceFabricCluster + } + + // No error + return nil +} + +// AssignProperties_From_BackendProperties populates our BackendProperties from the provided source BackendProperties +func (properties *BackendProperties) AssignProperties_From_BackendProperties(source *v20220801s.BackendProperties) error { + + // ServiceFabricCluster + if source.ServiceFabricCluster != nil { + var serviceFabricCluster BackendServiceFabricClusterProperties + err := serviceFabricCluster.AssignProperties_From_BackendServiceFabricClusterProperties(source.ServiceFabricCluster) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendServiceFabricClusterProperties() to populate field ServiceFabricCluster") + } + properties.ServiceFabricCluster = &serviceFabricCluster + } else { + properties.ServiceFabricCluster = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendProperties populates the provided destination BackendProperties from our BackendProperties +func (properties *BackendProperties) AssignProperties_To_BackendProperties(destination *v20220801s.BackendProperties) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ServiceFabricCluster + if properties.ServiceFabricCluster != nil { + var serviceFabricCluster v20220801s.BackendServiceFabricClusterProperties + err := properties.ServiceFabricCluster.AssignProperties_To_BackendServiceFabricClusterProperties(&serviceFabricCluster) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendServiceFabricClusterProperties() to populate field ServiceFabricCluster") + } + destination.ServiceFabricCluster = &serviceFabricCluster + } else { + destination.ServiceFabricCluster = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_BackendProperties_STATUS populates our BackendProperties from the provided source BackendProperties_STATUS +func (properties *BackendProperties) Initialize_From_BackendProperties_STATUS(source *BackendProperties_STATUS) error { + + // ServiceFabricCluster + if source.ServiceFabricCluster != nil { + var serviceFabricCluster BackendServiceFabricClusterProperties + err := serviceFabricCluster.Initialize_From_BackendServiceFabricClusterProperties_STATUS(source.ServiceFabricCluster) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_BackendServiceFabricClusterProperties_STATUS() to populate field ServiceFabricCluster") + } + properties.ServiceFabricCluster = &serviceFabricCluster + } else { + properties.ServiceFabricCluster = nil + } + + // No error + return nil +} + +// Properties specific to the Backend Type. +type BackendProperties_STATUS struct { + // ServiceFabricCluster: Backend Service Fabric Cluster Properties + ServiceFabricCluster *BackendServiceFabricClusterProperties_STATUS `json:"serviceFabricCluster,omitempty"` +} + +var _ genruntime.FromARMConverter = &BackendProperties_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *BackendProperties_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendProperties_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *BackendProperties_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendProperties_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendProperties_STATUS_ARM, got %T", armInput) + } + + // Set property "ServiceFabricCluster": + if typedInput.ServiceFabricCluster != nil { + var serviceFabricCluster1 BackendServiceFabricClusterProperties_STATUS + err := serviceFabricCluster1.PopulateFromARM(owner, *typedInput.ServiceFabricCluster) + if err != nil { + return err + } + serviceFabricCluster := serviceFabricCluster1 + properties.ServiceFabricCluster = &serviceFabricCluster + } + + // No error + return nil +} + +// AssignProperties_From_BackendProperties_STATUS populates our BackendProperties_STATUS from the provided source BackendProperties_STATUS +func (properties *BackendProperties_STATUS) AssignProperties_From_BackendProperties_STATUS(source *v20220801s.BackendProperties_STATUS) error { + + // ServiceFabricCluster + if source.ServiceFabricCluster != nil { + var serviceFabricCluster BackendServiceFabricClusterProperties_STATUS + err := serviceFabricCluster.AssignProperties_From_BackendServiceFabricClusterProperties_STATUS(source.ServiceFabricCluster) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_BackendServiceFabricClusterProperties_STATUS() to populate field ServiceFabricCluster") + } + properties.ServiceFabricCluster = &serviceFabricCluster + } else { + properties.ServiceFabricCluster = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendProperties_STATUS populates the provided destination BackendProperties_STATUS from our BackendProperties_STATUS +func (properties *BackendProperties_STATUS) AssignProperties_To_BackendProperties_STATUS(destination *v20220801s.BackendProperties_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ServiceFabricCluster + if properties.ServiceFabricCluster != nil { + var serviceFabricCluster v20220801s.BackendServiceFabricClusterProperties_STATUS + err := properties.ServiceFabricCluster.AssignProperties_To_BackendServiceFabricClusterProperties_STATUS(&serviceFabricCluster) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_BackendServiceFabricClusterProperties_STATUS() to populate field ServiceFabricCluster") + } + destination.ServiceFabricCluster = &serviceFabricCluster + } else { + destination.ServiceFabricCluster = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Details of the Backend WebProxy Server to use in the Request to Backend. +type BackendProxyContract struct { + // Password: Password to connect to the WebProxy Server + Password *genruntime.SecretReference `json:"password,omitempty"` + + // +kubebuilder:validation:Required + // +kubebuilder:validation:MaxLength=2000 + // +kubebuilder:validation:MinLength=1 + // Url: WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all + // fragments and query strings. + Url *string `json:"url,omitempty"` + + // Username: Username to connect to the WebProxy server + Username *string `json:"username,omitempty"` +} + +var _ genruntime.ARMTransformer = &BackendProxyContract{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (contract *BackendProxyContract) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if contract == nil { + return nil, nil + } + result := &BackendProxyContract_ARM{} + + // Set property "Password": + if contract.Password != nil { + passwordSecret, err := resolved.ResolvedSecrets.Lookup(*contract.Password) + if err != nil { + return nil, errors.Wrap(err, "looking up secret for property Password") + } + password := passwordSecret + result.Password = &password + } + + // Set property "Url": + if contract.Url != nil { + url := *contract.Url + result.Url = &url + } + + // Set property "Username": + if contract.Username != nil { + username := *contract.Username + result.Username = &username + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (contract *BackendProxyContract) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendProxyContract_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (contract *BackendProxyContract) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendProxyContract_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendProxyContract_ARM, got %T", armInput) + } + + // no assignment for property "Password" + + // Set property "Url": + if typedInput.Url != nil { + url := *typedInput.Url + contract.Url = &url + } + + // Set property "Username": + if typedInput.Username != nil { + username := *typedInput.Username + contract.Username = &username + } + + // No error + return nil +} + +// AssignProperties_From_BackendProxyContract populates our BackendProxyContract from the provided source BackendProxyContract +func (contract *BackendProxyContract) AssignProperties_From_BackendProxyContract(source *v20220801s.BackendProxyContract) error { + + // Password + if source.Password != nil { + password := source.Password.Copy() + contract.Password = &password + } else { + contract.Password = nil + } + + // Url + if source.Url != nil { + url := *source.Url + contract.Url = &url + } else { + contract.Url = nil + } + + // Username + contract.Username = genruntime.ClonePointerToString(source.Username) + + // No error + return nil +} + +// AssignProperties_To_BackendProxyContract populates the provided destination BackendProxyContract from our BackendProxyContract +func (contract *BackendProxyContract) AssignProperties_To_BackendProxyContract(destination *v20220801s.BackendProxyContract) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Password + if contract.Password != nil { + password := contract.Password.Copy() + destination.Password = &password + } else { + destination.Password = nil + } + + // Url + if contract.Url != nil { + url := *contract.Url + destination.Url = &url + } else { + destination.Url = nil + } + + // Username + destination.Username = genruntime.ClonePointerToString(contract.Username) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_BackendProxyContract_STATUS populates our BackendProxyContract from the provided source BackendProxyContract_STATUS +func (contract *BackendProxyContract) Initialize_From_BackendProxyContract_STATUS(source *BackendProxyContract_STATUS) error { + + // Url + if source.Url != nil { + url := *source.Url + contract.Url = &url + } else { + contract.Url = nil + } + + // Username + contract.Username = genruntime.ClonePointerToString(source.Username) + + // No error + return nil +} + +// Details of the Backend WebProxy Server to use in the Request to Backend. +type BackendProxyContract_STATUS struct { + // Url: WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all + // fragments and query strings. + Url *string `json:"url,omitempty"` + + // Username: Username to connect to the WebProxy server + Username *string `json:"username,omitempty"` +} + +var _ genruntime.FromARMConverter = &BackendProxyContract_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (contract *BackendProxyContract_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendProxyContract_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (contract *BackendProxyContract_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendProxyContract_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendProxyContract_STATUS_ARM, got %T", armInput) + } + + // Set property "Url": + if typedInput.Url != nil { + url := *typedInput.Url + contract.Url = &url + } + + // Set property "Username": + if typedInput.Username != nil { + username := *typedInput.Username + contract.Username = &username + } + + // No error + return nil +} + +// AssignProperties_From_BackendProxyContract_STATUS populates our BackendProxyContract_STATUS from the provided source BackendProxyContract_STATUS +func (contract *BackendProxyContract_STATUS) AssignProperties_From_BackendProxyContract_STATUS(source *v20220801s.BackendProxyContract_STATUS) error { + + // Url + contract.Url = genruntime.ClonePointerToString(source.Url) + + // Username + contract.Username = genruntime.ClonePointerToString(source.Username) + + // No error + return nil +} + +// AssignProperties_To_BackendProxyContract_STATUS populates the provided destination BackendProxyContract_STATUS from our BackendProxyContract_STATUS +func (contract *BackendProxyContract_STATUS) AssignProperties_To_BackendProxyContract_STATUS(destination *v20220801s.BackendProxyContract_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Url + destination.Url = genruntime.ClonePointerToString(contract.Url) + + // Username + destination.Username = genruntime.ClonePointerToString(contract.Username) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Properties controlling TLS Certificate Validation. +type BackendTlsProperties struct { + // ValidateCertificateChain: Flag indicating whether SSL certificate chain validation should be done when using self-signed + // certificates for this backend host. + ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty"` + + // ValidateCertificateName: Flag indicating whether SSL certificate name validation should be done when using self-signed + // certificates for this backend host. + ValidateCertificateName *bool `json:"validateCertificateName,omitempty"` +} + +var _ genruntime.ARMTransformer = &BackendTlsProperties{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (properties *BackendTlsProperties) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if properties == nil { + return nil, nil + } + result := &BackendTlsProperties_ARM{} + + // Set property "ValidateCertificateChain": + if properties.ValidateCertificateChain != nil { + validateCertificateChain := *properties.ValidateCertificateChain + result.ValidateCertificateChain = &validateCertificateChain + } + + // Set property "ValidateCertificateName": + if properties.ValidateCertificateName != nil { + validateCertificateName := *properties.ValidateCertificateName + result.ValidateCertificateName = &validateCertificateName + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *BackendTlsProperties) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendTlsProperties_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *BackendTlsProperties) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendTlsProperties_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendTlsProperties_ARM, got %T", armInput) + } + + // Set property "ValidateCertificateChain": + if typedInput.ValidateCertificateChain != nil { + validateCertificateChain := *typedInput.ValidateCertificateChain + properties.ValidateCertificateChain = &validateCertificateChain + } + + // Set property "ValidateCertificateName": + if typedInput.ValidateCertificateName != nil { + validateCertificateName := *typedInput.ValidateCertificateName + properties.ValidateCertificateName = &validateCertificateName + } + + // No error + return nil +} + +// AssignProperties_From_BackendTlsProperties populates our BackendTlsProperties from the provided source BackendTlsProperties +func (properties *BackendTlsProperties) AssignProperties_From_BackendTlsProperties(source *v20220801s.BackendTlsProperties) error { + + // ValidateCertificateChain + if source.ValidateCertificateChain != nil { + validateCertificateChain := *source.ValidateCertificateChain + properties.ValidateCertificateChain = &validateCertificateChain + } else { + properties.ValidateCertificateChain = nil + } + + // ValidateCertificateName + if source.ValidateCertificateName != nil { + validateCertificateName := *source.ValidateCertificateName + properties.ValidateCertificateName = &validateCertificateName + } else { + properties.ValidateCertificateName = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendTlsProperties populates the provided destination BackendTlsProperties from our BackendTlsProperties +func (properties *BackendTlsProperties) AssignProperties_To_BackendTlsProperties(destination *v20220801s.BackendTlsProperties) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ValidateCertificateChain + if properties.ValidateCertificateChain != nil { + validateCertificateChain := *properties.ValidateCertificateChain + destination.ValidateCertificateChain = &validateCertificateChain + } else { + destination.ValidateCertificateChain = nil + } + + // ValidateCertificateName + if properties.ValidateCertificateName != nil { + validateCertificateName := *properties.ValidateCertificateName + destination.ValidateCertificateName = &validateCertificateName + } else { + destination.ValidateCertificateName = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_BackendTlsProperties_STATUS populates our BackendTlsProperties from the provided source BackendTlsProperties_STATUS +func (properties *BackendTlsProperties) Initialize_From_BackendTlsProperties_STATUS(source *BackendTlsProperties_STATUS) error { + + // ValidateCertificateChain + if source.ValidateCertificateChain != nil { + validateCertificateChain := *source.ValidateCertificateChain + properties.ValidateCertificateChain = &validateCertificateChain + } else { + properties.ValidateCertificateChain = nil + } + + // ValidateCertificateName + if source.ValidateCertificateName != nil { + validateCertificateName := *source.ValidateCertificateName + properties.ValidateCertificateName = &validateCertificateName + } else { + properties.ValidateCertificateName = nil + } + + // No error + return nil +} + +// Properties controlling TLS Certificate Validation. +type BackendTlsProperties_STATUS struct { + // ValidateCertificateChain: Flag indicating whether SSL certificate chain validation should be done when using self-signed + // certificates for this backend host. + ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty"` + + // ValidateCertificateName: Flag indicating whether SSL certificate name validation should be done when using self-signed + // certificates for this backend host. + ValidateCertificateName *bool `json:"validateCertificateName,omitempty"` +} + +var _ genruntime.FromARMConverter = &BackendTlsProperties_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *BackendTlsProperties_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendTlsProperties_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *BackendTlsProperties_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendTlsProperties_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendTlsProperties_STATUS_ARM, got %T", armInput) + } + + // Set property "ValidateCertificateChain": + if typedInput.ValidateCertificateChain != nil { + validateCertificateChain := *typedInput.ValidateCertificateChain + properties.ValidateCertificateChain = &validateCertificateChain + } + + // Set property "ValidateCertificateName": + if typedInput.ValidateCertificateName != nil { + validateCertificateName := *typedInput.ValidateCertificateName + properties.ValidateCertificateName = &validateCertificateName + } + + // No error + return nil +} + +// AssignProperties_From_BackendTlsProperties_STATUS populates our BackendTlsProperties_STATUS from the provided source BackendTlsProperties_STATUS +func (properties *BackendTlsProperties_STATUS) AssignProperties_From_BackendTlsProperties_STATUS(source *v20220801s.BackendTlsProperties_STATUS) error { + + // ValidateCertificateChain + if source.ValidateCertificateChain != nil { + validateCertificateChain := *source.ValidateCertificateChain + properties.ValidateCertificateChain = &validateCertificateChain + } else { + properties.ValidateCertificateChain = nil + } + + // ValidateCertificateName + if source.ValidateCertificateName != nil { + validateCertificateName := *source.ValidateCertificateName + properties.ValidateCertificateName = &validateCertificateName + } else { + properties.ValidateCertificateName = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendTlsProperties_STATUS populates the provided destination BackendTlsProperties_STATUS from our BackendTlsProperties_STATUS +func (properties *BackendTlsProperties_STATUS) AssignProperties_To_BackendTlsProperties_STATUS(destination *v20220801s.BackendTlsProperties_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ValidateCertificateChain + if properties.ValidateCertificateChain != nil { + validateCertificateChain := *properties.ValidateCertificateChain + destination.ValidateCertificateChain = &validateCertificateChain + } else { + destination.ValidateCertificateChain = nil + } + + // ValidateCertificateName + if properties.ValidateCertificateName != nil { + validateCertificateName := *properties.ValidateCertificateName + destination.ValidateCertificateName = &validateCertificateName + } else { + destination.ValidateCertificateName = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Authorization header information. +type BackendAuthorizationHeaderCredentials struct { + // +kubebuilder:validation:Required + // +kubebuilder:validation:MaxLength=300 + // +kubebuilder:validation:MinLength=1 + // Parameter: Authentication Parameter value. + Parameter *string `json:"parameter,omitempty"` + + // +kubebuilder:validation:Required + // +kubebuilder:validation:MaxLength=100 + // +kubebuilder:validation:MinLength=1 + // Scheme: Authentication Scheme name. + Scheme *string `json:"scheme,omitempty"` +} + +var _ genruntime.ARMTransformer = &BackendAuthorizationHeaderCredentials{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (credentials *BackendAuthorizationHeaderCredentials) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if credentials == nil { + return nil, nil + } + result := &BackendAuthorizationHeaderCredentials_ARM{} + + // Set property "Parameter": + if credentials.Parameter != nil { + parameter := *credentials.Parameter + result.Parameter = ¶meter + } + + // Set property "Scheme": + if credentials.Scheme != nil { + scheme := *credentials.Scheme + result.Scheme = &scheme + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (credentials *BackendAuthorizationHeaderCredentials) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendAuthorizationHeaderCredentials_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (credentials *BackendAuthorizationHeaderCredentials) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendAuthorizationHeaderCredentials_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendAuthorizationHeaderCredentials_ARM, got %T", armInput) + } + + // Set property "Parameter": + if typedInput.Parameter != nil { + parameter := *typedInput.Parameter + credentials.Parameter = ¶meter + } + + // Set property "Scheme": + if typedInput.Scheme != nil { + scheme := *typedInput.Scheme + credentials.Scheme = &scheme + } + + // No error + return nil +} + +// AssignProperties_From_BackendAuthorizationHeaderCredentials populates our BackendAuthorizationHeaderCredentials from the provided source BackendAuthorizationHeaderCredentials +func (credentials *BackendAuthorizationHeaderCredentials) AssignProperties_From_BackendAuthorizationHeaderCredentials(source *v20220801s.BackendAuthorizationHeaderCredentials) error { + + // Parameter + if source.Parameter != nil { + parameter := *source.Parameter + credentials.Parameter = ¶meter + } else { + credentials.Parameter = nil + } + + // Scheme + if source.Scheme != nil { + scheme := *source.Scheme + credentials.Scheme = &scheme + } else { + credentials.Scheme = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendAuthorizationHeaderCredentials populates the provided destination BackendAuthorizationHeaderCredentials from our BackendAuthorizationHeaderCredentials +func (credentials *BackendAuthorizationHeaderCredentials) AssignProperties_To_BackendAuthorizationHeaderCredentials(destination *v20220801s.BackendAuthorizationHeaderCredentials) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Parameter + if credentials.Parameter != nil { + parameter := *credentials.Parameter + destination.Parameter = ¶meter + } else { + destination.Parameter = nil + } + + // Scheme + if credentials.Scheme != nil { + scheme := *credentials.Scheme + destination.Scheme = &scheme + } else { + destination.Scheme = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_BackendAuthorizationHeaderCredentials_STATUS populates our BackendAuthorizationHeaderCredentials from the provided source BackendAuthorizationHeaderCredentials_STATUS +func (credentials *BackendAuthorizationHeaderCredentials) Initialize_From_BackendAuthorizationHeaderCredentials_STATUS(source *BackendAuthorizationHeaderCredentials_STATUS) error { + + // Parameter + if source.Parameter != nil { + parameter := *source.Parameter + credentials.Parameter = ¶meter + } else { + credentials.Parameter = nil + } + + // Scheme + if source.Scheme != nil { + scheme := *source.Scheme + credentials.Scheme = &scheme + } else { + credentials.Scheme = nil + } + + // No error + return nil +} + +// Authorization header information. +type BackendAuthorizationHeaderCredentials_STATUS struct { + // Parameter: Authentication Parameter value. + Parameter *string `json:"parameter,omitempty"` + + // Scheme: Authentication Scheme name. + Scheme *string `json:"scheme,omitempty"` +} + +var _ genruntime.FromARMConverter = &BackendAuthorizationHeaderCredentials_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (credentials *BackendAuthorizationHeaderCredentials_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendAuthorizationHeaderCredentials_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (credentials *BackendAuthorizationHeaderCredentials_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendAuthorizationHeaderCredentials_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendAuthorizationHeaderCredentials_STATUS_ARM, got %T", armInput) + } + + // Set property "Parameter": + if typedInput.Parameter != nil { + parameter := *typedInput.Parameter + credentials.Parameter = ¶meter + } + + // Set property "Scheme": + if typedInput.Scheme != nil { + scheme := *typedInput.Scheme + credentials.Scheme = &scheme + } + + // No error + return nil +} + +// AssignProperties_From_BackendAuthorizationHeaderCredentials_STATUS populates our BackendAuthorizationHeaderCredentials_STATUS from the provided source BackendAuthorizationHeaderCredentials_STATUS +func (credentials *BackendAuthorizationHeaderCredentials_STATUS) AssignProperties_From_BackendAuthorizationHeaderCredentials_STATUS(source *v20220801s.BackendAuthorizationHeaderCredentials_STATUS) error { + + // Parameter + credentials.Parameter = genruntime.ClonePointerToString(source.Parameter) + + // Scheme + credentials.Scheme = genruntime.ClonePointerToString(source.Scheme) + + // No error + return nil +} + +// AssignProperties_To_BackendAuthorizationHeaderCredentials_STATUS populates the provided destination BackendAuthorizationHeaderCredentials_STATUS from our BackendAuthorizationHeaderCredentials_STATUS +func (credentials *BackendAuthorizationHeaderCredentials_STATUS) AssignProperties_To_BackendAuthorizationHeaderCredentials_STATUS(destination *v20220801s.BackendAuthorizationHeaderCredentials_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Parameter + destination.Parameter = genruntime.ClonePointerToString(credentials.Parameter) + + // Scheme + destination.Scheme = genruntime.ClonePointerToString(credentials.Scheme) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Properties of the Service Fabric Type Backend. +type BackendServiceFabricClusterProperties struct { + // ClientCertificateId: The client certificate id for the management endpoint. + ClientCertificateId *string `json:"clientCertificateId,omitempty"` + + // ClientCertificatethumbprint: The client certificate thumbprint for the management endpoint. Will be ignored if + // certificatesIds are provided + ClientCertificatethumbprint *string `json:"clientCertificatethumbprint,omitempty"` + + // +kubebuilder:validation:Required + // ManagementEndpoints: The cluster management endpoint. + ManagementEndpoints []string `json:"managementEndpoints,omitempty"` + + // MaxPartitionResolutionRetries: Maximum number of retries while attempting resolve the partition. + MaxPartitionResolutionRetries *int `json:"maxPartitionResolutionRetries,omitempty"` + + // ServerCertificateThumbprints: Thumbprints of certificates cluster management service uses for tls communication + ServerCertificateThumbprints []string `json:"serverCertificateThumbprints,omitempty"` + + // ServerX509Names: Server X509 Certificate Names Collection + ServerX509Names []X509CertificateName `json:"serverX509Names,omitempty"` +} + +var _ genruntime.ARMTransformer = &BackendServiceFabricClusterProperties{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (properties *BackendServiceFabricClusterProperties) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if properties == nil { + return nil, nil + } + result := &BackendServiceFabricClusterProperties_ARM{} + + // Set property "ClientCertificateId": + if properties.ClientCertificateId != nil { + clientCertificateId := *properties.ClientCertificateId + result.ClientCertificateId = &clientCertificateId + } + + // Set property "ClientCertificatethumbprint": + if properties.ClientCertificatethumbprint != nil { + clientCertificatethumbprint := *properties.ClientCertificatethumbprint + result.ClientCertificatethumbprint = &clientCertificatethumbprint + } + + // Set property "ManagementEndpoints": + for _, item := range properties.ManagementEndpoints { + result.ManagementEndpoints = append(result.ManagementEndpoints, item) + } + + // Set property "MaxPartitionResolutionRetries": + if properties.MaxPartitionResolutionRetries != nil { + maxPartitionResolutionRetries := *properties.MaxPartitionResolutionRetries + result.MaxPartitionResolutionRetries = &maxPartitionResolutionRetries + } + + // Set property "ServerCertificateThumbprints": + for _, item := range properties.ServerCertificateThumbprints { + result.ServerCertificateThumbprints = append(result.ServerCertificateThumbprints, item) + } + + // Set property "ServerX509Names": + for _, item := range properties.ServerX509Names { + item_ARM, err := item.ConvertToARM(resolved) + if err != nil { + return nil, err + } + result.ServerX509Names = append(result.ServerX509Names, *item_ARM.(*X509CertificateName_ARM)) + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *BackendServiceFabricClusterProperties) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendServiceFabricClusterProperties_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *BackendServiceFabricClusterProperties) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendServiceFabricClusterProperties_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendServiceFabricClusterProperties_ARM, got %T", armInput) + } + + // Set property "ClientCertificateId": + if typedInput.ClientCertificateId != nil { + clientCertificateId := *typedInput.ClientCertificateId + properties.ClientCertificateId = &clientCertificateId + } + + // Set property "ClientCertificatethumbprint": + if typedInput.ClientCertificatethumbprint != nil { + clientCertificatethumbprint := *typedInput.ClientCertificatethumbprint + properties.ClientCertificatethumbprint = &clientCertificatethumbprint + } + + // Set property "ManagementEndpoints": + for _, item := range typedInput.ManagementEndpoints { + properties.ManagementEndpoints = append(properties.ManagementEndpoints, item) + } + + // Set property "MaxPartitionResolutionRetries": + if typedInput.MaxPartitionResolutionRetries != nil { + maxPartitionResolutionRetries := *typedInput.MaxPartitionResolutionRetries + properties.MaxPartitionResolutionRetries = &maxPartitionResolutionRetries + } + + // Set property "ServerCertificateThumbprints": + for _, item := range typedInput.ServerCertificateThumbprints { + properties.ServerCertificateThumbprints = append(properties.ServerCertificateThumbprints, item) + } + + // Set property "ServerX509Names": + for _, item := range typedInput.ServerX509Names { + var item1 X509CertificateName + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + properties.ServerX509Names = append(properties.ServerX509Names, item1) + } + + // No error + return nil +} + +// AssignProperties_From_BackendServiceFabricClusterProperties populates our BackendServiceFabricClusterProperties from the provided source BackendServiceFabricClusterProperties +func (properties *BackendServiceFabricClusterProperties) AssignProperties_From_BackendServiceFabricClusterProperties(source *v20220801s.BackendServiceFabricClusterProperties) error { + + // ClientCertificateId + properties.ClientCertificateId = genruntime.ClonePointerToString(source.ClientCertificateId) + + // ClientCertificatethumbprint + properties.ClientCertificatethumbprint = genruntime.ClonePointerToString(source.ClientCertificatethumbprint) + + // ManagementEndpoints + properties.ManagementEndpoints = genruntime.CloneSliceOfString(source.ManagementEndpoints) + + // MaxPartitionResolutionRetries + properties.MaxPartitionResolutionRetries = genruntime.ClonePointerToInt(source.MaxPartitionResolutionRetries) + + // ServerCertificateThumbprints + properties.ServerCertificateThumbprints = genruntime.CloneSliceOfString(source.ServerCertificateThumbprints) + + // ServerX509Names + if source.ServerX509Names != nil { + serverX509NameList := make([]X509CertificateName, len(source.ServerX509Names)) + for serverX509NameIndex, serverX509NameItem := range source.ServerX509Names { + // Shadow the loop variable to avoid aliasing + serverX509NameItem := serverX509NameItem + var serverX509Name X509CertificateName + err := serverX509Name.AssignProperties_From_X509CertificateName(&serverX509NameItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_X509CertificateName() to populate field ServerX509Names") + } + serverX509NameList[serverX509NameIndex] = serverX509Name + } + properties.ServerX509Names = serverX509NameList + } else { + properties.ServerX509Names = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendServiceFabricClusterProperties populates the provided destination BackendServiceFabricClusterProperties from our BackendServiceFabricClusterProperties +func (properties *BackendServiceFabricClusterProperties) AssignProperties_To_BackendServiceFabricClusterProperties(destination *v20220801s.BackendServiceFabricClusterProperties) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ClientCertificateId + destination.ClientCertificateId = genruntime.ClonePointerToString(properties.ClientCertificateId) + + // ClientCertificatethumbprint + destination.ClientCertificatethumbprint = genruntime.ClonePointerToString(properties.ClientCertificatethumbprint) + + // ManagementEndpoints + destination.ManagementEndpoints = genruntime.CloneSliceOfString(properties.ManagementEndpoints) + + // MaxPartitionResolutionRetries + destination.MaxPartitionResolutionRetries = genruntime.ClonePointerToInt(properties.MaxPartitionResolutionRetries) + + // ServerCertificateThumbprints + destination.ServerCertificateThumbprints = genruntime.CloneSliceOfString(properties.ServerCertificateThumbprints) + + // ServerX509Names + if properties.ServerX509Names != nil { + serverX509NameList := make([]v20220801s.X509CertificateName, len(properties.ServerX509Names)) + for serverX509NameIndex, serverX509NameItem := range properties.ServerX509Names { + // Shadow the loop variable to avoid aliasing + serverX509NameItem := serverX509NameItem + var serverX509Name v20220801s.X509CertificateName + err := serverX509NameItem.AssignProperties_To_X509CertificateName(&serverX509Name) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_X509CertificateName() to populate field ServerX509Names") + } + serverX509NameList[serverX509NameIndex] = serverX509Name + } + destination.ServerX509Names = serverX509NameList + } else { + destination.ServerX509Names = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_BackendServiceFabricClusterProperties_STATUS populates our BackendServiceFabricClusterProperties from the provided source BackendServiceFabricClusterProperties_STATUS +func (properties *BackendServiceFabricClusterProperties) Initialize_From_BackendServiceFabricClusterProperties_STATUS(source *BackendServiceFabricClusterProperties_STATUS) error { + + // ClientCertificateId + properties.ClientCertificateId = genruntime.ClonePointerToString(source.ClientCertificateId) + + // ClientCertificatethumbprint + properties.ClientCertificatethumbprint = genruntime.ClonePointerToString(source.ClientCertificatethumbprint) + + // ManagementEndpoints + properties.ManagementEndpoints = genruntime.CloneSliceOfString(source.ManagementEndpoints) + + // MaxPartitionResolutionRetries + properties.MaxPartitionResolutionRetries = genruntime.ClonePointerToInt(source.MaxPartitionResolutionRetries) + + // ServerCertificateThumbprints + properties.ServerCertificateThumbprints = genruntime.CloneSliceOfString(source.ServerCertificateThumbprints) + + // ServerX509Names + if source.ServerX509Names != nil { + serverX509NameList := make([]X509CertificateName, len(source.ServerX509Names)) + for serverX509NameIndex, serverX509NameItem := range source.ServerX509Names { + // Shadow the loop variable to avoid aliasing + serverX509NameItem := serverX509NameItem + var serverX509Name X509CertificateName + err := serverX509Name.Initialize_From_X509CertificateName_STATUS(&serverX509NameItem) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_X509CertificateName_STATUS() to populate field ServerX509Names") + } + serverX509NameList[serverX509NameIndex] = serverX509Name + } + properties.ServerX509Names = serverX509NameList + } else { + properties.ServerX509Names = nil + } + + // No error + return nil +} + +// Properties of the Service Fabric Type Backend. +type BackendServiceFabricClusterProperties_STATUS struct { + // ClientCertificateId: The client certificate id for the management endpoint. + ClientCertificateId *string `json:"clientCertificateId,omitempty"` + + // ClientCertificatethumbprint: The client certificate thumbprint for the management endpoint. Will be ignored if + // certificatesIds are provided + ClientCertificatethumbprint *string `json:"clientCertificatethumbprint,omitempty"` + + // ManagementEndpoints: The cluster management endpoint. + ManagementEndpoints []string `json:"managementEndpoints,omitempty"` + + // MaxPartitionResolutionRetries: Maximum number of retries while attempting resolve the partition. + MaxPartitionResolutionRetries *int `json:"maxPartitionResolutionRetries,omitempty"` + + // ServerCertificateThumbprints: Thumbprints of certificates cluster management service uses for tls communication + ServerCertificateThumbprints []string `json:"serverCertificateThumbprints,omitempty"` + + // ServerX509Names: Server X509 Certificate Names Collection + ServerX509Names []X509CertificateName_STATUS `json:"serverX509Names,omitempty"` +} + +var _ genruntime.FromARMConverter = &BackendServiceFabricClusterProperties_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *BackendServiceFabricClusterProperties_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &BackendServiceFabricClusterProperties_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *BackendServiceFabricClusterProperties_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(BackendServiceFabricClusterProperties_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected BackendServiceFabricClusterProperties_STATUS_ARM, got %T", armInput) + } + + // Set property "ClientCertificateId": + if typedInput.ClientCertificateId != nil { + clientCertificateId := *typedInput.ClientCertificateId + properties.ClientCertificateId = &clientCertificateId + } + + // Set property "ClientCertificatethumbprint": + if typedInput.ClientCertificatethumbprint != nil { + clientCertificatethumbprint := *typedInput.ClientCertificatethumbprint + properties.ClientCertificatethumbprint = &clientCertificatethumbprint + } + + // Set property "ManagementEndpoints": + for _, item := range typedInput.ManagementEndpoints { + properties.ManagementEndpoints = append(properties.ManagementEndpoints, item) + } + + // Set property "MaxPartitionResolutionRetries": + if typedInput.MaxPartitionResolutionRetries != nil { + maxPartitionResolutionRetries := *typedInput.MaxPartitionResolutionRetries + properties.MaxPartitionResolutionRetries = &maxPartitionResolutionRetries + } + + // Set property "ServerCertificateThumbprints": + for _, item := range typedInput.ServerCertificateThumbprints { + properties.ServerCertificateThumbprints = append(properties.ServerCertificateThumbprints, item) + } + + // Set property "ServerX509Names": + for _, item := range typedInput.ServerX509Names { + var item1 X509CertificateName_STATUS + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + properties.ServerX509Names = append(properties.ServerX509Names, item1) + } + + // No error + return nil +} + +// AssignProperties_From_BackendServiceFabricClusterProperties_STATUS populates our BackendServiceFabricClusterProperties_STATUS from the provided source BackendServiceFabricClusterProperties_STATUS +func (properties *BackendServiceFabricClusterProperties_STATUS) AssignProperties_From_BackendServiceFabricClusterProperties_STATUS(source *v20220801s.BackendServiceFabricClusterProperties_STATUS) error { + + // ClientCertificateId + properties.ClientCertificateId = genruntime.ClonePointerToString(source.ClientCertificateId) + + // ClientCertificatethumbprint + properties.ClientCertificatethumbprint = genruntime.ClonePointerToString(source.ClientCertificatethumbprint) + + // ManagementEndpoints + properties.ManagementEndpoints = genruntime.CloneSliceOfString(source.ManagementEndpoints) + + // MaxPartitionResolutionRetries + properties.MaxPartitionResolutionRetries = genruntime.ClonePointerToInt(source.MaxPartitionResolutionRetries) + + // ServerCertificateThumbprints + properties.ServerCertificateThumbprints = genruntime.CloneSliceOfString(source.ServerCertificateThumbprints) + + // ServerX509Names + if source.ServerX509Names != nil { + serverX509NameList := make([]X509CertificateName_STATUS, len(source.ServerX509Names)) + for serverX509NameIndex, serverX509NameItem := range source.ServerX509Names { + // Shadow the loop variable to avoid aliasing + serverX509NameItem := serverX509NameItem + var serverX509Name X509CertificateName_STATUS + err := serverX509Name.AssignProperties_From_X509CertificateName_STATUS(&serverX509NameItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_X509CertificateName_STATUS() to populate field ServerX509Names") + } + serverX509NameList[serverX509NameIndex] = serverX509Name + } + properties.ServerX509Names = serverX509NameList + } else { + properties.ServerX509Names = nil + } + + // No error + return nil +} + +// AssignProperties_To_BackendServiceFabricClusterProperties_STATUS populates the provided destination BackendServiceFabricClusterProperties_STATUS from our BackendServiceFabricClusterProperties_STATUS +func (properties *BackendServiceFabricClusterProperties_STATUS) AssignProperties_To_BackendServiceFabricClusterProperties_STATUS(destination *v20220801s.BackendServiceFabricClusterProperties_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ClientCertificateId + destination.ClientCertificateId = genruntime.ClonePointerToString(properties.ClientCertificateId) + + // ClientCertificatethumbprint + destination.ClientCertificatethumbprint = genruntime.ClonePointerToString(properties.ClientCertificatethumbprint) + + // ManagementEndpoints + destination.ManagementEndpoints = genruntime.CloneSliceOfString(properties.ManagementEndpoints) + + // MaxPartitionResolutionRetries + destination.MaxPartitionResolutionRetries = genruntime.ClonePointerToInt(properties.MaxPartitionResolutionRetries) + + // ServerCertificateThumbprints + destination.ServerCertificateThumbprints = genruntime.CloneSliceOfString(properties.ServerCertificateThumbprints) + + // ServerX509Names + if properties.ServerX509Names != nil { + serverX509NameList := make([]v20220801s.X509CertificateName_STATUS, len(properties.ServerX509Names)) + for serverX509NameIndex, serverX509NameItem := range properties.ServerX509Names { + // Shadow the loop variable to avoid aliasing + serverX509NameItem := serverX509NameItem + var serverX509Name v20220801s.X509CertificateName_STATUS + err := serverX509NameItem.AssignProperties_To_X509CertificateName_STATUS(&serverX509Name) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_X509CertificateName_STATUS() to populate field ServerX509Names") + } + serverX509NameList[serverX509NameIndex] = serverX509Name + } + destination.ServerX509Names = serverX509NameList + } else { + destination.ServerX509Names = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Properties of server X509Names. +type X509CertificateName struct { + // IssuerCertificateThumbprint: Thumbprint for the Issuer of the Certificate. + IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty"` + + // Name: Common Name of the Certificate. + Name *string `json:"name,omitempty"` +} + +var _ genruntime.ARMTransformer = &X509CertificateName{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (name *X509CertificateName) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if name == nil { + return nil, nil + } + result := &X509CertificateName_ARM{} + + // Set property "IssuerCertificateThumbprint": + if name.IssuerCertificateThumbprint != nil { + issuerCertificateThumbprint := *name.IssuerCertificateThumbprint + result.IssuerCertificateThumbprint = &issuerCertificateThumbprint + } + + // Set property "Name": + if name.Name != nil { + name1 := *name.Name + result.Name = &name1 + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (name *X509CertificateName) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &X509CertificateName_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (name *X509CertificateName) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(X509CertificateName_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected X509CertificateName_ARM, got %T", armInput) + } + + // Set property "IssuerCertificateThumbprint": + if typedInput.IssuerCertificateThumbprint != nil { + issuerCertificateThumbprint := *typedInput.IssuerCertificateThumbprint + name.IssuerCertificateThumbprint = &issuerCertificateThumbprint + } + + // Set property "Name": + if typedInput.Name != nil { + name1 := *typedInput.Name + name.Name = &name1 + } + + // No error + return nil +} + +// AssignProperties_From_X509CertificateName populates our X509CertificateName from the provided source X509CertificateName +func (name *X509CertificateName) AssignProperties_From_X509CertificateName(source *v20220801s.X509CertificateName) error { + + // IssuerCertificateThumbprint + name.IssuerCertificateThumbprint = genruntime.ClonePointerToString(source.IssuerCertificateThumbprint) + + // Name + name.Name = genruntime.ClonePointerToString(source.Name) + + // No error + return nil +} + +// AssignProperties_To_X509CertificateName populates the provided destination X509CertificateName from our X509CertificateName +func (name *X509CertificateName) AssignProperties_To_X509CertificateName(destination *v20220801s.X509CertificateName) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // IssuerCertificateThumbprint + destination.IssuerCertificateThumbprint = genruntime.ClonePointerToString(name.IssuerCertificateThumbprint) + + // Name + destination.Name = genruntime.ClonePointerToString(name.Name) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_X509CertificateName_STATUS populates our X509CertificateName from the provided source X509CertificateName_STATUS +func (name *X509CertificateName) Initialize_From_X509CertificateName_STATUS(source *X509CertificateName_STATUS) error { + + // IssuerCertificateThumbprint + name.IssuerCertificateThumbprint = genruntime.ClonePointerToString(source.IssuerCertificateThumbprint) + + // Name + name.Name = genruntime.ClonePointerToString(source.Name) + + // No error + return nil +} + +// Properties of server X509Names. +type X509CertificateName_STATUS struct { + // IssuerCertificateThumbprint: Thumbprint for the Issuer of the Certificate. + IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty"` + + // Name: Common Name of the Certificate. + Name *string `json:"name,omitempty"` +} + +var _ genruntime.FromARMConverter = &X509CertificateName_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (name *X509CertificateName_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &X509CertificateName_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (name *X509CertificateName_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(X509CertificateName_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected X509CertificateName_STATUS_ARM, got %T", armInput) + } + + // Set property "IssuerCertificateThumbprint": + if typedInput.IssuerCertificateThumbprint != nil { + issuerCertificateThumbprint := *typedInput.IssuerCertificateThumbprint + name.IssuerCertificateThumbprint = &issuerCertificateThumbprint + } + + // Set property "Name": + if typedInput.Name != nil { + name1 := *typedInput.Name + name.Name = &name1 + } + + // No error + return nil +} + +// AssignProperties_From_X509CertificateName_STATUS populates our X509CertificateName_STATUS from the provided source X509CertificateName_STATUS +func (name *X509CertificateName_STATUS) AssignProperties_From_X509CertificateName_STATUS(source *v20220801s.X509CertificateName_STATUS) error { + + // IssuerCertificateThumbprint + name.IssuerCertificateThumbprint = genruntime.ClonePointerToString(source.IssuerCertificateThumbprint) + + // Name + name.Name = genruntime.ClonePointerToString(source.Name) + + // No error + return nil +} + +// AssignProperties_To_X509CertificateName_STATUS populates the provided destination X509CertificateName_STATUS from our X509CertificateName_STATUS +func (name *X509CertificateName_STATUS) AssignProperties_To_X509CertificateName_STATUS(destination *v20220801s.X509CertificateName_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // IssuerCertificateThumbprint + destination.IssuerCertificateThumbprint = genruntime.ClonePointerToString(name.IssuerCertificateThumbprint) + + // Name + destination.Name = genruntime.ClonePointerToString(name.Name) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +func init() { + SchemeBuilder.Register(&Backend{}, &BackendList{}) +} diff --git a/v2/api/apimanagement/v1api20220801/backend_types_gen_test.go b/v2/api/apimanagement/v1api20220801/backend_types_gen_test.go new file mode 100644 index 00000000000..c65806eb503 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/backend_types_gen_test.go @@ -0,0 +1,1935 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Backend_WhenConvertedToHub_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + parameters.MinSuccessfulTests = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Backend to hub returns original", + prop.ForAll(RunResourceConversionTestForBackend, BackendGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForBackend tests if a specific instance of Backend round trips to the hub storage version and back losslessly +func RunResourceConversionTestForBackend(subject Backend) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20220801s.Backend + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual Backend + err = actual.ConvertFrom(&hub) + if err != nil { + return err.Error() + } + + // Compare actual with what we started with + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Backend_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Backend to Backend via AssignProperties_To_Backend & AssignProperties_From_Backend returns original", + prop.ForAll(RunPropertyAssignmentTestForBackend, BackendGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackend tests if a specific instance of Backend can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackend(subject Backend) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.Backend + err := copied.AssignProperties_To_Backend(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Backend + err = actual.AssignProperties_From_Backend(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Backend_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 20 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Backend via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackend, BackendGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackend runs a test to see if a specific instance of Backend round trips to JSON and back losslessly +func RunJSONSerializationTestForBackend(subject Backend) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Backend + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Backend instances for property testing - lazily instantiated by BackendGenerator() +var backendGenerator gopter.Gen + +// BackendGenerator returns a generator of Backend instances for property testing. +func BackendGenerator() gopter.Gen { + if backendGenerator != nil { + return backendGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForBackend(generators) + backendGenerator = gen.Struct(reflect.TypeOf(Backend{}), generators) + + return backendGenerator +} + +// AddRelatedPropertyGeneratorsForBackend is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackend(gens map[string]gopter.Gen) { + gens["Spec"] = Service_Backend_SpecGenerator() + gens["Status"] = Service_Backend_STATUSGenerator() +} + +func Test_Service_Backend_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Service_Backend_Spec to Service_Backend_Spec via AssignProperties_To_Service_Backend_Spec & AssignProperties_From_Service_Backend_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForService_Backend_Spec, Service_Backend_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForService_Backend_Spec tests if a specific instance of Service_Backend_Spec can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForService_Backend_Spec(subject Service_Backend_Spec) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.Service_Backend_Spec + err := copied.AssignProperties_To_Service_Backend_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Service_Backend_Spec + err = actual.AssignProperties_From_Service_Backend_Spec(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Service_Backend_Spec_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Backend_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Backend_Spec, Service_Backend_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Backend_Spec runs a test to see if a specific instance of Service_Backend_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Backend_Spec(subject Service_Backend_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Backend_Spec + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Backend_Spec instances for property testing - lazily instantiated by +// Service_Backend_SpecGenerator() +var service_Backend_SpecGenerator gopter.Gen + +// Service_Backend_SpecGenerator returns a generator of Service_Backend_Spec instances for property testing. +// We first initialize service_Backend_SpecGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_Backend_SpecGenerator() gopter.Gen { + if service_Backend_SpecGenerator != nil { + return service_Backend_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_Spec(generators) + service_Backend_SpecGenerator = gen.Struct(reflect.TypeOf(Service_Backend_Spec{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_Spec(generators) + AddRelatedPropertyGeneratorsForService_Backend_Spec(generators) + service_Backend_SpecGenerator = gen.Struct(reflect.TypeOf(Service_Backend_Spec{}), generators) + + return service_Backend_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForService_Backend_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Backend_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["Protocol"] = gen.PtrOf(gen.OneConstOf(BackendContractProperties_Protocol_Http, BackendContractProperties_Protocol_Soap)) + gens["Title"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_Backend_Spec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_Backend_Spec(gens map[string]gopter.Gen) { + gens["Credentials"] = gen.PtrOf(BackendCredentialsContractGenerator()) + gens["Properties"] = gen.PtrOf(BackendPropertiesGenerator()) + gens["Proxy"] = gen.PtrOf(BackendProxyContractGenerator()) + gens["Tls"] = gen.PtrOf(BackendTlsPropertiesGenerator()) +} + +func Test_Service_Backend_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Service_Backend_STATUS to Service_Backend_STATUS via AssignProperties_To_Service_Backend_STATUS & AssignProperties_From_Service_Backend_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForService_Backend_STATUS, Service_Backend_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForService_Backend_STATUS tests if a specific instance of Service_Backend_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForService_Backend_STATUS(subject Service_Backend_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.Service_Backend_STATUS + err := copied.AssignProperties_To_Service_Backend_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Service_Backend_STATUS + err = actual.AssignProperties_From_Service_Backend_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Service_Backend_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Backend_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Backend_STATUS, Service_Backend_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Backend_STATUS runs a test to see if a specific instance of Service_Backend_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Backend_STATUS(subject Service_Backend_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Backend_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Backend_STATUS instances for property testing - lazily instantiated by +// Service_Backend_STATUSGenerator() +var service_Backend_STATUSGenerator gopter.Gen + +// Service_Backend_STATUSGenerator returns a generator of Service_Backend_STATUS instances for property testing. +// We first initialize service_Backend_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_Backend_STATUSGenerator() gopter.Gen { + if service_Backend_STATUSGenerator != nil { + return service_Backend_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_STATUS(generators) + service_Backend_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_Backend_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_STATUS(generators) + AddRelatedPropertyGeneratorsForService_Backend_STATUS(generators) + service_Backend_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_Backend_STATUS{}), generators) + + return service_Backend_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForService_Backend_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Backend_STATUS(gens map[string]gopter.Gen) { + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Protocol"] = gen.PtrOf(gen.OneConstOf(BackendContractProperties_Protocol_STATUS_Http, BackendContractProperties_Protocol_STATUS_Soap)) + gens["ResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["Title"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_Backend_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_Backend_STATUS(gens map[string]gopter.Gen) { + gens["Credentials"] = gen.PtrOf(BackendCredentialsContract_STATUSGenerator()) + gens["Properties"] = gen.PtrOf(BackendProperties_STATUSGenerator()) + gens["Proxy"] = gen.PtrOf(BackendProxyContract_STATUSGenerator()) + gens["Tls"] = gen.PtrOf(BackendTlsProperties_STATUSGenerator()) +} + +func Test_BackendCredentialsContract_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendCredentialsContract to BackendCredentialsContract via AssignProperties_To_BackendCredentialsContract & AssignProperties_From_BackendCredentialsContract returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendCredentialsContract, BackendCredentialsContractGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendCredentialsContract tests if a specific instance of BackendCredentialsContract can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendCredentialsContract(subject BackendCredentialsContract) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendCredentialsContract + err := copied.AssignProperties_To_BackendCredentialsContract(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendCredentialsContract + err = actual.AssignProperties_From_BackendCredentialsContract(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendCredentialsContract_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendCredentialsContract via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendCredentialsContract, BackendCredentialsContractGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendCredentialsContract runs a test to see if a specific instance of BackendCredentialsContract round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendCredentialsContract(subject BackendCredentialsContract) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendCredentialsContract + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendCredentialsContract instances for property testing - lazily instantiated by +// BackendCredentialsContractGenerator() +var backendCredentialsContractGenerator gopter.Gen + +// BackendCredentialsContractGenerator returns a generator of BackendCredentialsContract instances for property testing. +// We first initialize backendCredentialsContractGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendCredentialsContractGenerator() gopter.Gen { + if backendCredentialsContractGenerator != nil { + return backendCredentialsContractGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract(generators) + backendCredentialsContractGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract(generators) + AddRelatedPropertyGeneratorsForBackendCredentialsContract(generators) + backendCredentialsContractGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract{}), generators) + + return backendCredentialsContractGenerator +} + +// AddIndependentPropertyGeneratorsForBackendCredentialsContract is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendCredentialsContract(gens map[string]gopter.Gen) { + gens["Certificate"] = gen.SliceOf(gen.AlphaString()) + gens["CertificateIds"] = gen.SliceOf(gen.AlphaString()) + gens["Header"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) + gens["Query"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) +} + +// AddRelatedPropertyGeneratorsForBackendCredentialsContract is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendCredentialsContract(gens map[string]gopter.Gen) { + gens["Authorization"] = gen.PtrOf(BackendAuthorizationHeaderCredentialsGenerator()) +} + +func Test_BackendCredentialsContract_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendCredentialsContract_STATUS to BackendCredentialsContract_STATUS via AssignProperties_To_BackendCredentialsContract_STATUS & AssignProperties_From_BackendCredentialsContract_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendCredentialsContract_STATUS, BackendCredentialsContract_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendCredentialsContract_STATUS tests if a specific instance of BackendCredentialsContract_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendCredentialsContract_STATUS(subject BackendCredentialsContract_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendCredentialsContract_STATUS + err := copied.AssignProperties_To_BackendCredentialsContract_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendCredentialsContract_STATUS + err = actual.AssignProperties_From_BackendCredentialsContract_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendCredentialsContract_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendCredentialsContract_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendCredentialsContract_STATUS, BackendCredentialsContract_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendCredentialsContract_STATUS runs a test to see if a specific instance of BackendCredentialsContract_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendCredentialsContract_STATUS(subject BackendCredentialsContract_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendCredentialsContract_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendCredentialsContract_STATUS instances for property testing - lazily instantiated by +// BackendCredentialsContract_STATUSGenerator() +var backendCredentialsContract_STATUSGenerator gopter.Gen + +// BackendCredentialsContract_STATUSGenerator returns a generator of BackendCredentialsContract_STATUS instances for property testing. +// We first initialize backendCredentialsContract_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendCredentialsContract_STATUSGenerator() gopter.Gen { + if backendCredentialsContract_STATUSGenerator != nil { + return backendCredentialsContract_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS(generators) + backendCredentialsContract_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS(generators) + AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS(generators) + backendCredentialsContract_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract_STATUS{}), generators) + + return backendCredentialsContract_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS(gens map[string]gopter.Gen) { + gens["Certificate"] = gen.SliceOf(gen.AlphaString()) + gens["CertificateIds"] = gen.SliceOf(gen.AlphaString()) + gens["Header"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) + gens["Query"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) +} + +// AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS(gens map[string]gopter.Gen) { + gens["Authorization"] = gen.PtrOf(BackendAuthorizationHeaderCredentials_STATUSGenerator()) +} + +func Test_BackendProperties_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendProperties to BackendProperties via AssignProperties_To_BackendProperties & AssignProperties_From_BackendProperties returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendProperties, BackendPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendProperties tests if a specific instance of BackendProperties can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendProperties(subject BackendProperties) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendProperties + err := copied.AssignProperties_To_BackendProperties(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendProperties + err = actual.AssignProperties_From_BackendProperties(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendProperties_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProperties via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProperties, BackendPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProperties runs a test to see if a specific instance of BackendProperties round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProperties(subject BackendProperties) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProperties + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProperties instances for property testing - lazily instantiated by BackendPropertiesGenerator() +var backendPropertiesGenerator gopter.Gen + +// BackendPropertiesGenerator returns a generator of BackendProperties instances for property testing. +func BackendPropertiesGenerator() gopter.Gen { + if backendPropertiesGenerator != nil { + return backendPropertiesGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForBackendProperties(generators) + backendPropertiesGenerator = gen.Struct(reflect.TypeOf(BackendProperties{}), generators) + + return backendPropertiesGenerator +} + +// AddRelatedPropertyGeneratorsForBackendProperties is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendProperties(gens map[string]gopter.Gen) { + gens["ServiceFabricCluster"] = gen.PtrOf(BackendServiceFabricClusterPropertiesGenerator()) +} + +func Test_BackendProperties_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendProperties_STATUS to BackendProperties_STATUS via AssignProperties_To_BackendProperties_STATUS & AssignProperties_From_BackendProperties_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendProperties_STATUS, BackendProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendProperties_STATUS tests if a specific instance of BackendProperties_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendProperties_STATUS(subject BackendProperties_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendProperties_STATUS + err := copied.AssignProperties_To_BackendProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendProperties_STATUS + err = actual.AssignProperties_From_BackendProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProperties_STATUS, BackendProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProperties_STATUS runs a test to see if a specific instance of BackendProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProperties_STATUS(subject BackendProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProperties_STATUS instances for property testing - lazily instantiated by +// BackendProperties_STATUSGenerator() +var backendProperties_STATUSGenerator gopter.Gen + +// BackendProperties_STATUSGenerator returns a generator of BackendProperties_STATUS instances for property testing. +func BackendProperties_STATUSGenerator() gopter.Gen { + if backendProperties_STATUSGenerator != nil { + return backendProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForBackendProperties_STATUS(generators) + backendProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendProperties_STATUS{}), generators) + + return backendProperties_STATUSGenerator +} + +// AddRelatedPropertyGeneratorsForBackendProperties_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendProperties_STATUS(gens map[string]gopter.Gen) { + gens["ServiceFabricCluster"] = gen.PtrOf(BackendServiceFabricClusterProperties_STATUSGenerator()) +} + +func Test_BackendProxyContract_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendProxyContract to BackendProxyContract via AssignProperties_To_BackendProxyContract & AssignProperties_From_BackendProxyContract returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendProxyContract, BackendProxyContractGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendProxyContract tests if a specific instance of BackendProxyContract can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendProxyContract(subject BackendProxyContract) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendProxyContract + err := copied.AssignProperties_To_BackendProxyContract(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendProxyContract + err = actual.AssignProperties_From_BackendProxyContract(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendProxyContract_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProxyContract via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProxyContract, BackendProxyContractGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProxyContract runs a test to see if a specific instance of BackendProxyContract round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProxyContract(subject BackendProxyContract) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProxyContract + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProxyContract instances for property testing - lazily instantiated by +// BackendProxyContractGenerator() +var backendProxyContractGenerator gopter.Gen + +// BackendProxyContractGenerator returns a generator of BackendProxyContract instances for property testing. +func BackendProxyContractGenerator() gopter.Gen { + if backendProxyContractGenerator != nil { + return backendProxyContractGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendProxyContract(generators) + backendProxyContractGenerator = gen.Struct(reflect.TypeOf(BackendProxyContract{}), generators) + + return backendProxyContractGenerator +} + +// AddIndependentPropertyGeneratorsForBackendProxyContract is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendProxyContract(gens map[string]gopter.Gen) { + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Username"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendProxyContract_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendProxyContract_STATUS to BackendProxyContract_STATUS via AssignProperties_To_BackendProxyContract_STATUS & AssignProperties_From_BackendProxyContract_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendProxyContract_STATUS, BackendProxyContract_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendProxyContract_STATUS tests if a specific instance of BackendProxyContract_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendProxyContract_STATUS(subject BackendProxyContract_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendProxyContract_STATUS + err := copied.AssignProperties_To_BackendProxyContract_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendProxyContract_STATUS + err = actual.AssignProperties_From_BackendProxyContract_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendProxyContract_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProxyContract_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProxyContract_STATUS, BackendProxyContract_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProxyContract_STATUS runs a test to see if a specific instance of BackendProxyContract_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProxyContract_STATUS(subject BackendProxyContract_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProxyContract_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProxyContract_STATUS instances for property testing - lazily instantiated by +// BackendProxyContract_STATUSGenerator() +var backendProxyContract_STATUSGenerator gopter.Gen + +// BackendProxyContract_STATUSGenerator returns a generator of BackendProxyContract_STATUS instances for property testing. +func BackendProxyContract_STATUSGenerator() gopter.Gen { + if backendProxyContract_STATUSGenerator != nil { + return backendProxyContract_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS(generators) + backendProxyContract_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendProxyContract_STATUS{}), generators) + + return backendProxyContract_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS(gens map[string]gopter.Gen) { + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Username"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendTlsProperties_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendTlsProperties to BackendTlsProperties via AssignProperties_To_BackendTlsProperties & AssignProperties_From_BackendTlsProperties returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendTlsProperties, BackendTlsPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendTlsProperties tests if a specific instance of BackendTlsProperties can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendTlsProperties(subject BackendTlsProperties) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendTlsProperties + err := copied.AssignProperties_To_BackendTlsProperties(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendTlsProperties + err = actual.AssignProperties_From_BackendTlsProperties(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendTlsProperties_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendTlsProperties via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendTlsProperties, BackendTlsPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendTlsProperties runs a test to see if a specific instance of BackendTlsProperties round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendTlsProperties(subject BackendTlsProperties) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendTlsProperties + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendTlsProperties instances for property testing - lazily instantiated by +// BackendTlsPropertiesGenerator() +var backendTlsPropertiesGenerator gopter.Gen + +// BackendTlsPropertiesGenerator returns a generator of BackendTlsProperties instances for property testing. +func BackendTlsPropertiesGenerator() gopter.Gen { + if backendTlsPropertiesGenerator != nil { + return backendTlsPropertiesGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendTlsProperties(generators) + backendTlsPropertiesGenerator = gen.Struct(reflect.TypeOf(BackendTlsProperties{}), generators) + + return backendTlsPropertiesGenerator +} + +// AddIndependentPropertyGeneratorsForBackendTlsProperties is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendTlsProperties(gens map[string]gopter.Gen) { + gens["ValidateCertificateChain"] = gen.PtrOf(gen.Bool()) + gens["ValidateCertificateName"] = gen.PtrOf(gen.Bool()) +} + +func Test_BackendTlsProperties_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendTlsProperties_STATUS to BackendTlsProperties_STATUS via AssignProperties_To_BackendTlsProperties_STATUS & AssignProperties_From_BackendTlsProperties_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendTlsProperties_STATUS, BackendTlsProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendTlsProperties_STATUS tests if a specific instance of BackendTlsProperties_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendTlsProperties_STATUS(subject BackendTlsProperties_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendTlsProperties_STATUS + err := copied.AssignProperties_To_BackendTlsProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendTlsProperties_STATUS + err = actual.AssignProperties_From_BackendTlsProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendTlsProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendTlsProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendTlsProperties_STATUS, BackendTlsProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendTlsProperties_STATUS runs a test to see if a specific instance of BackendTlsProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendTlsProperties_STATUS(subject BackendTlsProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendTlsProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendTlsProperties_STATUS instances for property testing - lazily instantiated by +// BackendTlsProperties_STATUSGenerator() +var backendTlsProperties_STATUSGenerator gopter.Gen + +// BackendTlsProperties_STATUSGenerator returns a generator of BackendTlsProperties_STATUS instances for property testing. +func BackendTlsProperties_STATUSGenerator() gopter.Gen { + if backendTlsProperties_STATUSGenerator != nil { + return backendTlsProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS(generators) + backendTlsProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendTlsProperties_STATUS{}), generators) + + return backendTlsProperties_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS(gens map[string]gopter.Gen) { + gens["ValidateCertificateChain"] = gen.PtrOf(gen.Bool()) + gens["ValidateCertificateName"] = gen.PtrOf(gen.Bool()) +} + +func Test_BackendAuthorizationHeaderCredentials_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendAuthorizationHeaderCredentials to BackendAuthorizationHeaderCredentials via AssignProperties_To_BackendAuthorizationHeaderCredentials & AssignProperties_From_BackendAuthorizationHeaderCredentials returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendAuthorizationHeaderCredentials, BackendAuthorizationHeaderCredentialsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendAuthorizationHeaderCredentials tests if a specific instance of BackendAuthorizationHeaderCredentials can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendAuthorizationHeaderCredentials(subject BackendAuthorizationHeaderCredentials) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendAuthorizationHeaderCredentials + err := copied.AssignProperties_To_BackendAuthorizationHeaderCredentials(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendAuthorizationHeaderCredentials + err = actual.AssignProperties_From_BackendAuthorizationHeaderCredentials(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendAuthorizationHeaderCredentials_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendAuthorizationHeaderCredentials via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendAuthorizationHeaderCredentials, BackendAuthorizationHeaderCredentialsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendAuthorizationHeaderCredentials runs a test to see if a specific instance of BackendAuthorizationHeaderCredentials round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendAuthorizationHeaderCredentials(subject BackendAuthorizationHeaderCredentials) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendAuthorizationHeaderCredentials + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendAuthorizationHeaderCredentials instances for property testing - lazily instantiated by +// BackendAuthorizationHeaderCredentialsGenerator() +var backendAuthorizationHeaderCredentialsGenerator gopter.Gen + +// BackendAuthorizationHeaderCredentialsGenerator returns a generator of BackendAuthorizationHeaderCredentials instances for property testing. +func BackendAuthorizationHeaderCredentialsGenerator() gopter.Gen { + if backendAuthorizationHeaderCredentialsGenerator != nil { + return backendAuthorizationHeaderCredentialsGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials(generators) + backendAuthorizationHeaderCredentialsGenerator = gen.Struct(reflect.TypeOf(BackendAuthorizationHeaderCredentials{}), generators) + + return backendAuthorizationHeaderCredentialsGenerator +} + +// AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials(gens map[string]gopter.Gen) { + gens["Parameter"] = gen.PtrOf(gen.AlphaString()) + gens["Scheme"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendAuthorizationHeaderCredentials_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendAuthorizationHeaderCredentials_STATUS to BackendAuthorizationHeaderCredentials_STATUS via AssignProperties_To_BackendAuthorizationHeaderCredentials_STATUS & AssignProperties_From_BackendAuthorizationHeaderCredentials_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendAuthorizationHeaderCredentials_STATUS, BackendAuthorizationHeaderCredentials_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendAuthorizationHeaderCredentials_STATUS tests if a specific instance of BackendAuthorizationHeaderCredentials_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendAuthorizationHeaderCredentials_STATUS(subject BackendAuthorizationHeaderCredentials_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendAuthorizationHeaderCredentials_STATUS + err := copied.AssignProperties_To_BackendAuthorizationHeaderCredentials_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendAuthorizationHeaderCredentials_STATUS + err = actual.AssignProperties_From_BackendAuthorizationHeaderCredentials_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendAuthorizationHeaderCredentials_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendAuthorizationHeaderCredentials_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS, BackendAuthorizationHeaderCredentials_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS runs a test to see if a specific instance of BackendAuthorizationHeaderCredentials_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS(subject BackendAuthorizationHeaderCredentials_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendAuthorizationHeaderCredentials_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendAuthorizationHeaderCredentials_STATUS instances for property testing - lazily instantiated by +// BackendAuthorizationHeaderCredentials_STATUSGenerator() +var backendAuthorizationHeaderCredentials_STATUSGenerator gopter.Gen + +// BackendAuthorizationHeaderCredentials_STATUSGenerator returns a generator of BackendAuthorizationHeaderCredentials_STATUS instances for property testing. +func BackendAuthorizationHeaderCredentials_STATUSGenerator() gopter.Gen { + if backendAuthorizationHeaderCredentials_STATUSGenerator != nil { + return backendAuthorizationHeaderCredentials_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS(generators) + backendAuthorizationHeaderCredentials_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendAuthorizationHeaderCredentials_STATUS{}), generators) + + return backendAuthorizationHeaderCredentials_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS(gens map[string]gopter.Gen) { + gens["Parameter"] = gen.PtrOf(gen.AlphaString()) + gens["Scheme"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendServiceFabricClusterProperties_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendServiceFabricClusterProperties to BackendServiceFabricClusterProperties via AssignProperties_To_BackendServiceFabricClusterProperties & AssignProperties_From_BackendServiceFabricClusterProperties returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendServiceFabricClusterProperties, BackendServiceFabricClusterPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendServiceFabricClusterProperties tests if a specific instance of BackendServiceFabricClusterProperties can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendServiceFabricClusterProperties(subject BackendServiceFabricClusterProperties) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendServiceFabricClusterProperties + err := copied.AssignProperties_To_BackendServiceFabricClusterProperties(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendServiceFabricClusterProperties + err = actual.AssignProperties_From_BackendServiceFabricClusterProperties(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendServiceFabricClusterProperties_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendServiceFabricClusterProperties via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendServiceFabricClusterProperties, BackendServiceFabricClusterPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendServiceFabricClusterProperties runs a test to see if a specific instance of BackendServiceFabricClusterProperties round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendServiceFabricClusterProperties(subject BackendServiceFabricClusterProperties) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendServiceFabricClusterProperties + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendServiceFabricClusterProperties instances for property testing - lazily instantiated by +// BackendServiceFabricClusterPropertiesGenerator() +var backendServiceFabricClusterPropertiesGenerator gopter.Gen + +// BackendServiceFabricClusterPropertiesGenerator returns a generator of BackendServiceFabricClusterProperties instances for property testing. +// We first initialize backendServiceFabricClusterPropertiesGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendServiceFabricClusterPropertiesGenerator() gopter.Gen { + if backendServiceFabricClusterPropertiesGenerator != nil { + return backendServiceFabricClusterPropertiesGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties(generators) + backendServiceFabricClusterPropertiesGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties(generators) + AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties(generators) + backendServiceFabricClusterPropertiesGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties{}), generators) + + return backendServiceFabricClusterPropertiesGenerator +} + +// AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties(gens map[string]gopter.Gen) { + gens["ClientCertificateId"] = gen.PtrOf(gen.AlphaString()) + gens["ClientCertificatethumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["ManagementEndpoints"] = gen.SliceOf(gen.AlphaString()) + gens["MaxPartitionResolutionRetries"] = gen.PtrOf(gen.Int()) + gens["ServerCertificateThumbprints"] = gen.SliceOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties(gens map[string]gopter.Gen) { + gens["ServerX509Names"] = gen.SliceOf(X509CertificateNameGenerator()) +} + +func Test_BackendServiceFabricClusterProperties_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from BackendServiceFabricClusterProperties_STATUS to BackendServiceFabricClusterProperties_STATUS via AssignProperties_To_BackendServiceFabricClusterProperties_STATUS & AssignProperties_From_BackendServiceFabricClusterProperties_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForBackendServiceFabricClusterProperties_STATUS, BackendServiceFabricClusterProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackendServiceFabricClusterProperties_STATUS tests if a specific instance of BackendServiceFabricClusterProperties_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForBackendServiceFabricClusterProperties_STATUS(subject BackendServiceFabricClusterProperties_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.BackendServiceFabricClusterProperties_STATUS + err := copied.AssignProperties_To_BackendServiceFabricClusterProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual BackendServiceFabricClusterProperties_STATUS + err = actual.AssignProperties_From_BackendServiceFabricClusterProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_BackendServiceFabricClusterProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendServiceFabricClusterProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS, BackendServiceFabricClusterProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS runs a test to see if a specific instance of BackendServiceFabricClusterProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS(subject BackendServiceFabricClusterProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendServiceFabricClusterProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendServiceFabricClusterProperties_STATUS instances for property testing - lazily instantiated by +// BackendServiceFabricClusterProperties_STATUSGenerator() +var backendServiceFabricClusterProperties_STATUSGenerator gopter.Gen + +// BackendServiceFabricClusterProperties_STATUSGenerator returns a generator of BackendServiceFabricClusterProperties_STATUS instances for property testing. +// We first initialize backendServiceFabricClusterProperties_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendServiceFabricClusterProperties_STATUSGenerator() gopter.Gen { + if backendServiceFabricClusterProperties_STATUSGenerator != nil { + return backendServiceFabricClusterProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(generators) + backendServiceFabricClusterProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(generators) + AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(generators) + backendServiceFabricClusterProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties_STATUS{}), generators) + + return backendServiceFabricClusterProperties_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(gens map[string]gopter.Gen) { + gens["ClientCertificateId"] = gen.PtrOf(gen.AlphaString()) + gens["ClientCertificatethumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["ManagementEndpoints"] = gen.SliceOf(gen.AlphaString()) + gens["MaxPartitionResolutionRetries"] = gen.PtrOf(gen.Int()) + gens["ServerCertificateThumbprints"] = gen.SliceOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(gens map[string]gopter.Gen) { + gens["ServerX509Names"] = gen.SliceOf(X509CertificateName_STATUSGenerator()) +} + +func Test_X509CertificateName_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from X509CertificateName to X509CertificateName via AssignProperties_To_X509CertificateName & AssignProperties_From_X509CertificateName returns original", + prop.ForAll(RunPropertyAssignmentTestForX509CertificateName, X509CertificateNameGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForX509CertificateName tests if a specific instance of X509CertificateName can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForX509CertificateName(subject X509CertificateName) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.X509CertificateName + err := copied.AssignProperties_To_X509CertificateName(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual X509CertificateName + err = actual.AssignProperties_From_X509CertificateName(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_X509CertificateName_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of X509CertificateName via JSON returns original", + prop.ForAll(RunJSONSerializationTestForX509CertificateName, X509CertificateNameGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForX509CertificateName runs a test to see if a specific instance of X509CertificateName round trips to JSON and back losslessly +func RunJSONSerializationTestForX509CertificateName(subject X509CertificateName) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual X509CertificateName + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of X509CertificateName instances for property testing - lazily instantiated by +// X509CertificateNameGenerator() +var x509CertificateNameGenerator gopter.Gen + +// X509CertificateNameGenerator returns a generator of X509CertificateName instances for property testing. +func X509CertificateNameGenerator() gopter.Gen { + if x509CertificateNameGenerator != nil { + return x509CertificateNameGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForX509CertificateName(generators) + x509CertificateNameGenerator = gen.Struct(reflect.TypeOf(X509CertificateName{}), generators) + + return x509CertificateNameGenerator +} + +// AddIndependentPropertyGeneratorsForX509CertificateName is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForX509CertificateName(gens map[string]gopter.Gen) { + gens["IssuerCertificateThumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_X509CertificateName_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from X509CertificateName_STATUS to X509CertificateName_STATUS via AssignProperties_To_X509CertificateName_STATUS & AssignProperties_From_X509CertificateName_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForX509CertificateName_STATUS, X509CertificateName_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForX509CertificateName_STATUS tests if a specific instance of X509CertificateName_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForX509CertificateName_STATUS(subject X509CertificateName_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.X509CertificateName_STATUS + err := copied.AssignProperties_To_X509CertificateName_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual X509CertificateName_STATUS + err = actual.AssignProperties_From_X509CertificateName_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_X509CertificateName_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of X509CertificateName_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForX509CertificateName_STATUS, X509CertificateName_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForX509CertificateName_STATUS runs a test to see if a specific instance of X509CertificateName_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForX509CertificateName_STATUS(subject X509CertificateName_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual X509CertificateName_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of X509CertificateName_STATUS instances for property testing - lazily instantiated by +// X509CertificateName_STATUSGenerator() +var x509CertificateName_STATUSGenerator gopter.Gen + +// X509CertificateName_STATUSGenerator returns a generator of X509CertificateName_STATUS instances for property testing. +func X509CertificateName_STATUSGenerator() gopter.Gen { + if x509CertificateName_STATUSGenerator != nil { + return x509CertificateName_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForX509CertificateName_STATUS(generators) + x509CertificateName_STATUSGenerator = gen.Struct(reflect.TypeOf(X509CertificateName_STATUS{}), generators) + + return x509CertificateName_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForX509CertificateName_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForX509CertificateName_STATUS(gens map[string]gopter.Gen) { + gens["IssuerCertificateThumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801/named_value_types_gen.go b/v2/api/apimanagement/v1api20220801/named_value_types_gen.go new file mode 100644 index 00000000000..155f7c4dfe3 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/named_value_types_gen.go @@ -0,0 +1,1365 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "fmt" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/Azure/azure-service-operator/v2/internal/reflecthelpers" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" + "sigs.k8s.io/controller-runtime/pkg/webhook/admission" +) + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimnamedvalues.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId} +type NamedValue struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec Service_NamedValue_Spec `json:"spec,omitempty"` + Status Service_NamedValue_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &NamedValue{} + +// GetConditions returns the conditions of the resource +func (value *NamedValue) GetConditions() conditions.Conditions { + return value.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (value *NamedValue) SetConditions(conditions conditions.Conditions) { + value.Status.Conditions = conditions +} + +var _ conversion.Convertible = &NamedValue{} + +// ConvertFrom populates our NamedValue from the provided hub NamedValue +func (value *NamedValue) ConvertFrom(hub conversion.Hub) error { + source, ok := hub.(*v20220801s.NamedValue) + if !ok { + return fmt.Errorf("expected apimanagement/v1api20220801storage/NamedValue but received %T instead", hub) + } + + return value.AssignProperties_From_NamedValue(source) +} + +// ConvertTo populates the provided hub NamedValue from our NamedValue +func (value *NamedValue) ConvertTo(hub conversion.Hub) error { + destination, ok := hub.(*v20220801s.NamedValue) + if !ok { + return fmt.Errorf("expected apimanagement/v1api20220801storage/NamedValue but received %T instead", hub) + } + + return value.AssignProperties_To_NamedValue(destination) +} + +// +kubebuilder:webhook:path=/mutate-apimanagement-azure-com-v1api20220801-namedvalue,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=apimanagement.azure.com,resources=namedvalues,verbs=create;update,versions=v1api20220801,name=default.v1api20220801.namedvalues.apimanagement.azure.com,admissionReviewVersions=v1 + +var _ admission.Defaulter = &NamedValue{} + +// Default applies defaults to the NamedValue resource +func (value *NamedValue) Default() { + value.defaultImpl() + var temp any = value + if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok { + runtimeDefaulter.CustomDefault() + } +} + +// defaultAzureName defaults the Azure name of the resource to the Kubernetes name +func (value *NamedValue) defaultAzureName() { + if value.Spec.AzureName == "" { + value.Spec.AzureName = value.Name + } +} + +// defaultImpl applies the code generated defaults to the NamedValue resource +func (value *NamedValue) defaultImpl() { value.defaultAzureName() } + +var _ genruntime.ImportableResource = &NamedValue{} + +// InitializeSpec initializes the spec for this resource from the given status +func (value *NamedValue) InitializeSpec(status genruntime.ConvertibleStatus) error { + if s, ok := status.(*Service_NamedValue_STATUS); ok { + return value.Spec.Initialize_From_Service_NamedValue_STATUS(s) + } + + return fmt.Errorf("expected Status of type Service_NamedValue_STATUS but received %T instead", status) +} + +var _ genruntime.KubernetesResource = &NamedValue{} + +// AzureName returns the Azure name of the resource +func (value *NamedValue) AzureName() string { + return value.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (value NamedValue) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (value *NamedValue) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (value *NamedValue) GetSpec() genruntime.ConvertibleSpec { + return &value.Spec +} + +// GetStatus returns the status of this resource +func (value *NamedValue) GetStatus() genruntime.ConvertibleStatus { + return &value.Status +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/namedValues" +func (value *NamedValue) GetType() string { + return "Microsoft.ApiManagement/service/namedValues" +} + +// NewEmptyStatus returns a new empty (blank) status +func (value *NamedValue) NewEmptyStatus() genruntime.ConvertibleStatus { + return &Service_NamedValue_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (value *NamedValue) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(value.Spec) + return value.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (value *NamedValue) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*Service_NamedValue_STATUS); ok { + value.Status = *st + return nil + } + + // Convert status to required version + var st Service_NamedValue_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + value.Status = st + return nil +} + +// +kubebuilder:webhook:path=/validate-apimanagement-azure-com-v1api20220801-namedvalue,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=apimanagement.azure.com,resources=namedvalues,verbs=create;update,versions=v1api20220801,name=validate.v1api20220801.namedvalues.apimanagement.azure.com,admissionReviewVersions=v1 + +var _ admission.Validator = &NamedValue{} + +// ValidateCreate validates the creation of the resource +func (value *NamedValue) ValidateCreate() (admission.Warnings, error) { + validations := value.createValidations() + var temp any = value + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.CreateValidations()...) + } + return genruntime.ValidateCreate(validations) +} + +// ValidateDelete validates the deletion of the resource +func (value *NamedValue) ValidateDelete() (admission.Warnings, error) { + validations := value.deleteValidations() + var temp any = value + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.DeleteValidations()...) + } + return genruntime.ValidateDelete(validations) +} + +// ValidateUpdate validates an update of the resource +func (value *NamedValue) ValidateUpdate(old runtime.Object) (admission.Warnings, error) { + validations := value.updateValidations() + var temp any = value + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.UpdateValidations()...) + } + return genruntime.ValidateUpdate(old, validations) +} + +// createValidations validates the creation of the resource +func (value *NamedValue) createValidations() []func() (admission.Warnings, error) { + return []func() (admission.Warnings, error){value.validateResourceReferences, value.validateOwnerReference, value.validateOptionalConfigMapReferences} +} + +// deleteValidations validates the deletion of the resource +func (value *NamedValue) deleteValidations() []func() (admission.Warnings, error) { + return nil +} + +// updateValidations validates the update of the resource +func (value *NamedValue) updateValidations() []func(old runtime.Object) (admission.Warnings, error) { + return []func(old runtime.Object) (admission.Warnings, error){ + func(old runtime.Object) (admission.Warnings, error) { + return value.validateResourceReferences() + }, + value.validateWriteOnceProperties, + func(old runtime.Object) (admission.Warnings, error) { + return value.validateOwnerReference() + }, + func(old runtime.Object) (admission.Warnings, error) { + return value.validateOptionalConfigMapReferences() + }, + } +} + +// validateOptionalConfigMapReferences validates all optional configmap reference pairs to ensure that at most 1 is set +func (value *NamedValue) validateOptionalConfigMapReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindOptionalConfigMapReferences(&value.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateOptionalConfigMapReferences(refs) +} + +// validateOwnerReference validates the owner field +func (value *NamedValue) validateOwnerReference() (admission.Warnings, error) { + return genruntime.ValidateOwner(value) +} + +// validateResourceReferences validates all resource references +func (value *NamedValue) validateResourceReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindResourceReferences(&value.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateResourceReferences(refs) +} + +// validateWriteOnceProperties validates all WriteOnce properties +func (value *NamedValue) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) { + oldObj, ok := old.(*NamedValue) + if !ok { + return nil, nil + } + + return genruntime.ValidateWriteOnceProperties(oldObj, value) +} + +// AssignProperties_From_NamedValue populates our NamedValue from the provided source NamedValue +func (value *NamedValue) AssignProperties_From_NamedValue(source *v20220801s.NamedValue) error { + + // ObjectMeta + value.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec Service_NamedValue_Spec + err := spec.AssignProperties_From_Service_NamedValue_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Service_NamedValue_Spec() to populate field Spec") + } + value.Spec = spec + + // Status + var status Service_NamedValue_STATUS + err = status.AssignProperties_From_Service_NamedValue_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Service_NamedValue_STATUS() to populate field Status") + } + value.Status = status + + // No error + return nil +} + +// AssignProperties_To_NamedValue populates the provided destination NamedValue from our NamedValue +func (value *NamedValue) AssignProperties_To_NamedValue(destination *v20220801s.NamedValue) error { + + // ObjectMeta + destination.ObjectMeta = *value.ObjectMeta.DeepCopy() + + // Spec + var spec v20220801s.Service_NamedValue_Spec + err := value.Spec.AssignProperties_To_Service_NamedValue_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Service_NamedValue_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20220801s.Service_NamedValue_STATUS + err = value.Status.AssignProperties_To_Service_NamedValue_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Service_NamedValue_STATUS() to populate field Status") + } + destination.Status = status + + // No error + return nil +} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (value *NamedValue) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: value.Spec.OriginalVersion(), + Kind: "NamedValue", + } +} + +// +kubebuilder:object:root=true +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimnamedvalues.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId} +type NamedValueList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []NamedValue `json:"items"` +} + +type Service_NamedValue_Spec struct { + // +kubebuilder:validation:MaxLength=256 + // +kubebuilder:validation:Pattern="^[^*#&+:<>?]+$" + // AzureName: The name of the resource in Azure. This is often the same as the name of the resource in Kubernetes but it + // doesn't have to be. + AzureName string `json:"azureName,omitempty"` + + // +kubebuilder:validation:Required + // +kubebuilder:validation:MaxLength=256 + // +kubebuilder:validation:MinLength=1 + // +kubebuilder:validation:Pattern="^[A-Za-z0-9-._]+$" + // DisplayName: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. + DisplayName *string `json:"displayName,omitempty"` + + // KeyVault: KeyVault location details of the namedValue. + KeyVault *KeyVaultContractCreateProperties `json:"keyVault,omitempty"` + + // +kubebuilder:validation:Required + // Owner: The owner of the resource. The owner controls where the resource goes when it is deployed. The owner also + // controls the resources lifecycle. When the owner is deleted the resource will also be deleted. Owner is expected to be a + // reference to a apimanagement.azure.com/Service resource + Owner *genruntime.KnownResourceReference `group:"apimanagement.azure.com" json:"owner,omitempty" kind:"Service"` + + // Secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. + Secret *bool `json:"secret,omitempty"` + + // +kubebuilder:validation:MaxItems=32 + // Tags: Optional tags that when provided can be used to filter the NamedValue list. + Tags []string `json:"tags,omitempty"` + + // +kubebuilder:validation:MaxLength=4096 + // Value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This + // property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. + Value *string `json:"value,omitempty"` +} + +var _ genruntime.ARMTransformer = &Service_NamedValue_Spec{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (value *Service_NamedValue_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if value == nil { + return nil, nil + } + result := &Service_NamedValue_Spec_ARM{} + + // Set property "Name": + result.Name = resolved.Name + + // Set property "Properties": + if value.DisplayName != nil || + value.KeyVault != nil || + value.Secret != nil || + value.Tags != nil || + value.Value != nil { + result.Properties = &NamedValueCreateContractProperties_ARM{} + } + if value.DisplayName != nil { + displayName := *value.DisplayName + result.Properties.DisplayName = &displayName + } + if value.KeyVault != nil { + keyVault_ARM, err := (*value.KeyVault).ConvertToARM(resolved) + if err != nil { + return nil, err + } + keyVault := *keyVault_ARM.(*KeyVaultContractCreateProperties_ARM) + result.Properties.KeyVault = &keyVault + } + if value.Secret != nil { + secret := *value.Secret + result.Properties.Secret = &secret + } + for _, item := range value.Tags { + result.Properties.Tags = append(result.Properties.Tags, item) + } + if value.Value != nil { + value1 := *value.Value + result.Properties.Value = &value1 + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (value *Service_NamedValue_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Service_NamedValue_Spec_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (value *Service_NamedValue_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Service_NamedValue_Spec_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Service_NamedValue_Spec_ARM, got %T", armInput) + } + + // Set property "AzureName": + value.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name)) + + // Set property "DisplayName": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DisplayName != nil { + displayName := *typedInput.Properties.DisplayName + value.DisplayName = &displayName + } + } + + // Set property "KeyVault": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.KeyVault != nil { + var keyVault1 KeyVaultContractCreateProperties + err := keyVault1.PopulateFromARM(owner, *typedInput.Properties.KeyVault) + if err != nil { + return err + } + keyVault := keyVault1 + value.KeyVault = &keyVault + } + } + + // Set property "Owner": + value.Owner = &genruntime.KnownResourceReference{ + Name: owner.Name, + ARMID: owner.ARMID, + } + + // Set property "Secret": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Secret != nil { + secret := *typedInput.Properties.Secret + value.Secret = &secret + } + } + + // Set property "Tags": + // copying flattened property: + if typedInput.Properties != nil { + for _, item := range typedInput.Properties.Tags { + value.Tags = append(value.Tags, item) + } + } + + // Set property "Value": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Value != nil { + value1 := *typedInput.Properties.Value + value.Value = &value1 + } + } + + // No error + return nil +} + +var _ genruntime.ConvertibleSpec = &Service_NamedValue_Spec{} + +// ConvertSpecFrom populates our Service_NamedValue_Spec from the provided source +func (value *Service_NamedValue_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20220801s.Service_NamedValue_Spec) + if ok { + // Populate our instance from source + return value.AssignProperties_From_Service_NamedValue_Spec(src) + } + + // Convert to an intermediate form + src = &v20220801s.Service_NamedValue_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = value.AssignProperties_From_Service_NamedValue_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our Service_NamedValue_Spec +func (value *Service_NamedValue_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20220801s.Service_NamedValue_Spec) + if ok { + // Populate destination from our instance + return value.AssignProperties_To_Service_NamedValue_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20220801s.Service_NamedValue_Spec{} + err := value.AssignProperties_To_Service_NamedValue_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_Service_NamedValue_Spec populates our Service_NamedValue_Spec from the provided source Service_NamedValue_Spec +func (value *Service_NamedValue_Spec) AssignProperties_From_Service_NamedValue_Spec(source *v20220801s.Service_NamedValue_Spec) error { + + // AzureName + value.AzureName = source.AzureName + + // DisplayName + if source.DisplayName != nil { + displayName := *source.DisplayName + value.DisplayName = &displayName + } else { + value.DisplayName = nil + } + + // KeyVault + if source.KeyVault != nil { + var keyVault KeyVaultContractCreateProperties + err := keyVault.AssignProperties_From_KeyVaultContractCreateProperties(source.KeyVault) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_KeyVaultContractCreateProperties() to populate field KeyVault") + } + value.KeyVault = &keyVault + } else { + value.KeyVault = nil + } + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + value.Owner = &owner + } else { + value.Owner = nil + } + + // Secret + if source.Secret != nil { + secret := *source.Secret + value.Secret = &secret + } else { + value.Secret = nil + } + + // Tags + if source.Tags != nil { + tagList := make([]string, len(source.Tags)) + for tagIndex, tagItem := range source.Tags { + // Shadow the loop variable to avoid aliasing + tagItem := tagItem + tagList[tagIndex] = tagItem + } + value.Tags = tagList + } else { + value.Tags = nil + } + + // Value + if source.Value != nil { + valueTemp := *source.Value + value.Value = &valueTemp + } else { + value.Value = nil + } + + // No error + return nil +} + +// AssignProperties_To_Service_NamedValue_Spec populates the provided destination Service_NamedValue_Spec from our Service_NamedValue_Spec +func (value *Service_NamedValue_Spec) AssignProperties_To_Service_NamedValue_Spec(destination *v20220801s.Service_NamedValue_Spec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AzureName + destination.AzureName = value.AzureName + + // DisplayName + if value.DisplayName != nil { + displayName := *value.DisplayName + destination.DisplayName = &displayName + } else { + destination.DisplayName = nil + } + + // KeyVault + if value.KeyVault != nil { + var keyVault v20220801s.KeyVaultContractCreateProperties + err := value.KeyVault.AssignProperties_To_KeyVaultContractCreateProperties(&keyVault) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_KeyVaultContractCreateProperties() to populate field KeyVault") + } + destination.KeyVault = &keyVault + } else { + destination.KeyVault = nil + } + + // OriginalVersion + destination.OriginalVersion = value.OriginalVersion() + + // Owner + if value.Owner != nil { + owner := value.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // Secret + if value.Secret != nil { + secret := *value.Secret + destination.Secret = &secret + } else { + destination.Secret = nil + } + + // Tags + if value.Tags != nil { + tagList := make([]string, len(value.Tags)) + for tagIndex, tagItem := range value.Tags { + // Shadow the loop variable to avoid aliasing + tagItem := tagItem + tagList[tagIndex] = tagItem + } + destination.Tags = tagList + } else { + destination.Tags = nil + } + + // Value + if value.Value != nil { + valueTemp := *value.Value + destination.Value = &valueTemp + } else { + destination.Value = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_Service_NamedValue_STATUS populates our Service_NamedValue_Spec from the provided source Service_NamedValue_STATUS +func (value *Service_NamedValue_Spec) Initialize_From_Service_NamedValue_STATUS(source *Service_NamedValue_STATUS) error { + + // DisplayName + if source.DisplayName != nil { + displayName := *source.DisplayName + value.DisplayName = &displayName + } else { + value.DisplayName = nil + } + + // KeyVault + if source.KeyVault != nil { + var keyVault KeyVaultContractCreateProperties + err := keyVault.Initialize_From_KeyVaultContractProperties_STATUS(source.KeyVault) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_KeyVaultContractProperties_STATUS() to populate field KeyVault") + } + value.KeyVault = &keyVault + } else { + value.KeyVault = nil + } + + // Secret + if source.Secret != nil { + secret := *source.Secret + value.Secret = &secret + } else { + value.Secret = nil + } + + // Tags + if source.Tags != nil { + tagList := make([]string, len(source.Tags)) + for tagIndex, tagItem := range source.Tags { + // Shadow the loop variable to avoid aliasing + tagItem := tagItem + tagList[tagIndex] = tagItem + } + value.Tags = tagList + } else { + value.Tags = nil + } + + // Value + if source.Value != nil { + valueTemp := *source.Value + value.Value = &valueTemp + } else { + value.Value = nil + } + + // No error + return nil +} + +// OriginalVersion returns the original API version used to create the resource. +func (value *Service_NamedValue_Spec) OriginalVersion() string { + return GroupVersion.Version +} + +// SetAzureName sets the Azure name of the resource +func (value *Service_NamedValue_Spec) SetAzureName(azureName string) { value.AzureName = azureName } + +type Service_NamedValue_STATUS struct { + // Conditions: The observed state of the resource + Conditions []conditions.Condition `json:"conditions,omitempty"` + + // DisplayName: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. + DisplayName *string `json:"displayName,omitempty"` + + // Id: Fully qualified resource ID for the resource. Ex - + // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + Id *string `json:"id,omitempty"` + + // KeyVault: KeyVault location details of the namedValue. + KeyVault *KeyVaultContractProperties_STATUS `json:"keyVault,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // Secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. + Secret *bool `json:"secret,omitempty"` + + // Tags: Optional tags that when provided can be used to filter the NamedValue list. + Tags []string `json:"tags,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` + + // Value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This + // property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. + Value *string `json:"value,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &Service_NamedValue_STATUS{} + +// ConvertStatusFrom populates our Service_NamedValue_STATUS from the provided source +func (value *Service_NamedValue_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20220801s.Service_NamedValue_STATUS) + if ok { + // Populate our instance from source + return value.AssignProperties_From_Service_NamedValue_STATUS(src) + } + + // Convert to an intermediate form + src = &v20220801s.Service_NamedValue_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = value.AssignProperties_From_Service_NamedValue_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our Service_NamedValue_STATUS +func (value *Service_NamedValue_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20220801s.Service_NamedValue_STATUS) + if ok { + // Populate destination from our instance + return value.AssignProperties_To_Service_NamedValue_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20220801s.Service_NamedValue_STATUS{} + err := value.AssignProperties_To_Service_NamedValue_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +var _ genruntime.FromARMConverter = &Service_NamedValue_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (value *Service_NamedValue_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Service_NamedValue_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (value *Service_NamedValue_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Service_NamedValue_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Service_NamedValue_STATUS_ARM, got %T", armInput) + } + + // no assignment for property "Conditions" + + // Set property "DisplayName": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DisplayName != nil { + displayName := *typedInput.Properties.DisplayName + value.DisplayName = &displayName + } + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + value.Id = &id + } + + // Set property "KeyVault": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.KeyVault != nil { + var keyVault1 KeyVaultContractProperties_STATUS + err := keyVault1.PopulateFromARM(owner, *typedInput.Properties.KeyVault) + if err != nil { + return err + } + keyVault := keyVault1 + value.KeyVault = &keyVault + } + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + value.Name = &name + } + + // Set property "Secret": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Secret != nil { + secret := *typedInput.Properties.Secret + value.Secret = &secret + } + } + + // Set property "Tags": + // copying flattened property: + if typedInput.Properties != nil { + for _, item := range typedInput.Properties.Tags { + value.Tags = append(value.Tags, item) + } + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + value.Type = &typeVar + } + + // Set property "Value": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Value != nil { + value1 := *typedInput.Properties.Value + value.Value = &value1 + } + } + + // No error + return nil +} + +// AssignProperties_From_Service_NamedValue_STATUS populates our Service_NamedValue_STATUS from the provided source Service_NamedValue_STATUS +func (value *Service_NamedValue_STATUS) AssignProperties_From_Service_NamedValue_STATUS(source *v20220801s.Service_NamedValue_STATUS) error { + + // Conditions + value.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // DisplayName + value.DisplayName = genruntime.ClonePointerToString(source.DisplayName) + + // Id + value.Id = genruntime.ClonePointerToString(source.Id) + + // KeyVault + if source.KeyVault != nil { + var keyVault KeyVaultContractProperties_STATUS + err := keyVault.AssignProperties_From_KeyVaultContractProperties_STATUS(source.KeyVault) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_KeyVaultContractProperties_STATUS() to populate field KeyVault") + } + value.KeyVault = &keyVault + } else { + value.KeyVault = nil + } + + // Name + value.Name = genruntime.ClonePointerToString(source.Name) + + // Secret + if source.Secret != nil { + secret := *source.Secret + value.Secret = &secret + } else { + value.Secret = nil + } + + // Tags + value.Tags = genruntime.CloneSliceOfString(source.Tags) + + // Type + value.Type = genruntime.ClonePointerToString(source.Type) + + // Value + value.Value = genruntime.ClonePointerToString(source.Value) + + // No error + return nil +} + +// AssignProperties_To_Service_NamedValue_STATUS populates the provided destination Service_NamedValue_STATUS from our Service_NamedValue_STATUS +func (value *Service_NamedValue_STATUS) AssignProperties_To_Service_NamedValue_STATUS(destination *v20220801s.Service_NamedValue_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(value.Conditions) + + // DisplayName + destination.DisplayName = genruntime.ClonePointerToString(value.DisplayName) + + // Id + destination.Id = genruntime.ClonePointerToString(value.Id) + + // KeyVault + if value.KeyVault != nil { + var keyVault v20220801s.KeyVaultContractProperties_STATUS + err := value.KeyVault.AssignProperties_To_KeyVaultContractProperties_STATUS(&keyVault) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_KeyVaultContractProperties_STATUS() to populate field KeyVault") + } + destination.KeyVault = &keyVault + } else { + destination.KeyVault = nil + } + + // Name + destination.Name = genruntime.ClonePointerToString(value.Name) + + // Secret + if value.Secret != nil { + secret := *value.Secret + destination.Secret = &secret + } else { + destination.Secret = nil + } + + // Tags + destination.Tags = genruntime.CloneSliceOfString(value.Tags) + + // Type + destination.Type = genruntime.ClonePointerToString(value.Type) + + // Value + destination.Value = genruntime.ClonePointerToString(value.Value) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Create keyVault contract details. +type KeyVaultContractCreateProperties struct { + // IdentityClientId: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used to access + // key vault secret. + IdentityClientId *string `json:"identityClientId,omitempty" optionalConfigMapPair:"IdentityClientId"` + + // IdentityClientIdFromConfig: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used + // to access key vault secret. + IdentityClientIdFromConfig *genruntime.ConfigMapReference `json:"identityClientIdFromConfig,omitempty" optionalConfigMapPair:"IdentityClientId"` + + // SecretIdentifier: Key vault secret identifier for fetching secret. Providing a versioned secret will prevent + // auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi + SecretIdentifier *string `json:"secretIdentifier,omitempty"` +} + +var _ genruntime.ARMTransformer = &KeyVaultContractCreateProperties{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (properties *KeyVaultContractCreateProperties) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if properties == nil { + return nil, nil + } + result := &KeyVaultContractCreateProperties_ARM{} + + // Set property "IdentityClientId": + if properties.IdentityClientId != nil { + identityClientId := *properties.IdentityClientId + result.IdentityClientId = &identityClientId + } + if properties.IdentityClientIdFromConfig != nil { + identityClientIdValue, err := resolved.ResolvedConfigMaps.Lookup(*properties.IdentityClientIdFromConfig) + if err != nil { + return nil, errors.Wrap(err, "looking up configmap for property IdentityClientId") + } + identityClientId := identityClientIdValue + result.IdentityClientId = &identityClientId + } + + // Set property "SecretIdentifier": + if properties.SecretIdentifier != nil { + secretIdentifier := *properties.SecretIdentifier + result.SecretIdentifier = &secretIdentifier + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *KeyVaultContractCreateProperties) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &KeyVaultContractCreateProperties_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *KeyVaultContractCreateProperties) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(KeyVaultContractCreateProperties_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected KeyVaultContractCreateProperties_ARM, got %T", armInput) + } + + // Set property "IdentityClientId": + if typedInput.IdentityClientId != nil { + identityClientId := *typedInput.IdentityClientId + properties.IdentityClientId = &identityClientId + } + + // no assignment for property "IdentityClientIdFromConfig" + + // Set property "SecretIdentifier": + if typedInput.SecretIdentifier != nil { + secretIdentifier := *typedInput.SecretIdentifier + properties.SecretIdentifier = &secretIdentifier + } + + // No error + return nil +} + +// AssignProperties_From_KeyVaultContractCreateProperties populates our KeyVaultContractCreateProperties from the provided source KeyVaultContractCreateProperties +func (properties *KeyVaultContractCreateProperties) AssignProperties_From_KeyVaultContractCreateProperties(source *v20220801s.KeyVaultContractCreateProperties) error { + + // IdentityClientId + properties.IdentityClientId = genruntime.ClonePointerToString(source.IdentityClientId) + + // IdentityClientIdFromConfig + if source.IdentityClientIdFromConfig != nil { + identityClientIdFromConfig := source.IdentityClientIdFromConfig.Copy() + properties.IdentityClientIdFromConfig = &identityClientIdFromConfig + } else { + properties.IdentityClientIdFromConfig = nil + } + + // SecretIdentifier + properties.SecretIdentifier = genruntime.ClonePointerToString(source.SecretIdentifier) + + // No error + return nil +} + +// AssignProperties_To_KeyVaultContractCreateProperties populates the provided destination KeyVaultContractCreateProperties from our KeyVaultContractCreateProperties +func (properties *KeyVaultContractCreateProperties) AssignProperties_To_KeyVaultContractCreateProperties(destination *v20220801s.KeyVaultContractCreateProperties) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // IdentityClientId + destination.IdentityClientId = genruntime.ClonePointerToString(properties.IdentityClientId) + + // IdentityClientIdFromConfig + if properties.IdentityClientIdFromConfig != nil { + identityClientIdFromConfig := properties.IdentityClientIdFromConfig.Copy() + destination.IdentityClientIdFromConfig = &identityClientIdFromConfig + } else { + destination.IdentityClientIdFromConfig = nil + } + + // SecretIdentifier + destination.SecretIdentifier = genruntime.ClonePointerToString(properties.SecretIdentifier) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_KeyVaultContractProperties_STATUS populates our KeyVaultContractCreateProperties from the provided source KeyVaultContractProperties_STATUS +func (properties *KeyVaultContractCreateProperties) Initialize_From_KeyVaultContractProperties_STATUS(source *KeyVaultContractProperties_STATUS) error { + + // IdentityClientId + properties.IdentityClientId = genruntime.ClonePointerToString(source.IdentityClientId) + + // SecretIdentifier + properties.SecretIdentifier = genruntime.ClonePointerToString(source.SecretIdentifier) + + // No error + return nil +} + +// KeyVault contract details. +type KeyVaultContractProperties_STATUS struct { + // IdentityClientId: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used to access + // key vault secret. + IdentityClientId *string `json:"identityClientId,omitempty"` + + // LastStatus: Last time sync and refresh status of secret from key vault. + LastStatus *KeyVaultLastAccessStatusContractProperties_STATUS `json:"lastStatus,omitempty"` + + // SecretIdentifier: Key vault secret identifier for fetching secret. Providing a versioned secret will prevent + // auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi + SecretIdentifier *string `json:"secretIdentifier,omitempty"` +} + +var _ genruntime.FromARMConverter = &KeyVaultContractProperties_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *KeyVaultContractProperties_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &KeyVaultContractProperties_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *KeyVaultContractProperties_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(KeyVaultContractProperties_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected KeyVaultContractProperties_STATUS_ARM, got %T", armInput) + } + + // Set property "IdentityClientId": + if typedInput.IdentityClientId != nil { + identityClientId := *typedInput.IdentityClientId + properties.IdentityClientId = &identityClientId + } + + // Set property "LastStatus": + if typedInput.LastStatus != nil { + var lastStatus1 KeyVaultLastAccessStatusContractProperties_STATUS + err := lastStatus1.PopulateFromARM(owner, *typedInput.LastStatus) + if err != nil { + return err + } + lastStatus := lastStatus1 + properties.LastStatus = &lastStatus + } + + // Set property "SecretIdentifier": + if typedInput.SecretIdentifier != nil { + secretIdentifier := *typedInput.SecretIdentifier + properties.SecretIdentifier = &secretIdentifier + } + + // No error + return nil +} + +// AssignProperties_From_KeyVaultContractProperties_STATUS populates our KeyVaultContractProperties_STATUS from the provided source KeyVaultContractProperties_STATUS +func (properties *KeyVaultContractProperties_STATUS) AssignProperties_From_KeyVaultContractProperties_STATUS(source *v20220801s.KeyVaultContractProperties_STATUS) error { + + // IdentityClientId + properties.IdentityClientId = genruntime.ClonePointerToString(source.IdentityClientId) + + // LastStatus + if source.LastStatus != nil { + var lastStatus KeyVaultLastAccessStatusContractProperties_STATUS + err := lastStatus.AssignProperties_From_KeyVaultLastAccessStatusContractProperties_STATUS(source.LastStatus) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_KeyVaultLastAccessStatusContractProperties_STATUS() to populate field LastStatus") + } + properties.LastStatus = &lastStatus + } else { + properties.LastStatus = nil + } + + // SecretIdentifier + properties.SecretIdentifier = genruntime.ClonePointerToString(source.SecretIdentifier) + + // No error + return nil +} + +// AssignProperties_To_KeyVaultContractProperties_STATUS populates the provided destination KeyVaultContractProperties_STATUS from our KeyVaultContractProperties_STATUS +func (properties *KeyVaultContractProperties_STATUS) AssignProperties_To_KeyVaultContractProperties_STATUS(destination *v20220801s.KeyVaultContractProperties_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // IdentityClientId + destination.IdentityClientId = genruntime.ClonePointerToString(properties.IdentityClientId) + + // LastStatus + if properties.LastStatus != nil { + var lastStatus v20220801s.KeyVaultLastAccessStatusContractProperties_STATUS + err := properties.LastStatus.AssignProperties_To_KeyVaultLastAccessStatusContractProperties_STATUS(&lastStatus) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_KeyVaultLastAccessStatusContractProperties_STATUS() to populate field LastStatus") + } + destination.LastStatus = &lastStatus + } else { + destination.LastStatus = nil + } + + // SecretIdentifier + destination.SecretIdentifier = genruntime.ClonePointerToString(properties.SecretIdentifier) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Issue contract Update Properties. +type KeyVaultLastAccessStatusContractProperties_STATUS struct { + // Code: Last status code for sync and refresh of secret from key vault. + Code *string `json:"code,omitempty"` + + // Message: Details of the error else empty. + Message *string `json:"message,omitempty"` + + // TimeStampUtc: Last time secret was accessed. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as + // specified by the ISO 8601 standard. + TimeStampUtc *string `json:"timeStampUtc,omitempty"` +} + +var _ genruntime.FromARMConverter = &KeyVaultLastAccessStatusContractProperties_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (properties *KeyVaultLastAccessStatusContractProperties_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &KeyVaultLastAccessStatusContractProperties_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (properties *KeyVaultLastAccessStatusContractProperties_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(KeyVaultLastAccessStatusContractProperties_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected KeyVaultLastAccessStatusContractProperties_STATUS_ARM, got %T", armInput) + } + + // Set property "Code": + if typedInput.Code != nil { + code := *typedInput.Code + properties.Code = &code + } + + // Set property "Message": + if typedInput.Message != nil { + message := *typedInput.Message + properties.Message = &message + } + + // Set property "TimeStampUtc": + if typedInput.TimeStampUtc != nil { + timeStampUtc := *typedInput.TimeStampUtc + properties.TimeStampUtc = &timeStampUtc + } + + // No error + return nil +} + +// AssignProperties_From_KeyVaultLastAccessStatusContractProperties_STATUS populates our KeyVaultLastAccessStatusContractProperties_STATUS from the provided source KeyVaultLastAccessStatusContractProperties_STATUS +func (properties *KeyVaultLastAccessStatusContractProperties_STATUS) AssignProperties_From_KeyVaultLastAccessStatusContractProperties_STATUS(source *v20220801s.KeyVaultLastAccessStatusContractProperties_STATUS) error { + + // Code + properties.Code = genruntime.ClonePointerToString(source.Code) + + // Message + properties.Message = genruntime.ClonePointerToString(source.Message) + + // TimeStampUtc + properties.TimeStampUtc = genruntime.ClonePointerToString(source.TimeStampUtc) + + // No error + return nil +} + +// AssignProperties_To_KeyVaultLastAccessStatusContractProperties_STATUS populates the provided destination KeyVaultLastAccessStatusContractProperties_STATUS from our KeyVaultLastAccessStatusContractProperties_STATUS +func (properties *KeyVaultLastAccessStatusContractProperties_STATUS) AssignProperties_To_KeyVaultLastAccessStatusContractProperties_STATUS(destination *v20220801s.KeyVaultLastAccessStatusContractProperties_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Code + destination.Code = genruntime.ClonePointerToString(properties.Code) + + // Message + destination.Message = genruntime.ClonePointerToString(properties.Message) + + // TimeStampUtc + destination.TimeStampUtc = genruntime.ClonePointerToString(properties.TimeStampUtc) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +func init() { + SchemeBuilder.Register(&NamedValue{}, &NamedValueList{}) +} diff --git a/v2/api/apimanagement/v1api20220801/named_value_types_gen_test.go b/v2/api/apimanagement/v1api20220801/named_value_types_gen_test.go new file mode 100644 index 00000000000..8687df95a93 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/named_value_types_gen_test.go @@ -0,0 +1,736 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_NamedValue_WhenConvertedToHub_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + parameters.MinSuccessfulTests = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from NamedValue to hub returns original", + prop.ForAll(RunResourceConversionTestForNamedValue, NamedValueGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForNamedValue tests if a specific instance of NamedValue round trips to the hub storage version and back losslessly +func RunResourceConversionTestForNamedValue(subject NamedValue) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20220801s.NamedValue + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual NamedValue + err = actual.ConvertFrom(&hub) + if err != nil { + return err.Error() + } + + // Compare actual with what we started with + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_NamedValue_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from NamedValue to NamedValue via AssignProperties_To_NamedValue & AssignProperties_From_NamedValue returns original", + prop.ForAll(RunPropertyAssignmentTestForNamedValue, NamedValueGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForNamedValue tests if a specific instance of NamedValue can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForNamedValue(subject NamedValue) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.NamedValue + err := copied.AssignProperties_To_NamedValue(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual NamedValue + err = actual.AssignProperties_From_NamedValue(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_NamedValue_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 20 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of NamedValue via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNamedValue, NamedValueGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNamedValue runs a test to see if a specific instance of NamedValue round trips to JSON and back losslessly +func RunJSONSerializationTestForNamedValue(subject NamedValue) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NamedValue + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of NamedValue instances for property testing - lazily instantiated by NamedValueGenerator() +var namedValueGenerator gopter.Gen + +// NamedValueGenerator returns a generator of NamedValue instances for property testing. +func NamedValueGenerator() gopter.Gen { + if namedValueGenerator != nil { + return namedValueGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForNamedValue(generators) + namedValueGenerator = gen.Struct(reflect.TypeOf(NamedValue{}), generators) + + return namedValueGenerator +} + +// AddRelatedPropertyGeneratorsForNamedValue is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNamedValue(gens map[string]gopter.Gen) { + gens["Spec"] = Service_NamedValue_SpecGenerator() + gens["Status"] = Service_NamedValue_STATUSGenerator() +} + +func Test_Service_NamedValue_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Service_NamedValue_Spec to Service_NamedValue_Spec via AssignProperties_To_Service_NamedValue_Spec & AssignProperties_From_Service_NamedValue_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForService_NamedValue_Spec, Service_NamedValue_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForService_NamedValue_Spec tests if a specific instance of Service_NamedValue_Spec can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForService_NamedValue_Spec(subject Service_NamedValue_Spec) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.Service_NamedValue_Spec + err := copied.AssignProperties_To_Service_NamedValue_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Service_NamedValue_Spec + err = actual.AssignProperties_From_Service_NamedValue_Spec(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Service_NamedValue_Spec_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_NamedValue_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_NamedValue_Spec, Service_NamedValue_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_NamedValue_Spec runs a test to see if a specific instance of Service_NamedValue_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForService_NamedValue_Spec(subject Service_NamedValue_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_NamedValue_Spec + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_NamedValue_Spec instances for property testing - lazily instantiated by +// Service_NamedValue_SpecGenerator() +var service_NamedValue_SpecGenerator gopter.Gen + +// Service_NamedValue_SpecGenerator returns a generator of Service_NamedValue_Spec instances for property testing. +// We first initialize service_NamedValue_SpecGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_NamedValue_SpecGenerator() gopter.Gen { + if service_NamedValue_SpecGenerator != nil { + return service_NamedValue_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_Spec(generators) + service_NamedValue_SpecGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_Spec{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_Spec(generators) + AddRelatedPropertyGeneratorsForService_NamedValue_Spec(generators) + service_NamedValue_SpecGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_Spec{}), generators) + + return service_NamedValue_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForService_NamedValue_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_NamedValue_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["Secret"] = gen.PtrOf(gen.Bool()) + gens["Tags"] = gen.SliceOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_NamedValue_Spec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_NamedValue_Spec(gens map[string]gopter.Gen) { + gens["KeyVault"] = gen.PtrOf(KeyVaultContractCreatePropertiesGenerator()) +} + +func Test_Service_NamedValue_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Service_NamedValue_STATUS to Service_NamedValue_STATUS via AssignProperties_To_Service_NamedValue_STATUS & AssignProperties_From_Service_NamedValue_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForService_NamedValue_STATUS, Service_NamedValue_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForService_NamedValue_STATUS tests if a specific instance of Service_NamedValue_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForService_NamedValue_STATUS(subject Service_NamedValue_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.Service_NamedValue_STATUS + err := copied.AssignProperties_To_Service_NamedValue_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Service_NamedValue_STATUS + err = actual.AssignProperties_From_Service_NamedValue_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Service_NamedValue_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_NamedValue_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_NamedValue_STATUS, Service_NamedValue_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_NamedValue_STATUS runs a test to see if a specific instance of Service_NamedValue_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForService_NamedValue_STATUS(subject Service_NamedValue_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_NamedValue_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_NamedValue_STATUS instances for property testing - lazily instantiated by +// Service_NamedValue_STATUSGenerator() +var service_NamedValue_STATUSGenerator gopter.Gen + +// Service_NamedValue_STATUSGenerator returns a generator of Service_NamedValue_STATUS instances for property testing. +// We first initialize service_NamedValue_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_NamedValue_STATUSGenerator() gopter.Gen { + if service_NamedValue_STATUSGenerator != nil { + return service_NamedValue_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_STATUS(generators) + service_NamedValue_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_STATUS(generators) + AddRelatedPropertyGeneratorsForService_NamedValue_STATUS(generators) + service_NamedValue_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_STATUS{}), generators) + + return service_NamedValue_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForService_NamedValue_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_NamedValue_STATUS(gens map[string]gopter.Gen) { + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Secret"] = gen.PtrOf(gen.Bool()) + gens["Tags"] = gen.SliceOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_NamedValue_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_NamedValue_STATUS(gens map[string]gopter.Gen) { + gens["KeyVault"] = gen.PtrOf(KeyVaultContractProperties_STATUSGenerator()) +} + +func Test_KeyVaultContractCreateProperties_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from KeyVaultContractCreateProperties to KeyVaultContractCreateProperties via AssignProperties_To_KeyVaultContractCreateProperties & AssignProperties_From_KeyVaultContractCreateProperties returns original", + prop.ForAll(RunPropertyAssignmentTestForKeyVaultContractCreateProperties, KeyVaultContractCreatePropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForKeyVaultContractCreateProperties tests if a specific instance of KeyVaultContractCreateProperties can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForKeyVaultContractCreateProperties(subject KeyVaultContractCreateProperties) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.KeyVaultContractCreateProperties + err := copied.AssignProperties_To_KeyVaultContractCreateProperties(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual KeyVaultContractCreateProperties + err = actual.AssignProperties_From_KeyVaultContractCreateProperties(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_KeyVaultContractCreateProperties_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultContractCreateProperties via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultContractCreateProperties, KeyVaultContractCreatePropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultContractCreateProperties runs a test to see if a specific instance of KeyVaultContractCreateProperties round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultContractCreateProperties(subject KeyVaultContractCreateProperties) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultContractCreateProperties + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultContractCreateProperties instances for property testing - lazily instantiated by +// KeyVaultContractCreatePropertiesGenerator() +var keyVaultContractCreatePropertiesGenerator gopter.Gen + +// KeyVaultContractCreatePropertiesGenerator returns a generator of KeyVaultContractCreateProperties instances for property testing. +func KeyVaultContractCreatePropertiesGenerator() gopter.Gen { + if keyVaultContractCreatePropertiesGenerator != nil { + return keyVaultContractCreatePropertiesGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties(generators) + keyVaultContractCreatePropertiesGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractCreateProperties{}), generators) + + return keyVaultContractCreatePropertiesGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties(gens map[string]gopter.Gen) { + gens["IdentityClientId"] = gen.PtrOf(gen.AlphaString()) + gens["SecretIdentifier"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_KeyVaultContractProperties_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from KeyVaultContractProperties_STATUS to KeyVaultContractProperties_STATUS via AssignProperties_To_KeyVaultContractProperties_STATUS & AssignProperties_From_KeyVaultContractProperties_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForKeyVaultContractProperties_STATUS, KeyVaultContractProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForKeyVaultContractProperties_STATUS tests if a specific instance of KeyVaultContractProperties_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForKeyVaultContractProperties_STATUS(subject KeyVaultContractProperties_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.KeyVaultContractProperties_STATUS + err := copied.AssignProperties_To_KeyVaultContractProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual KeyVaultContractProperties_STATUS + err = actual.AssignProperties_From_KeyVaultContractProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_KeyVaultContractProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultContractProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultContractProperties_STATUS, KeyVaultContractProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultContractProperties_STATUS runs a test to see if a specific instance of KeyVaultContractProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultContractProperties_STATUS(subject KeyVaultContractProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultContractProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultContractProperties_STATUS instances for property testing - lazily instantiated by +// KeyVaultContractProperties_STATUSGenerator() +var keyVaultContractProperties_STATUSGenerator gopter.Gen + +// KeyVaultContractProperties_STATUSGenerator returns a generator of KeyVaultContractProperties_STATUS instances for property testing. +// We first initialize keyVaultContractProperties_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func KeyVaultContractProperties_STATUSGenerator() gopter.Gen { + if keyVaultContractProperties_STATUSGenerator != nil { + return keyVaultContractProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS(generators) + keyVaultContractProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractProperties_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS(generators) + AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS(generators) + keyVaultContractProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractProperties_STATUS{}), generators) + + return keyVaultContractProperties_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS(gens map[string]gopter.Gen) { + gens["IdentityClientId"] = gen.PtrOf(gen.AlphaString()) + gens["SecretIdentifier"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS(gens map[string]gopter.Gen) { + gens["LastStatus"] = gen.PtrOf(KeyVaultLastAccessStatusContractProperties_STATUSGenerator()) +} + +func Test_KeyVaultLastAccessStatusContractProperties_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from KeyVaultLastAccessStatusContractProperties_STATUS to KeyVaultLastAccessStatusContractProperties_STATUS via AssignProperties_To_KeyVaultLastAccessStatusContractProperties_STATUS & AssignProperties_From_KeyVaultLastAccessStatusContractProperties_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForKeyVaultLastAccessStatusContractProperties_STATUS, KeyVaultLastAccessStatusContractProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForKeyVaultLastAccessStatusContractProperties_STATUS tests if a specific instance of KeyVaultLastAccessStatusContractProperties_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForKeyVaultLastAccessStatusContractProperties_STATUS(subject KeyVaultLastAccessStatusContractProperties_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.KeyVaultLastAccessStatusContractProperties_STATUS + err := copied.AssignProperties_To_KeyVaultLastAccessStatusContractProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual KeyVaultLastAccessStatusContractProperties_STATUS + err = actual.AssignProperties_From_KeyVaultLastAccessStatusContractProperties_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_KeyVaultLastAccessStatusContractProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultLastAccessStatusContractProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS, KeyVaultLastAccessStatusContractProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS runs a test to see if a specific instance of KeyVaultLastAccessStatusContractProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS(subject KeyVaultLastAccessStatusContractProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultLastAccessStatusContractProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultLastAccessStatusContractProperties_STATUS instances for property testing - lazily instantiated +// by KeyVaultLastAccessStatusContractProperties_STATUSGenerator() +var keyVaultLastAccessStatusContractProperties_STATUSGenerator gopter.Gen + +// KeyVaultLastAccessStatusContractProperties_STATUSGenerator returns a generator of KeyVaultLastAccessStatusContractProperties_STATUS instances for property testing. +func KeyVaultLastAccessStatusContractProperties_STATUSGenerator() gopter.Gen { + if keyVaultLastAccessStatusContractProperties_STATUSGenerator != nil { + return keyVaultLastAccessStatusContractProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS(generators) + keyVaultLastAccessStatusContractProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(KeyVaultLastAccessStatusContractProperties_STATUS{}), generators) + + return keyVaultLastAccessStatusContractProperties_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS(gens map[string]gopter.Gen) { + gens["Code"] = gen.PtrOf(gen.AlphaString()) + gens["Message"] = gen.PtrOf(gen.AlphaString()) + gens["TimeStampUtc"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801/service_backend_spec_arm_types_gen.go b/v2/api/apimanagement/v1api20220801/service_backend_spec_arm_types_gen.go new file mode 100644 index 00000000000..c5391502f9c --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_backend_spec_arm_types_gen.go @@ -0,0 +1,146 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + +type Service_Backend_Spec_ARM struct { + Name string `json:"name,omitempty"` + + // Properties: Backend entity contract properties. + Properties *BackendContractProperties_ARM `json:"properties,omitempty"` +} + +var _ genruntime.ARMResourceSpec = &Service_Backend_Spec_ARM{} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (backend Service_Backend_Spec_ARM) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetName returns the Name of the resource +func (backend *Service_Backend_Spec_ARM) GetName() string { + return backend.Name +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/backends" +func (backend *Service_Backend_Spec_ARM) GetType() string { + return "Microsoft.ApiManagement/service/backends" +} + +// Parameters supplied to the Create Backend operation. +type BackendContractProperties_ARM struct { + // Credentials: Backend Credentials Contract Properties + Credentials *BackendCredentialsContract_ARM `json:"credentials,omitempty"` + + // Description: Backend Description. + Description *string `json:"description,omitempty"` + + // Properties: Backend Properties contract + Properties *BackendProperties_ARM `json:"properties,omitempty"` + + // Protocol: Backend communication protocol. + Protocol *BackendContractProperties_Protocol `json:"protocol,omitempty"` + + // Proxy: Backend gateway Contract Properties + Proxy *BackendProxyContract_ARM `json:"proxy,omitempty"` + ResourceId *string `json:"resourceId,omitempty"` + + // Title: Backend Title. + Title *string `json:"title,omitempty"` + + // Tls: Backend TLS Properties + Tls *BackendTlsProperties_ARM `json:"tls,omitempty"` + + // Url: Runtime Url of the Backend. + Url *string `json:"url,omitempty"` +} + +// Details of the Credentials used to connect to Backend. +type BackendCredentialsContract_ARM struct { + // Authorization: Authorization header authentication + Authorization *BackendAuthorizationHeaderCredentials_ARM `json:"authorization,omitempty"` + + // Certificate: List of Client Certificate Thumbprints. Will be ignored if certificatesIds are provided. + Certificate []string `json:"certificate,omitempty"` + + // CertificateIds: List of Client Certificate Ids. + CertificateIds []string `json:"certificateIds,omitempty"` + + // Header: Header Parameter description. + Header map[string][]string `json:"header,omitempty"` + + // Query: Query Parameter description. + Query map[string][]string `json:"query,omitempty"` +} + +// Properties specific to the Backend Type. +type BackendProperties_ARM struct { + // ServiceFabricCluster: Backend Service Fabric Cluster Properties + ServiceFabricCluster *BackendServiceFabricClusterProperties_ARM `json:"serviceFabricCluster,omitempty"` +} + +// Details of the Backend WebProxy Server to use in the Request to Backend. +type BackendProxyContract_ARM struct { + // Password: Password to connect to the WebProxy Server + Password *string `json:"password,omitempty"` + + // Url: WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all + // fragments and query strings. + Url *string `json:"url,omitempty"` + + // Username: Username to connect to the WebProxy server + Username *string `json:"username,omitempty"` +} + +// Properties controlling TLS Certificate Validation. +type BackendTlsProperties_ARM struct { + // ValidateCertificateChain: Flag indicating whether SSL certificate chain validation should be done when using self-signed + // certificates for this backend host. + ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty"` + + // ValidateCertificateName: Flag indicating whether SSL certificate name validation should be done when using self-signed + // certificates for this backend host. + ValidateCertificateName *bool `json:"validateCertificateName,omitempty"` +} + +// Authorization header information. +type BackendAuthorizationHeaderCredentials_ARM struct { + // Parameter: Authentication Parameter value. + Parameter *string `json:"parameter,omitempty"` + + // Scheme: Authentication Scheme name. + Scheme *string `json:"scheme,omitempty"` +} + +// Properties of the Service Fabric Type Backend. +type BackendServiceFabricClusterProperties_ARM struct { + // ClientCertificateId: The client certificate id for the management endpoint. + ClientCertificateId *string `json:"clientCertificateId,omitempty"` + + // ClientCertificatethumbprint: The client certificate thumbprint for the management endpoint. Will be ignored if + // certificatesIds are provided + ClientCertificatethumbprint *string `json:"clientCertificatethumbprint,omitempty"` + + // ManagementEndpoints: The cluster management endpoint. + ManagementEndpoints []string `json:"managementEndpoints,omitempty"` + + // MaxPartitionResolutionRetries: Maximum number of retries while attempting resolve the partition. + MaxPartitionResolutionRetries *int `json:"maxPartitionResolutionRetries,omitempty"` + + // ServerCertificateThumbprints: Thumbprints of certificates cluster management service uses for tls communication + ServerCertificateThumbprints []string `json:"serverCertificateThumbprints,omitempty"` + + // ServerX509Names: Server X509 Certificate Names Collection + ServerX509Names []X509CertificateName_ARM `json:"serverX509Names,omitempty"` +} + +// Properties of server X509Names. +type X509CertificateName_ARM struct { + // IssuerCertificateThumbprint: Thumbprint for the Issuer of the Certificate. + IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty"` + + // Name: Common Name of the Certificate. + Name *string `json:"name,omitempty"` +} diff --git a/v2/api/apimanagement/v1api20220801/service_backend_spec_arm_types_gen_test.go b/v2/api/apimanagement/v1api20220801/service_backend_spec_arm_types_gen_test.go new file mode 100644 index 00000000000..5713ebb064d --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_backend_spec_arm_types_gen_test.go @@ -0,0 +1,642 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Service_Backend_Spec_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Backend_Spec_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Backend_Spec_ARM, Service_Backend_Spec_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Backend_Spec_ARM runs a test to see if a specific instance of Service_Backend_Spec_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Backend_Spec_ARM(subject Service_Backend_Spec_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Backend_Spec_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Backend_Spec_ARM instances for property testing - lazily instantiated by +// Service_Backend_Spec_ARMGenerator() +var service_Backend_Spec_ARMGenerator gopter.Gen + +// Service_Backend_Spec_ARMGenerator returns a generator of Service_Backend_Spec_ARM instances for property testing. +// We first initialize service_Backend_Spec_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_Backend_Spec_ARMGenerator() gopter.Gen { + if service_Backend_Spec_ARMGenerator != nil { + return service_Backend_Spec_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_Spec_ARM(generators) + service_Backend_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(Service_Backend_Spec_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_Spec_ARM(generators) + AddRelatedPropertyGeneratorsForService_Backend_Spec_ARM(generators) + service_Backend_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(Service_Backend_Spec_ARM{}), generators) + + return service_Backend_Spec_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForService_Backend_Spec_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Backend_Spec_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.AlphaString() +} + +// AddRelatedPropertyGeneratorsForService_Backend_Spec_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_Backend_Spec_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(BackendContractProperties_ARMGenerator()) +} + +func Test_BackendContractProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendContractProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendContractProperties_ARM, BackendContractProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendContractProperties_ARM runs a test to see if a specific instance of BackendContractProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendContractProperties_ARM(subject BackendContractProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendContractProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendContractProperties_ARM instances for property testing - lazily instantiated by +// BackendContractProperties_ARMGenerator() +var backendContractProperties_ARMGenerator gopter.Gen + +// BackendContractProperties_ARMGenerator returns a generator of BackendContractProperties_ARM instances for property testing. +// We first initialize backendContractProperties_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendContractProperties_ARMGenerator() gopter.Gen { + if backendContractProperties_ARMGenerator != nil { + return backendContractProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendContractProperties_ARM(generators) + backendContractProperties_ARMGenerator = gen.Struct(reflect.TypeOf(BackendContractProperties_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendContractProperties_ARM(generators) + AddRelatedPropertyGeneratorsForBackendContractProperties_ARM(generators) + backendContractProperties_ARMGenerator = gen.Struct(reflect.TypeOf(BackendContractProperties_ARM{}), generators) + + return backendContractProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendContractProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendContractProperties_ARM(gens map[string]gopter.Gen) { + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["Protocol"] = gen.PtrOf(gen.OneConstOf(BackendContractProperties_Protocol_Http, BackendContractProperties_Protocol_Soap)) + gens["ResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["Title"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForBackendContractProperties_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendContractProperties_ARM(gens map[string]gopter.Gen) { + gens["Credentials"] = gen.PtrOf(BackendCredentialsContract_ARMGenerator()) + gens["Properties"] = gen.PtrOf(BackendProperties_ARMGenerator()) + gens["Proxy"] = gen.PtrOf(BackendProxyContract_ARMGenerator()) + gens["Tls"] = gen.PtrOf(BackendTlsProperties_ARMGenerator()) +} + +func Test_BackendCredentialsContract_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendCredentialsContract_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendCredentialsContract_ARM, BackendCredentialsContract_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendCredentialsContract_ARM runs a test to see if a specific instance of BackendCredentialsContract_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendCredentialsContract_ARM(subject BackendCredentialsContract_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendCredentialsContract_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendCredentialsContract_ARM instances for property testing - lazily instantiated by +// BackendCredentialsContract_ARMGenerator() +var backendCredentialsContract_ARMGenerator gopter.Gen + +// BackendCredentialsContract_ARMGenerator returns a generator of BackendCredentialsContract_ARM instances for property testing. +// We first initialize backendCredentialsContract_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendCredentialsContract_ARMGenerator() gopter.Gen { + if backendCredentialsContract_ARMGenerator != nil { + return backendCredentialsContract_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract_ARM(generators) + backendCredentialsContract_ARMGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract_ARM(generators) + AddRelatedPropertyGeneratorsForBackendCredentialsContract_ARM(generators) + backendCredentialsContract_ARMGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract_ARM{}), generators) + + return backendCredentialsContract_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendCredentialsContract_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendCredentialsContract_ARM(gens map[string]gopter.Gen) { + gens["Certificate"] = gen.SliceOf(gen.AlphaString()) + gens["CertificateIds"] = gen.SliceOf(gen.AlphaString()) + gens["Header"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) + gens["Query"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) +} + +// AddRelatedPropertyGeneratorsForBackendCredentialsContract_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendCredentialsContract_ARM(gens map[string]gopter.Gen) { + gens["Authorization"] = gen.PtrOf(BackendAuthorizationHeaderCredentials_ARMGenerator()) +} + +func Test_BackendProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProperties_ARM, BackendProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProperties_ARM runs a test to see if a specific instance of BackendProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProperties_ARM(subject BackendProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProperties_ARM instances for property testing - lazily instantiated by +// BackendProperties_ARMGenerator() +var backendProperties_ARMGenerator gopter.Gen + +// BackendProperties_ARMGenerator returns a generator of BackendProperties_ARM instances for property testing. +func BackendProperties_ARMGenerator() gopter.Gen { + if backendProperties_ARMGenerator != nil { + return backendProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForBackendProperties_ARM(generators) + backendProperties_ARMGenerator = gen.Struct(reflect.TypeOf(BackendProperties_ARM{}), generators) + + return backendProperties_ARMGenerator +} + +// AddRelatedPropertyGeneratorsForBackendProperties_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendProperties_ARM(gens map[string]gopter.Gen) { + gens["ServiceFabricCluster"] = gen.PtrOf(BackendServiceFabricClusterProperties_ARMGenerator()) +} + +func Test_BackendProxyContract_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProxyContract_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProxyContract_ARM, BackendProxyContract_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProxyContract_ARM runs a test to see if a specific instance of BackendProxyContract_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProxyContract_ARM(subject BackendProxyContract_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProxyContract_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProxyContract_ARM instances for property testing - lazily instantiated by +// BackendProxyContract_ARMGenerator() +var backendProxyContract_ARMGenerator gopter.Gen + +// BackendProxyContract_ARMGenerator returns a generator of BackendProxyContract_ARM instances for property testing. +func BackendProxyContract_ARMGenerator() gopter.Gen { + if backendProxyContract_ARMGenerator != nil { + return backendProxyContract_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendProxyContract_ARM(generators) + backendProxyContract_ARMGenerator = gen.Struct(reflect.TypeOf(BackendProxyContract_ARM{}), generators) + + return backendProxyContract_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendProxyContract_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendProxyContract_ARM(gens map[string]gopter.Gen) { + gens["Password"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Username"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendTlsProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendTlsProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendTlsProperties_ARM, BackendTlsProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendTlsProperties_ARM runs a test to see if a specific instance of BackendTlsProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendTlsProperties_ARM(subject BackendTlsProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendTlsProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendTlsProperties_ARM instances for property testing - lazily instantiated by +// BackendTlsProperties_ARMGenerator() +var backendTlsProperties_ARMGenerator gopter.Gen + +// BackendTlsProperties_ARMGenerator returns a generator of BackendTlsProperties_ARM instances for property testing. +func BackendTlsProperties_ARMGenerator() gopter.Gen { + if backendTlsProperties_ARMGenerator != nil { + return backendTlsProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendTlsProperties_ARM(generators) + backendTlsProperties_ARMGenerator = gen.Struct(reflect.TypeOf(BackendTlsProperties_ARM{}), generators) + + return backendTlsProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendTlsProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendTlsProperties_ARM(gens map[string]gopter.Gen) { + gens["ValidateCertificateChain"] = gen.PtrOf(gen.Bool()) + gens["ValidateCertificateName"] = gen.PtrOf(gen.Bool()) +} + +func Test_BackendAuthorizationHeaderCredentials_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendAuthorizationHeaderCredentials_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_ARM, BackendAuthorizationHeaderCredentials_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_ARM runs a test to see if a specific instance of BackendAuthorizationHeaderCredentials_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_ARM(subject BackendAuthorizationHeaderCredentials_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendAuthorizationHeaderCredentials_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendAuthorizationHeaderCredentials_ARM instances for property testing - lazily instantiated by +// BackendAuthorizationHeaderCredentials_ARMGenerator() +var backendAuthorizationHeaderCredentials_ARMGenerator gopter.Gen + +// BackendAuthorizationHeaderCredentials_ARMGenerator returns a generator of BackendAuthorizationHeaderCredentials_ARM instances for property testing. +func BackendAuthorizationHeaderCredentials_ARMGenerator() gopter.Gen { + if backendAuthorizationHeaderCredentials_ARMGenerator != nil { + return backendAuthorizationHeaderCredentials_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_ARM(generators) + backendAuthorizationHeaderCredentials_ARMGenerator = gen.Struct(reflect.TypeOf(BackendAuthorizationHeaderCredentials_ARM{}), generators) + + return backendAuthorizationHeaderCredentials_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_ARM(gens map[string]gopter.Gen) { + gens["Parameter"] = gen.PtrOf(gen.AlphaString()) + gens["Scheme"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendServiceFabricClusterProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendServiceFabricClusterProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendServiceFabricClusterProperties_ARM, BackendServiceFabricClusterProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendServiceFabricClusterProperties_ARM runs a test to see if a specific instance of BackendServiceFabricClusterProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendServiceFabricClusterProperties_ARM(subject BackendServiceFabricClusterProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendServiceFabricClusterProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendServiceFabricClusterProperties_ARM instances for property testing - lazily instantiated by +// BackendServiceFabricClusterProperties_ARMGenerator() +var backendServiceFabricClusterProperties_ARMGenerator gopter.Gen + +// BackendServiceFabricClusterProperties_ARMGenerator returns a generator of BackendServiceFabricClusterProperties_ARM instances for property testing. +// We first initialize backendServiceFabricClusterProperties_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendServiceFabricClusterProperties_ARMGenerator() gopter.Gen { + if backendServiceFabricClusterProperties_ARMGenerator != nil { + return backendServiceFabricClusterProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_ARM(generators) + backendServiceFabricClusterProperties_ARMGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_ARM(generators) + AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_ARM(generators) + backendServiceFabricClusterProperties_ARMGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties_ARM{}), generators) + + return backendServiceFabricClusterProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_ARM(gens map[string]gopter.Gen) { + gens["ClientCertificateId"] = gen.PtrOf(gen.AlphaString()) + gens["ClientCertificatethumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["ManagementEndpoints"] = gen.SliceOf(gen.AlphaString()) + gens["MaxPartitionResolutionRetries"] = gen.PtrOf(gen.Int()) + gens["ServerCertificateThumbprints"] = gen.SliceOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_ARM(gens map[string]gopter.Gen) { + gens["ServerX509Names"] = gen.SliceOf(X509CertificateName_ARMGenerator()) +} + +func Test_X509CertificateName_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of X509CertificateName_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForX509CertificateName_ARM, X509CertificateName_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForX509CertificateName_ARM runs a test to see if a specific instance of X509CertificateName_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForX509CertificateName_ARM(subject X509CertificateName_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual X509CertificateName_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of X509CertificateName_ARM instances for property testing - lazily instantiated by +// X509CertificateName_ARMGenerator() +var x509CertificateName_ARMGenerator gopter.Gen + +// X509CertificateName_ARMGenerator returns a generator of X509CertificateName_ARM instances for property testing. +func X509CertificateName_ARMGenerator() gopter.Gen { + if x509CertificateName_ARMGenerator != nil { + return x509CertificateName_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForX509CertificateName_ARM(generators) + x509CertificateName_ARMGenerator = gen.Struct(reflect.TypeOf(X509CertificateName_ARM{}), generators) + + return x509CertificateName_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForX509CertificateName_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForX509CertificateName_ARM(gens map[string]gopter.Gen) { + gens["IssuerCertificateThumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801/service_backend_status_arm_types_gen.go b/v2/api/apimanagement/v1api20220801/service_backend_status_arm_types_gen.go new file mode 100644 index 00000000000..0897084af41 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_backend_status_arm_types_gen.go @@ -0,0 +1,135 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +type Service_Backend_STATUS_ARM struct { + // Id: Fully qualified resource ID for the resource. Ex - + // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + Id *string `json:"id,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // Properties: Backend entity contract properties. + Properties *BackendContractProperties_STATUS_ARM `json:"properties,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +// Parameters supplied to the Create Backend operation. +type BackendContractProperties_STATUS_ARM struct { + // Credentials: Backend Credentials Contract Properties + Credentials *BackendCredentialsContract_STATUS_ARM `json:"credentials,omitempty"` + + // Description: Backend Description. + Description *string `json:"description,omitempty"` + + // Properties: Backend Properties contract + Properties *BackendProperties_STATUS_ARM `json:"properties,omitempty"` + + // Protocol: Backend communication protocol. + Protocol *BackendContractProperties_Protocol_STATUS `json:"protocol,omitempty"` + + // Proxy: Backend gateway Contract Properties + Proxy *BackendProxyContract_STATUS_ARM `json:"proxy,omitempty"` + + // ResourceId: Management Uri of the Resource in External System. This URL can be the Arm Resource Id of Logic Apps, + // Function Apps or API Apps. + ResourceId *string `json:"resourceId,omitempty"` + + // Title: Backend Title. + Title *string `json:"title,omitempty"` + + // Tls: Backend TLS Properties + Tls *BackendTlsProperties_STATUS_ARM `json:"tls,omitempty"` + + // Url: Runtime Url of the Backend. + Url *string `json:"url,omitempty"` +} + +// Details of the Credentials used to connect to Backend. +type BackendCredentialsContract_STATUS_ARM struct { + // Authorization: Authorization header authentication + Authorization *BackendAuthorizationHeaderCredentials_STATUS_ARM `json:"authorization,omitempty"` + + // Certificate: List of Client Certificate Thumbprints. Will be ignored if certificatesIds are provided. + Certificate []string `json:"certificate,omitempty"` + + // CertificateIds: List of Client Certificate Ids. + CertificateIds []string `json:"certificateIds,omitempty"` + + // Header: Header Parameter description. + Header map[string][]string `json:"header,omitempty"` + + // Query: Query Parameter description. + Query map[string][]string `json:"query,omitempty"` +} + +// Properties specific to the Backend Type. +type BackendProperties_STATUS_ARM struct { + // ServiceFabricCluster: Backend Service Fabric Cluster Properties + ServiceFabricCluster *BackendServiceFabricClusterProperties_STATUS_ARM `json:"serviceFabricCluster,omitempty"` +} + +// Details of the Backend WebProxy Server to use in the Request to Backend. +type BackendProxyContract_STATUS_ARM struct { + // Url: WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all + // fragments and query strings. + Url *string `json:"url,omitempty"` + + // Username: Username to connect to the WebProxy server + Username *string `json:"username,omitempty"` +} + +// Properties controlling TLS Certificate Validation. +type BackendTlsProperties_STATUS_ARM struct { + // ValidateCertificateChain: Flag indicating whether SSL certificate chain validation should be done when using self-signed + // certificates for this backend host. + ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty"` + + // ValidateCertificateName: Flag indicating whether SSL certificate name validation should be done when using self-signed + // certificates for this backend host. + ValidateCertificateName *bool `json:"validateCertificateName,omitempty"` +} + +// Authorization header information. +type BackendAuthorizationHeaderCredentials_STATUS_ARM struct { + // Parameter: Authentication Parameter value. + Parameter *string `json:"parameter,omitempty"` + + // Scheme: Authentication Scheme name. + Scheme *string `json:"scheme,omitempty"` +} + +// Properties of the Service Fabric Type Backend. +type BackendServiceFabricClusterProperties_STATUS_ARM struct { + // ClientCertificateId: The client certificate id for the management endpoint. + ClientCertificateId *string `json:"clientCertificateId,omitempty"` + + // ClientCertificatethumbprint: The client certificate thumbprint for the management endpoint. Will be ignored if + // certificatesIds are provided + ClientCertificatethumbprint *string `json:"clientCertificatethumbprint,omitempty"` + + // ManagementEndpoints: The cluster management endpoint. + ManagementEndpoints []string `json:"managementEndpoints,omitempty"` + + // MaxPartitionResolutionRetries: Maximum number of retries while attempting resolve the partition. + MaxPartitionResolutionRetries *int `json:"maxPartitionResolutionRetries,omitempty"` + + // ServerCertificateThumbprints: Thumbprints of certificates cluster management service uses for tls communication + ServerCertificateThumbprints []string `json:"serverCertificateThumbprints,omitempty"` + + // ServerX509Names: Server X509 Certificate Names Collection + ServerX509Names []X509CertificateName_STATUS_ARM `json:"serverX509Names,omitempty"` +} + +// Properties of server X509Names. +type X509CertificateName_STATUS_ARM struct { + // IssuerCertificateThumbprint: Thumbprint for the Issuer of the Certificate. + IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty"` + + // Name: Common Name of the Certificate. + Name *string `json:"name,omitempty"` +} diff --git a/v2/api/apimanagement/v1api20220801/service_backend_status_arm_types_gen_test.go b/v2/api/apimanagement/v1api20220801/service_backend_status_arm_types_gen_test.go new file mode 100644 index 00000000000..0a1a79c82b7 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_backend_status_arm_types_gen_test.go @@ -0,0 +1,643 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Service_Backend_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Backend_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Backend_STATUS_ARM, Service_Backend_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Backend_STATUS_ARM runs a test to see if a specific instance of Service_Backend_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Backend_STATUS_ARM(subject Service_Backend_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Backend_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Backend_STATUS_ARM instances for property testing - lazily instantiated by +// Service_Backend_STATUS_ARMGenerator() +var service_Backend_STATUS_ARMGenerator gopter.Gen + +// Service_Backend_STATUS_ARMGenerator returns a generator of Service_Backend_STATUS_ARM instances for property testing. +// We first initialize service_Backend_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_Backend_STATUS_ARMGenerator() gopter.Gen { + if service_Backend_STATUS_ARMGenerator != nil { + return service_Backend_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_STATUS_ARM(generators) + service_Backend_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Service_Backend_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForService_Backend_STATUS_ARM(generators) + service_Backend_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Service_Backend_STATUS_ARM{}), generators) + + return service_Backend_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForService_Backend_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Backend_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_Backend_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_Backend_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(BackendContractProperties_STATUS_ARMGenerator()) +} + +func Test_BackendContractProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendContractProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendContractProperties_STATUS_ARM, BackendContractProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendContractProperties_STATUS_ARM runs a test to see if a specific instance of BackendContractProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendContractProperties_STATUS_ARM(subject BackendContractProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendContractProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendContractProperties_STATUS_ARM instances for property testing - lazily instantiated by +// BackendContractProperties_STATUS_ARMGenerator() +var backendContractProperties_STATUS_ARMGenerator gopter.Gen + +// BackendContractProperties_STATUS_ARMGenerator returns a generator of BackendContractProperties_STATUS_ARM instances for property testing. +// We first initialize backendContractProperties_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendContractProperties_STATUS_ARMGenerator() gopter.Gen { + if backendContractProperties_STATUS_ARMGenerator != nil { + return backendContractProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendContractProperties_STATUS_ARM(generators) + backendContractProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendContractProperties_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendContractProperties_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForBackendContractProperties_STATUS_ARM(generators) + backendContractProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendContractProperties_STATUS_ARM{}), generators) + + return backendContractProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendContractProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendContractProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["Protocol"] = gen.PtrOf(gen.OneConstOf(BackendContractProperties_Protocol_STATUS_Http, BackendContractProperties_Protocol_STATUS_Soap)) + gens["ResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["Title"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForBackendContractProperties_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendContractProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Credentials"] = gen.PtrOf(BackendCredentialsContract_STATUS_ARMGenerator()) + gens["Properties"] = gen.PtrOf(BackendProperties_STATUS_ARMGenerator()) + gens["Proxy"] = gen.PtrOf(BackendProxyContract_STATUS_ARMGenerator()) + gens["Tls"] = gen.PtrOf(BackendTlsProperties_STATUS_ARMGenerator()) +} + +func Test_BackendCredentialsContract_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendCredentialsContract_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendCredentialsContract_STATUS_ARM, BackendCredentialsContract_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendCredentialsContract_STATUS_ARM runs a test to see if a specific instance of BackendCredentialsContract_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendCredentialsContract_STATUS_ARM(subject BackendCredentialsContract_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendCredentialsContract_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendCredentialsContract_STATUS_ARM instances for property testing - lazily instantiated by +// BackendCredentialsContract_STATUS_ARMGenerator() +var backendCredentialsContract_STATUS_ARMGenerator gopter.Gen + +// BackendCredentialsContract_STATUS_ARMGenerator returns a generator of BackendCredentialsContract_STATUS_ARM instances for property testing. +// We first initialize backendCredentialsContract_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendCredentialsContract_STATUS_ARMGenerator() gopter.Gen { + if backendCredentialsContract_STATUS_ARMGenerator != nil { + return backendCredentialsContract_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS_ARM(generators) + backendCredentialsContract_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS_ARM(generators) + backendCredentialsContract_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract_STATUS_ARM{}), generators) + + return backendCredentialsContract_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Certificate"] = gen.SliceOf(gen.AlphaString()) + gens["CertificateIds"] = gen.SliceOf(gen.AlphaString()) + gens["Header"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) + gens["Query"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) +} + +// AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Authorization"] = gen.PtrOf(BackendAuthorizationHeaderCredentials_STATUS_ARMGenerator()) +} + +func Test_BackendProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProperties_STATUS_ARM, BackendProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProperties_STATUS_ARM runs a test to see if a specific instance of BackendProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProperties_STATUS_ARM(subject BackendProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProperties_STATUS_ARM instances for property testing - lazily instantiated by +// BackendProperties_STATUS_ARMGenerator() +var backendProperties_STATUS_ARMGenerator gopter.Gen + +// BackendProperties_STATUS_ARMGenerator returns a generator of BackendProperties_STATUS_ARM instances for property testing. +func BackendProperties_STATUS_ARMGenerator() gopter.Gen { + if backendProperties_STATUS_ARMGenerator != nil { + return backendProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForBackendProperties_STATUS_ARM(generators) + backendProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendProperties_STATUS_ARM{}), generators) + + return backendProperties_STATUS_ARMGenerator +} + +// AddRelatedPropertyGeneratorsForBackendProperties_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ServiceFabricCluster"] = gen.PtrOf(BackendServiceFabricClusterProperties_STATUS_ARMGenerator()) +} + +func Test_BackendProxyContract_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProxyContract_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProxyContract_STATUS_ARM, BackendProxyContract_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProxyContract_STATUS_ARM runs a test to see if a specific instance of BackendProxyContract_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProxyContract_STATUS_ARM(subject BackendProxyContract_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProxyContract_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProxyContract_STATUS_ARM instances for property testing - lazily instantiated by +// BackendProxyContract_STATUS_ARMGenerator() +var backendProxyContract_STATUS_ARMGenerator gopter.Gen + +// BackendProxyContract_STATUS_ARMGenerator returns a generator of BackendProxyContract_STATUS_ARM instances for property testing. +func BackendProxyContract_STATUS_ARMGenerator() gopter.Gen { + if backendProxyContract_STATUS_ARMGenerator != nil { + return backendProxyContract_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS_ARM(generators) + backendProxyContract_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendProxyContract_STATUS_ARM{}), generators) + + return backendProxyContract_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Username"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendTlsProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendTlsProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendTlsProperties_STATUS_ARM, BackendTlsProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendTlsProperties_STATUS_ARM runs a test to see if a specific instance of BackendTlsProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendTlsProperties_STATUS_ARM(subject BackendTlsProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendTlsProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendTlsProperties_STATUS_ARM instances for property testing - lazily instantiated by +// BackendTlsProperties_STATUS_ARMGenerator() +var backendTlsProperties_STATUS_ARMGenerator gopter.Gen + +// BackendTlsProperties_STATUS_ARMGenerator returns a generator of BackendTlsProperties_STATUS_ARM instances for property testing. +func BackendTlsProperties_STATUS_ARMGenerator() gopter.Gen { + if backendTlsProperties_STATUS_ARMGenerator != nil { + return backendTlsProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS_ARM(generators) + backendTlsProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendTlsProperties_STATUS_ARM{}), generators) + + return backendTlsProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ValidateCertificateChain"] = gen.PtrOf(gen.Bool()) + gens["ValidateCertificateName"] = gen.PtrOf(gen.Bool()) +} + +func Test_BackendAuthorizationHeaderCredentials_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendAuthorizationHeaderCredentials_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS_ARM, BackendAuthorizationHeaderCredentials_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS_ARM runs a test to see if a specific instance of BackendAuthorizationHeaderCredentials_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS_ARM(subject BackendAuthorizationHeaderCredentials_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendAuthorizationHeaderCredentials_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendAuthorizationHeaderCredentials_STATUS_ARM instances for property testing - lazily instantiated by +// BackendAuthorizationHeaderCredentials_STATUS_ARMGenerator() +var backendAuthorizationHeaderCredentials_STATUS_ARMGenerator gopter.Gen + +// BackendAuthorizationHeaderCredentials_STATUS_ARMGenerator returns a generator of BackendAuthorizationHeaderCredentials_STATUS_ARM instances for property testing. +func BackendAuthorizationHeaderCredentials_STATUS_ARMGenerator() gopter.Gen { + if backendAuthorizationHeaderCredentials_STATUS_ARMGenerator != nil { + return backendAuthorizationHeaderCredentials_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS_ARM(generators) + backendAuthorizationHeaderCredentials_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendAuthorizationHeaderCredentials_STATUS_ARM{}), generators) + + return backendAuthorizationHeaderCredentials_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Parameter"] = gen.PtrOf(gen.AlphaString()) + gens["Scheme"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendServiceFabricClusterProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendServiceFabricClusterProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS_ARM, BackendServiceFabricClusterProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS_ARM runs a test to see if a specific instance of BackendServiceFabricClusterProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS_ARM(subject BackendServiceFabricClusterProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendServiceFabricClusterProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendServiceFabricClusterProperties_STATUS_ARM instances for property testing - lazily instantiated by +// BackendServiceFabricClusterProperties_STATUS_ARMGenerator() +var backendServiceFabricClusterProperties_STATUS_ARMGenerator gopter.Gen + +// BackendServiceFabricClusterProperties_STATUS_ARMGenerator returns a generator of BackendServiceFabricClusterProperties_STATUS_ARM instances for property testing. +// We first initialize backendServiceFabricClusterProperties_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendServiceFabricClusterProperties_STATUS_ARMGenerator() gopter.Gen { + if backendServiceFabricClusterProperties_STATUS_ARMGenerator != nil { + return backendServiceFabricClusterProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS_ARM(generators) + backendServiceFabricClusterProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS_ARM(generators) + backendServiceFabricClusterProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties_STATUS_ARM{}), generators) + + return backendServiceFabricClusterProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ClientCertificateId"] = gen.PtrOf(gen.AlphaString()) + gens["ClientCertificatethumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["ManagementEndpoints"] = gen.SliceOf(gen.AlphaString()) + gens["MaxPartitionResolutionRetries"] = gen.PtrOf(gen.Int()) + gens["ServerCertificateThumbprints"] = gen.SliceOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ServerX509Names"] = gen.SliceOf(X509CertificateName_STATUS_ARMGenerator()) +} + +func Test_X509CertificateName_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of X509CertificateName_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForX509CertificateName_STATUS_ARM, X509CertificateName_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForX509CertificateName_STATUS_ARM runs a test to see if a specific instance of X509CertificateName_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForX509CertificateName_STATUS_ARM(subject X509CertificateName_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual X509CertificateName_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of X509CertificateName_STATUS_ARM instances for property testing - lazily instantiated by +// X509CertificateName_STATUS_ARMGenerator() +var x509CertificateName_STATUS_ARMGenerator gopter.Gen + +// X509CertificateName_STATUS_ARMGenerator returns a generator of X509CertificateName_STATUS_ARM instances for property testing. +func X509CertificateName_STATUS_ARMGenerator() gopter.Gen { + if x509CertificateName_STATUS_ARMGenerator != nil { + return x509CertificateName_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForX509CertificateName_STATUS_ARM(generators) + x509CertificateName_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(X509CertificateName_STATUS_ARM{}), generators) + + return x509CertificateName_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForX509CertificateName_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForX509CertificateName_STATUS_ARM(gens map[string]gopter.Gen) { + gens["IssuerCertificateThumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801/service_named_value_spec_arm_types_gen.go b/v2/api/apimanagement/v1api20220801/service_named_value_spec_arm_types_gen.go new file mode 100644 index 00000000000..329e5491c0a --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_named_value_spec_arm_types_gen.go @@ -0,0 +1,60 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + +type Service_NamedValue_Spec_ARM struct { + Name string `json:"name,omitempty"` + + // Properties: NamedValue entity contract properties for PUT operation. + Properties *NamedValueCreateContractProperties_ARM `json:"properties,omitempty"` +} + +var _ genruntime.ARMResourceSpec = &Service_NamedValue_Spec_ARM{} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (value Service_NamedValue_Spec_ARM) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetName returns the Name of the resource +func (value *Service_NamedValue_Spec_ARM) GetName() string { + return value.Name +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/namedValues" +func (value *Service_NamedValue_Spec_ARM) GetType() string { + return "Microsoft.ApiManagement/service/namedValues" +} + +// NamedValue Contract properties. +type NamedValueCreateContractProperties_ARM struct { + // DisplayName: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. + DisplayName *string `json:"displayName,omitempty"` + + // KeyVault: KeyVault location details of the namedValue. + KeyVault *KeyVaultContractCreateProperties_ARM `json:"keyVault,omitempty"` + + // Secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. + Secret *bool `json:"secret,omitempty"` + + // Tags: Optional tags that when provided can be used to filter the NamedValue list. + Tags []string `json:"tags,omitempty"` + + // Value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This + // property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. + Value *string `json:"value,omitempty"` +} + +// Create keyVault contract details. +type KeyVaultContractCreateProperties_ARM struct { + // IdentityClientId: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used to access + // key vault secret. + IdentityClientId *string `json:"identityClientId,omitempty" optionalConfigMapPair:"IdentityClientId"` + + // SecretIdentifier: Key vault secret identifier for fetching secret. Providing a versioned secret will prevent + // auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi + SecretIdentifier *string `json:"secretIdentifier,omitempty"` +} diff --git a/v2/api/apimanagement/v1api20220801/service_named_value_spec_arm_types_gen_test.go b/v2/api/apimanagement/v1api20220801/service_named_value_spec_arm_types_gen_test.go new file mode 100644 index 00000000000..7a5403a0783 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_named_value_spec_arm_types_gen_test.go @@ -0,0 +1,233 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Service_NamedValue_Spec_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_NamedValue_Spec_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_NamedValue_Spec_ARM, Service_NamedValue_Spec_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_NamedValue_Spec_ARM runs a test to see if a specific instance of Service_NamedValue_Spec_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForService_NamedValue_Spec_ARM(subject Service_NamedValue_Spec_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_NamedValue_Spec_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_NamedValue_Spec_ARM instances for property testing - lazily instantiated by +// Service_NamedValue_Spec_ARMGenerator() +var service_NamedValue_Spec_ARMGenerator gopter.Gen + +// Service_NamedValue_Spec_ARMGenerator returns a generator of Service_NamedValue_Spec_ARM instances for property testing. +// We first initialize service_NamedValue_Spec_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_NamedValue_Spec_ARMGenerator() gopter.Gen { + if service_NamedValue_Spec_ARMGenerator != nil { + return service_NamedValue_Spec_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_Spec_ARM(generators) + service_NamedValue_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_Spec_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_Spec_ARM(generators) + AddRelatedPropertyGeneratorsForService_NamedValue_Spec_ARM(generators) + service_NamedValue_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_Spec_ARM{}), generators) + + return service_NamedValue_Spec_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForService_NamedValue_Spec_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_NamedValue_Spec_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.AlphaString() +} + +// AddRelatedPropertyGeneratorsForService_NamedValue_Spec_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_NamedValue_Spec_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(NamedValueCreateContractProperties_ARMGenerator()) +} + +func Test_NamedValueCreateContractProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of NamedValueCreateContractProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNamedValueCreateContractProperties_ARM, NamedValueCreateContractProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNamedValueCreateContractProperties_ARM runs a test to see if a specific instance of NamedValueCreateContractProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForNamedValueCreateContractProperties_ARM(subject NamedValueCreateContractProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NamedValueCreateContractProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of NamedValueCreateContractProperties_ARM instances for property testing - lazily instantiated by +// NamedValueCreateContractProperties_ARMGenerator() +var namedValueCreateContractProperties_ARMGenerator gopter.Gen + +// NamedValueCreateContractProperties_ARMGenerator returns a generator of NamedValueCreateContractProperties_ARM instances for property testing. +// We first initialize namedValueCreateContractProperties_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func NamedValueCreateContractProperties_ARMGenerator() gopter.Gen { + if namedValueCreateContractProperties_ARMGenerator != nil { + return namedValueCreateContractProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNamedValueCreateContractProperties_ARM(generators) + namedValueCreateContractProperties_ARMGenerator = gen.Struct(reflect.TypeOf(NamedValueCreateContractProperties_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNamedValueCreateContractProperties_ARM(generators) + AddRelatedPropertyGeneratorsForNamedValueCreateContractProperties_ARM(generators) + namedValueCreateContractProperties_ARMGenerator = gen.Struct(reflect.TypeOf(NamedValueCreateContractProperties_ARM{}), generators) + + return namedValueCreateContractProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForNamedValueCreateContractProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNamedValueCreateContractProperties_ARM(gens map[string]gopter.Gen) { + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["Secret"] = gen.PtrOf(gen.Bool()) + gens["Tags"] = gen.SliceOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForNamedValueCreateContractProperties_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNamedValueCreateContractProperties_ARM(gens map[string]gopter.Gen) { + gens["KeyVault"] = gen.PtrOf(KeyVaultContractCreateProperties_ARMGenerator()) +} + +func Test_KeyVaultContractCreateProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultContractCreateProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultContractCreateProperties_ARM, KeyVaultContractCreateProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultContractCreateProperties_ARM runs a test to see if a specific instance of KeyVaultContractCreateProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultContractCreateProperties_ARM(subject KeyVaultContractCreateProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultContractCreateProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultContractCreateProperties_ARM instances for property testing - lazily instantiated by +// KeyVaultContractCreateProperties_ARMGenerator() +var keyVaultContractCreateProperties_ARMGenerator gopter.Gen + +// KeyVaultContractCreateProperties_ARMGenerator returns a generator of KeyVaultContractCreateProperties_ARM instances for property testing. +func KeyVaultContractCreateProperties_ARMGenerator() gopter.Gen { + if keyVaultContractCreateProperties_ARMGenerator != nil { + return keyVaultContractCreateProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties_ARM(generators) + keyVaultContractCreateProperties_ARMGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractCreateProperties_ARM{}), generators) + + return keyVaultContractCreateProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties_ARM(gens map[string]gopter.Gen) { + gens["IdentityClientId"] = gen.PtrOf(gen.AlphaString()) + gens["SecretIdentifier"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801/service_named_value_status_arm_types_gen.go b/v2/api/apimanagement/v1api20220801/service_named_value_status_arm_types_gen.go new file mode 100644 index 00000000000..090f1190a46 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_named_value_status_arm_types_gen.go @@ -0,0 +1,65 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +type Service_NamedValue_STATUS_ARM struct { + // Id: Fully qualified resource ID for the resource. Ex - + // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + Id *string `json:"id,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // Properties: NamedValue entity contract properties. + Properties *NamedValueContractProperties_STATUS_ARM `json:"properties,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +// NamedValue Contract properties. +type NamedValueContractProperties_STATUS_ARM struct { + // DisplayName: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. + DisplayName *string `json:"displayName,omitempty"` + + // KeyVault: KeyVault location details of the namedValue. + KeyVault *KeyVaultContractProperties_STATUS_ARM `json:"keyVault,omitempty"` + + // Secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. + Secret *bool `json:"secret,omitempty"` + + // Tags: Optional tags that when provided can be used to filter the NamedValue list. + Tags []string `json:"tags,omitempty"` + + // Value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This + // property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. + Value *string `json:"value,omitempty"` +} + +// KeyVault contract details. +type KeyVaultContractProperties_STATUS_ARM struct { + // IdentityClientId: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used to access + // key vault secret. + IdentityClientId *string `json:"identityClientId,omitempty"` + + // LastStatus: Last time sync and refresh status of secret from key vault. + LastStatus *KeyVaultLastAccessStatusContractProperties_STATUS_ARM `json:"lastStatus,omitempty"` + + // SecretIdentifier: Key vault secret identifier for fetching secret. Providing a versioned secret will prevent + // auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi + SecretIdentifier *string `json:"secretIdentifier,omitempty"` +} + +// Issue contract Update Properties. +type KeyVaultLastAccessStatusContractProperties_STATUS_ARM struct { + // Code: Last status code for sync and refresh of secret from key vault. + Code *string `json:"code,omitempty"` + + // Message: Details of the error else empty. + Message *string `json:"message,omitempty"` + + // TimeStampUtc: Last time secret was accessed. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as + // specified by the ISO 8601 standard. + TimeStampUtc *string `json:"timeStampUtc,omitempty"` +} diff --git a/v2/api/apimanagement/v1api20220801/service_named_value_status_arm_types_gen_test.go b/v2/api/apimanagement/v1api20220801/service_named_value_status_arm_types_gen_test.go new file mode 100644 index 00000000000..0a24cc86ce0 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_named_value_status_arm_types_gen_test.go @@ -0,0 +1,312 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Service_NamedValue_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_NamedValue_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_NamedValue_STATUS_ARM, Service_NamedValue_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_NamedValue_STATUS_ARM runs a test to see if a specific instance of Service_NamedValue_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForService_NamedValue_STATUS_ARM(subject Service_NamedValue_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_NamedValue_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_NamedValue_STATUS_ARM instances for property testing - lazily instantiated by +// Service_NamedValue_STATUS_ARMGenerator() +var service_NamedValue_STATUS_ARMGenerator gopter.Gen + +// Service_NamedValue_STATUS_ARMGenerator returns a generator of Service_NamedValue_STATUS_ARM instances for property testing. +// We first initialize service_NamedValue_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_NamedValue_STATUS_ARMGenerator() gopter.Gen { + if service_NamedValue_STATUS_ARMGenerator != nil { + return service_NamedValue_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_STATUS_ARM(generators) + service_NamedValue_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForService_NamedValue_STATUS_ARM(generators) + service_NamedValue_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_STATUS_ARM{}), generators) + + return service_NamedValue_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForService_NamedValue_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_NamedValue_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_NamedValue_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_NamedValue_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(NamedValueContractProperties_STATUS_ARMGenerator()) +} + +func Test_NamedValueContractProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of NamedValueContractProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNamedValueContractProperties_STATUS_ARM, NamedValueContractProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNamedValueContractProperties_STATUS_ARM runs a test to see if a specific instance of NamedValueContractProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForNamedValueContractProperties_STATUS_ARM(subject NamedValueContractProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NamedValueContractProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of NamedValueContractProperties_STATUS_ARM instances for property testing - lazily instantiated by +// NamedValueContractProperties_STATUS_ARMGenerator() +var namedValueContractProperties_STATUS_ARMGenerator gopter.Gen + +// NamedValueContractProperties_STATUS_ARMGenerator returns a generator of NamedValueContractProperties_STATUS_ARM instances for property testing. +// We first initialize namedValueContractProperties_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func NamedValueContractProperties_STATUS_ARMGenerator() gopter.Gen { + if namedValueContractProperties_STATUS_ARMGenerator != nil { + return namedValueContractProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNamedValueContractProperties_STATUS_ARM(generators) + namedValueContractProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(NamedValueContractProperties_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNamedValueContractProperties_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForNamedValueContractProperties_STATUS_ARM(generators) + namedValueContractProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(NamedValueContractProperties_STATUS_ARM{}), generators) + + return namedValueContractProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForNamedValueContractProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNamedValueContractProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["Secret"] = gen.PtrOf(gen.Bool()) + gens["Tags"] = gen.SliceOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForNamedValueContractProperties_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNamedValueContractProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["KeyVault"] = gen.PtrOf(KeyVaultContractProperties_STATUS_ARMGenerator()) +} + +func Test_KeyVaultContractProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultContractProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultContractProperties_STATUS_ARM, KeyVaultContractProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultContractProperties_STATUS_ARM runs a test to see if a specific instance of KeyVaultContractProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultContractProperties_STATUS_ARM(subject KeyVaultContractProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultContractProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultContractProperties_STATUS_ARM instances for property testing - lazily instantiated by +// KeyVaultContractProperties_STATUS_ARMGenerator() +var keyVaultContractProperties_STATUS_ARMGenerator gopter.Gen + +// KeyVaultContractProperties_STATUS_ARMGenerator returns a generator of KeyVaultContractProperties_STATUS_ARM instances for property testing. +// We first initialize keyVaultContractProperties_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func KeyVaultContractProperties_STATUS_ARMGenerator() gopter.Gen { + if keyVaultContractProperties_STATUS_ARMGenerator != nil { + return keyVaultContractProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS_ARM(generators) + keyVaultContractProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractProperties_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS_ARM(generators) + keyVaultContractProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractProperties_STATUS_ARM{}), generators) + + return keyVaultContractProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["IdentityClientId"] = gen.PtrOf(gen.AlphaString()) + gens["SecretIdentifier"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["LastStatus"] = gen.PtrOf(KeyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator()) +} + +func Test_KeyVaultLastAccessStatusContractProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultLastAccessStatusContractProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS_ARM, KeyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS_ARM runs a test to see if a specific instance of KeyVaultLastAccessStatusContractProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS_ARM(subject KeyVaultLastAccessStatusContractProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultLastAccessStatusContractProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultLastAccessStatusContractProperties_STATUS_ARM instances for property testing - lazily +// instantiated by KeyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator() +var keyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator gopter.Gen + +// KeyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator returns a generator of KeyVaultLastAccessStatusContractProperties_STATUS_ARM instances for property testing. +func KeyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator() gopter.Gen { + if keyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator != nil { + return keyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS_ARM(generators) + keyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(KeyVaultLastAccessStatusContractProperties_STATUS_ARM{}), generators) + + return keyVaultLastAccessStatusContractProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Code"] = gen.PtrOf(gen.AlphaString()) + gens["Message"] = gen.PtrOf(gen.AlphaString()) + gens["TimeStampUtc"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801/service_subscription_spec_arm_types_gen.go b/v2/api/apimanagement/v1api20220801/service_subscription_spec_arm_types_gen.go new file mode 100644 index 00000000000..a0347b21516 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_subscription_spec_arm_types_gen.go @@ -0,0 +1,69 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + +type Service_Subscription_Spec_ARM struct { + Name string `json:"name,omitempty"` + + // Properties: Subscription contract properties. + Properties *SubscriptionCreateParameterProperties_ARM `json:"properties,omitempty"` +} + +var _ genruntime.ARMResourceSpec = &Service_Subscription_Spec_ARM{} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (subscription Service_Subscription_Spec_ARM) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetName returns the Name of the resource +func (subscription *Service_Subscription_Spec_ARM) GetName() string { + return subscription.Name +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/subscriptions" +func (subscription *Service_Subscription_Spec_ARM) GetType() string { + return "Microsoft.ApiManagement/service/subscriptions" +} + +// Parameters supplied to the Create subscription operation. +type SubscriptionCreateParameterProperties_ARM struct { + // AllowTracing: Determines whether tracing can be enabled + AllowTracing *bool `json:"allowTracing,omitempty"` + + // DisplayName: Subscription name. + DisplayName *string `json:"displayName,omitempty"` + OwnerId *string `json:"ownerId,omitempty"` + + // PrimaryKey: Primary subscription key. If not specified during request key will be generated automatically. + PrimaryKey *string `json:"primaryKey,omitempty"` + + // Scope: Scope like /products/{productId} or /apis or /apis/{apiId}. + Scope *string `json:"scope,omitempty"` + + // SecondaryKey: Secondary subscription key. If not specified during request key will be generated automatically. + SecondaryKey *string `json:"secondaryKey,omitempty"` + + // State: Initial subscription state. If no value is specified, subscription is created with Submitted state. Possible + // states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber + // cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has + // not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * + // cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription + // reached its expiration date and was deactivated. + State *SubscriptionCreateParameterProperties_State `json:"state,omitempty"` +} + +// +kubebuilder:validation:Enum={"active","cancelled","expired","rejected","submitted","suspended"} +type SubscriptionCreateParameterProperties_State string + +const ( + SubscriptionCreateParameterProperties_State_Active = SubscriptionCreateParameterProperties_State("active") + SubscriptionCreateParameterProperties_State_Cancelled = SubscriptionCreateParameterProperties_State("cancelled") + SubscriptionCreateParameterProperties_State_Expired = SubscriptionCreateParameterProperties_State("expired") + SubscriptionCreateParameterProperties_State_Rejected = SubscriptionCreateParameterProperties_State("rejected") + SubscriptionCreateParameterProperties_State_Submitted = SubscriptionCreateParameterProperties_State("submitted") + SubscriptionCreateParameterProperties_State_Suspended = SubscriptionCreateParameterProperties_State("suspended") +) diff --git a/v2/api/apimanagement/v1api20220801/service_subscription_spec_arm_types_gen_test.go b/v2/api/apimanagement/v1api20220801/service_subscription_spec_arm_types_gen_test.go new file mode 100644 index 00000000000..1365d53f4fd --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_subscription_spec_arm_types_gen_test.go @@ -0,0 +1,166 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Service_Subscription_Spec_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Subscription_Spec_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Subscription_Spec_ARM, Service_Subscription_Spec_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Subscription_Spec_ARM runs a test to see if a specific instance of Service_Subscription_Spec_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Subscription_Spec_ARM(subject Service_Subscription_Spec_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Subscription_Spec_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Subscription_Spec_ARM instances for property testing - lazily instantiated by +// Service_Subscription_Spec_ARMGenerator() +var service_Subscription_Spec_ARMGenerator gopter.Gen + +// Service_Subscription_Spec_ARMGenerator returns a generator of Service_Subscription_Spec_ARM instances for property testing. +// We first initialize service_Subscription_Spec_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_Subscription_Spec_ARMGenerator() gopter.Gen { + if service_Subscription_Spec_ARMGenerator != nil { + return service_Subscription_Spec_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Subscription_Spec_ARM(generators) + service_Subscription_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(Service_Subscription_Spec_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Subscription_Spec_ARM(generators) + AddRelatedPropertyGeneratorsForService_Subscription_Spec_ARM(generators) + service_Subscription_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(Service_Subscription_Spec_ARM{}), generators) + + return service_Subscription_Spec_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForService_Subscription_Spec_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Subscription_Spec_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.AlphaString() +} + +// AddRelatedPropertyGeneratorsForService_Subscription_Spec_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_Subscription_Spec_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(SubscriptionCreateParameterProperties_ARMGenerator()) +} + +func Test_SubscriptionCreateParameterProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of SubscriptionCreateParameterProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSubscriptionCreateParameterProperties_ARM, SubscriptionCreateParameterProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSubscriptionCreateParameterProperties_ARM runs a test to see if a specific instance of SubscriptionCreateParameterProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForSubscriptionCreateParameterProperties_ARM(subject SubscriptionCreateParameterProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual SubscriptionCreateParameterProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of SubscriptionCreateParameterProperties_ARM instances for property testing - lazily instantiated by +// SubscriptionCreateParameterProperties_ARMGenerator() +var subscriptionCreateParameterProperties_ARMGenerator gopter.Gen + +// SubscriptionCreateParameterProperties_ARMGenerator returns a generator of SubscriptionCreateParameterProperties_ARM instances for property testing. +func SubscriptionCreateParameterProperties_ARMGenerator() gopter.Gen { + if subscriptionCreateParameterProperties_ARMGenerator != nil { + return subscriptionCreateParameterProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSubscriptionCreateParameterProperties_ARM(generators) + subscriptionCreateParameterProperties_ARMGenerator = gen.Struct(reflect.TypeOf(SubscriptionCreateParameterProperties_ARM{}), generators) + + return subscriptionCreateParameterProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForSubscriptionCreateParameterProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSubscriptionCreateParameterProperties_ARM(gens map[string]gopter.Gen) { + gens["AllowTracing"] = gen.PtrOf(gen.Bool()) + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["OwnerId"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryKey"] = gen.PtrOf(gen.AlphaString()) + gens["Scope"] = gen.PtrOf(gen.AlphaString()) + gens["SecondaryKey"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.OneConstOf( + SubscriptionCreateParameterProperties_State_Active, + SubscriptionCreateParameterProperties_State_Cancelled, + SubscriptionCreateParameterProperties_State_Expired, + SubscriptionCreateParameterProperties_State_Rejected, + SubscriptionCreateParameterProperties_State_Submitted, + SubscriptionCreateParameterProperties_State_Suspended)) +} diff --git a/v2/api/apimanagement/v1api20220801/service_subscription_status_arm_types_gen.go b/v2/api/apimanagement/v1api20220801/service_subscription_status_arm_types_gen.go new file mode 100644 index 00000000000..cf33ffff0c5 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_subscription_status_arm_types_gen.go @@ -0,0 +1,79 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +type Service_Subscription_STATUS_ARM struct { + // Id: Fully qualified resource ID for the resource. Ex - + // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + Id *string `json:"id,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // Properties: Subscription contract properties. + Properties *SubscriptionContractProperties_STATUS_ARM `json:"properties,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +// Subscription details. +type SubscriptionContractProperties_STATUS_ARM struct { + // AllowTracing: Determines whether tracing is enabled + AllowTracing *bool `json:"allowTracing,omitempty"` + + // CreatedDate: Subscription creation date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + // by the ISO 8601 standard. + CreatedDate *string `json:"createdDate,omitempty"` + + // DisplayName: The name of the subscription, or null if the subscription has no name. + DisplayName *string `json:"displayName,omitempty"` + + // EndDate: Date when subscription was cancelled or expired. The setting is for audit purposes only and the subscription is + // not automatically cancelled. The subscription lifecycle can be managed by using the `state` property. The date conforms + // to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + EndDate *string `json:"endDate,omitempty"` + + // ExpirationDate: Subscription expiration date. The setting is for audit purposes only and the subscription is not + // automatically expired. The subscription lifecycle can be managed by using the `state` property. The date conforms to the + // following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + ExpirationDate *string `json:"expirationDate,omitempty"` + + // NotificationDate: Upcoming subscription expiration notification date. The date conforms to the following format: + // `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + NotificationDate *string `json:"notificationDate,omitempty"` + + // OwnerId: The user resource identifier of the subscription owner. The value is a valid relative URL in the format of + // /users/{userId} where {userId} is a user identifier. + OwnerId *string `json:"ownerId,omitempty"` + + // Scope: Scope like /products/{productId} or /apis or /apis/{apiId}. + Scope *string `json:"scope,omitempty"` + + // StartDate: Subscription activation date. The setting is for audit purposes only and the subscription is not + // automatically activated. The subscription lifecycle can be managed by using the `state` property. The date conforms to + // the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + StartDate *string `json:"startDate,omitempty"` + + // State: Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription + // is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been + // made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been + // denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * + // expired – the subscription reached its expiration date and was deactivated. + State *SubscriptionContractProperties_State_STATUS `json:"state,omitempty"` + + // StateComment: Optional subscription comment added by an administrator when the state is changed to the 'rejected'. + StateComment *string `json:"stateComment,omitempty"` +} + +type SubscriptionContractProperties_State_STATUS string + +const ( + SubscriptionContractProperties_State_STATUS_Active = SubscriptionContractProperties_State_STATUS("active") + SubscriptionContractProperties_State_STATUS_Cancelled = SubscriptionContractProperties_State_STATUS("cancelled") + SubscriptionContractProperties_State_STATUS_Expired = SubscriptionContractProperties_State_STATUS("expired") + SubscriptionContractProperties_State_STATUS_Rejected = SubscriptionContractProperties_State_STATUS("rejected") + SubscriptionContractProperties_State_STATUS_Submitted = SubscriptionContractProperties_State_STATUS("submitted") + SubscriptionContractProperties_State_STATUS_Suspended = SubscriptionContractProperties_State_STATUS("suspended") +) diff --git a/v2/api/apimanagement/v1api20220801/service_subscription_status_arm_types_gen_test.go b/v2/api/apimanagement/v1api20220801/service_subscription_status_arm_types_gen_test.go new file mode 100644 index 00000000000..e3ce77ccebc --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/service_subscription_status_arm_types_gen_test.go @@ -0,0 +1,172 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Service_Subscription_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Subscription_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Subscription_STATUS_ARM, Service_Subscription_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Subscription_STATUS_ARM runs a test to see if a specific instance of Service_Subscription_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Subscription_STATUS_ARM(subject Service_Subscription_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Subscription_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Subscription_STATUS_ARM instances for property testing - lazily instantiated by +// Service_Subscription_STATUS_ARMGenerator() +var service_Subscription_STATUS_ARMGenerator gopter.Gen + +// Service_Subscription_STATUS_ARMGenerator returns a generator of Service_Subscription_STATUS_ARM instances for property testing. +// We first initialize service_Subscription_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_Subscription_STATUS_ARMGenerator() gopter.Gen { + if service_Subscription_STATUS_ARMGenerator != nil { + return service_Subscription_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Subscription_STATUS_ARM(generators) + service_Subscription_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Service_Subscription_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Subscription_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForService_Subscription_STATUS_ARM(generators) + service_Subscription_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Service_Subscription_STATUS_ARM{}), generators) + + return service_Subscription_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForService_Subscription_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Subscription_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_Subscription_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_Subscription_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(SubscriptionContractProperties_STATUS_ARMGenerator()) +} + +func Test_SubscriptionContractProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of SubscriptionContractProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSubscriptionContractProperties_STATUS_ARM, SubscriptionContractProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSubscriptionContractProperties_STATUS_ARM runs a test to see if a specific instance of SubscriptionContractProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForSubscriptionContractProperties_STATUS_ARM(subject SubscriptionContractProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual SubscriptionContractProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of SubscriptionContractProperties_STATUS_ARM instances for property testing - lazily instantiated by +// SubscriptionContractProperties_STATUS_ARMGenerator() +var subscriptionContractProperties_STATUS_ARMGenerator gopter.Gen + +// SubscriptionContractProperties_STATUS_ARMGenerator returns a generator of SubscriptionContractProperties_STATUS_ARM instances for property testing. +func SubscriptionContractProperties_STATUS_ARMGenerator() gopter.Gen { + if subscriptionContractProperties_STATUS_ARMGenerator != nil { + return subscriptionContractProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSubscriptionContractProperties_STATUS_ARM(generators) + subscriptionContractProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(SubscriptionContractProperties_STATUS_ARM{}), generators) + + return subscriptionContractProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForSubscriptionContractProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSubscriptionContractProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["AllowTracing"] = gen.PtrOf(gen.Bool()) + gens["CreatedDate"] = gen.PtrOf(gen.AlphaString()) + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["EndDate"] = gen.PtrOf(gen.AlphaString()) + gens["ExpirationDate"] = gen.PtrOf(gen.AlphaString()) + gens["NotificationDate"] = gen.PtrOf(gen.AlphaString()) + gens["OwnerId"] = gen.PtrOf(gen.AlphaString()) + gens["Scope"] = gen.PtrOf(gen.AlphaString()) + gens["StartDate"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.OneConstOf( + SubscriptionContractProperties_State_STATUS_Active, + SubscriptionContractProperties_State_STATUS_Cancelled, + SubscriptionContractProperties_State_STATUS_Expired, + SubscriptionContractProperties_State_STATUS_Rejected, + SubscriptionContractProperties_State_STATUS_Submitted, + SubscriptionContractProperties_State_STATUS_Suspended)) + gens["StateComment"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801/service_types_gen.go b/v2/api/apimanagement/v1api20220801/service_types_gen.go index 405d734daf3..b9869c0345c 100644 --- a/v2/api/apimanagement/v1api20220801/service_types_gen.go +++ b/v2/api/apimanagement/v1api20220801/service_types_gen.go @@ -327,11 +327,6 @@ type ServiceList struct { Items []Service `json:"items"` } -// +kubebuilder:validation:Enum={"2022-08-01"} -type APIVersion string - -const APIVersion_Value = APIVersion("2022-08-01") - type Service_Spec struct { // AdditionalLocations: Additional datacenter locations of the API Management service. AdditionalLocations []AdditionalLocation `json:"additionalLocations,omitempty"` diff --git a/v2/api/apimanagement/v1api20220801/structure.txt b/v2/api/apimanagement/v1api20220801/structure.txt index ae33b195c1e..0a7e48a0f44 100644 --- a/v2/api/apimanagement/v1api20220801/structure.txt +++ b/v2/api/apimanagement/v1api20220801/structure.txt @@ -2,6 +2,131 @@ github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801 ├── APIVersion: Enum (1 value) │ └── "2022-08-01" +├── Backend: Resource +│ ├── Owner: Service +│ ├── Spec: Object (11 properties) +│ │ ├── AzureName: Validated (2 rules) +│ │ │ ├── Rule 0: MaxLength: 80 +│ │ │ └── Rule 1: MinLength: 1 +│ │ ├── Credentials: *Object (5 properties) +│ │ │ ├── Authorization: *Object (2 properties) +│ │ │ │ ├── Parameter: Validated<*string> (2 rules) +│ │ │ │ │ ├── Rule 0: MaxLength: 300 +│ │ │ │ │ └── Rule 1: MinLength: 1 +│ │ │ │ └── Scheme: Validated<*string> (2 rules) +│ │ │ │ ├── Rule 0: MaxLength: 100 +│ │ │ │ └── Rule 1: MinLength: 1 +│ │ │ ├── Certificate: Validated (1 rule) +│ │ │ │ └── Rule 0: MaxItems: 32 +│ │ │ ├── CertificateIds: Validated (1 rule) +│ │ │ │ └── Rule 0: MaxItems: 32 +│ │ │ ├── Header: map[string]string[] +│ │ │ └── Query: map[string]string[] +│ │ ├── Description: Validated<*string> (2 rules) +│ │ │ ├── Rule 0: MaxLength: 2000 +│ │ │ └── Rule 1: MinLength: 1 +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── Properties: *Object (1 property) +│ │ │ └── ServiceFabricCluster: *Object (6 properties) +│ │ │ ├── ClientCertificateId: *string +│ │ │ ├── ClientCertificatethumbprint: *string +│ │ │ ├── ManagementEndpoints: string[] +│ │ │ ├── MaxPartitionResolutionRetries: *int +│ │ │ ├── ServerCertificateThumbprints: string[] +│ │ │ └── ServerX509Names: Object (2 properties)[] +│ │ │ ├── IssuerCertificateThumbprint: *string +│ │ │ └── Name: *string +│ │ ├── Protocol: *Enum (2 values) +│ │ │ ├── "http" +│ │ │ └── "soap" +│ │ ├── Proxy: *Object (3 properties) +│ │ │ ├── Password: *genruntime.SecretReference +│ │ │ ├── Url: Validated<*string> (2 rules) +│ │ │ │ ├── Rule 0: MaxLength: 2000 +│ │ │ │ └── Rule 1: MinLength: 1 +│ │ │ └── Username: *string +│ │ ├── ResourceReference: *genruntime.ResourceReference +│ │ ├── Title: Validated<*string> (2 rules) +│ │ │ ├── Rule 0: MaxLength: 300 +│ │ │ └── Rule 1: MinLength: 1 +│ │ ├── Tls: *Object (2 properties) +│ │ │ ├── ValidateCertificateChain: *bool +│ │ │ └── ValidateCertificateName: *bool +│ │ └── Url: Validated<*string> (2 rules) +│ │ ├── Rule 0: MaxLength: 2000 +│ │ └── Rule 1: MinLength: 1 +│ └── Status: Object (13 properties) +│ ├── Conditions: conditions.Condition[] +│ ├── Credentials: *Object (5 properties) +│ │ ├── Authorization: *Object (2 properties) +│ │ │ ├── Parameter: *string +│ │ │ └── Scheme: *string +│ │ ├── Certificate: string[] +│ │ ├── CertificateIds: string[] +│ │ ├── Header: map[string]string[] +│ │ └── Query: map[string]string[] +│ ├── Description: *string +│ ├── Id: *string +│ ├── Name: *string +│ ├── Properties: *Object (1 property) +│ │ └── ServiceFabricCluster: *Object (6 properties) +│ │ ├── ClientCertificateId: *string +│ │ ├── ClientCertificatethumbprint: *string +│ │ ├── ManagementEndpoints: string[] +│ │ ├── MaxPartitionResolutionRetries: *int +│ │ ├── ServerCertificateThumbprints: string[] +│ │ └── ServerX509Names: Object (2 properties)[] +│ │ ├── IssuerCertificateThumbprint: *string +│ │ └── Name: *string +│ ├── Protocol: *Enum (2 values) +│ │ ├── "http" +│ │ └── "soap" +│ ├── Proxy: *Object (2 properties) +│ │ ├── Url: *string +│ │ └── Username: *string +│ ├── ResourceId: *string +│ ├── Title: *string +│ ├── Tls: *Object (2 properties) +│ │ ├── ValidateCertificateChain: *bool +│ │ └── ValidateCertificateName: *bool +│ ├── Type: *string +│ └── Url: *string +├── NamedValue: Resource +│ ├── Owner: Service +│ ├── Spec: Object (7 properties) +│ │ ├── AzureName: Validated (2 rules) +│ │ │ ├── Rule 0: MaxLength: 256 +│ │ │ └── Rule 1: Pattern: "^[^*#&+:<>?]+$" +│ │ ├── DisplayName: Validated<*string> (3 rules) +│ │ │ ├── Rule 0: MaxLength: 256 +│ │ │ ├── Rule 1: MinLength: 1 +│ │ │ └── Rule 2: Pattern: "^[A-Za-z0-9-._]+$" +│ │ ├── KeyVault: *Object (3 properties) +│ │ │ ├── IdentityClientId: *string +│ │ │ ├── IdentityClientIdFromConfig: *genruntime.ConfigMapReference +│ │ │ └── SecretIdentifier: *string +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── Secret: *bool +│ │ ├── Tags: Validated (1 rule) +│ │ │ └── Rule 0: MaxItems: 32 +│ │ └── Value: Validated<*string> (1 rule) +│ │ └── Rule 0: MaxLength: 4096 +│ └── Status: Object (9 properties) +│ ├── Conditions: conditions.Condition[] +│ ├── DisplayName: *string +│ ├── Id: *string +│ ├── KeyVault: *Object (3 properties) +│ │ ├── IdentityClientId: *string +│ │ ├── LastStatus: *Object (3 properties) +│ │ │ ├── Code: *string +│ │ │ ├── Message: *string +│ │ │ └── TimeStampUtc: *string +│ │ └── SecretIdentifier: *string +│ ├── Name: *string +│ ├── Secret: *bool +│ ├── Tags: string[] +│ ├── Type: *string +│ └── Value: *string ├── Service: Resource │ ├── Owner: github.com/Azure/azure-service-operator/v2/api/resources/v1apiv20191001.ResourceGroup │ ├── Spec: Object (23 properties) @@ -283,6 +408,103 @@ github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801 │ │ ├── "Internal" │ │ └── "None" │ └── Zones: string[] +├── Service_Backend_STATUS_ARM: Object (4 properties) +│ ├── Id: *string +│ ├── Name: *string +│ ├── Properties: *Object (9 properties) +│ │ ├── Credentials: *Object (5 properties) +│ │ │ ├── Authorization: *Object (2 properties) +│ │ │ │ ├── Parameter: *string +│ │ │ │ └── Scheme: *string +│ │ │ ├── Certificate: string[] +│ │ │ ├── CertificateIds: string[] +│ │ │ ├── Header: map[string]string[] +│ │ │ └── Query: map[string]string[] +│ │ ├── Description: *string +│ │ ├── Properties: *Object (1 property) +│ │ │ └── ServiceFabricCluster: *Object (6 properties) +│ │ │ ├── ClientCertificateId: *string +│ │ │ ├── ClientCertificatethumbprint: *string +│ │ │ ├── ManagementEndpoints: string[] +│ │ │ ├── MaxPartitionResolutionRetries: *int +│ │ │ ├── ServerCertificateThumbprints: string[] +│ │ │ └── ServerX509Names: Object (2 properties)[] +│ │ │ ├── IssuerCertificateThumbprint: *string +│ │ │ └── Name: *string +│ │ ├── Protocol: *Enum (2 values) +│ │ │ ├── "http" +│ │ │ └── "soap" +│ │ ├── Proxy: *Object (2 properties) +│ │ │ ├── Url: *string +│ │ │ └── Username: *string +│ │ ├── ResourceId: *string +│ │ ├── Title: *string +│ │ ├── Tls: *Object (2 properties) +│ │ │ ├── ValidateCertificateChain: *bool +│ │ │ └── ValidateCertificateName: *bool +│ │ └── Url: *string +│ └── Type: *string +├── Service_Backend_Spec_ARM: Object (2 properties) +│ ├── Name: string +│ └── Properties: *Object (9 properties) +│ ├── Credentials: *Object (5 properties) +│ │ ├── Authorization: *Object (2 properties) +│ │ │ ├── Parameter: *string +│ │ │ └── Scheme: *string +│ │ ├── Certificate: string[] +│ │ ├── CertificateIds: string[] +│ │ ├── Header: map[string]string[] +│ │ └── Query: map[string]string[] +│ ├── Description: *string +│ ├── Properties: *Object (1 property) +│ │ └── ServiceFabricCluster: *Object (6 properties) +│ │ ├── ClientCertificateId: *string +│ │ ├── ClientCertificatethumbprint: *string +│ │ ├── ManagementEndpoints: string[] +│ │ ├── MaxPartitionResolutionRetries: *int +│ │ ├── ServerCertificateThumbprints: string[] +│ │ └── ServerX509Names: Object (2 properties)[] +│ │ ├── IssuerCertificateThumbprint: *string +│ │ └── Name: *string +│ ├── Protocol: *Enum (2 values) +│ │ ├── "http" +│ │ └── "soap" +│ ├── Proxy: *Object (3 properties) +│ │ ├── Password: *string +│ │ ├── Url: *string +│ │ └── Username: *string +│ ├── ResourceId: *string +│ ├── Title: *string +│ ├── Tls: *Object (2 properties) +│ │ ├── ValidateCertificateChain: *bool +│ │ └── ValidateCertificateName: *bool +│ └── Url: *string +├── Service_NamedValue_STATUS_ARM: Object (4 properties) +│ ├── Id: *string +│ ├── Name: *string +│ ├── Properties: *Object (5 properties) +│ │ ├── DisplayName: *string +│ │ ├── KeyVault: *Object (3 properties) +│ │ │ ├── IdentityClientId: *string +│ │ │ ├── LastStatus: *Object (3 properties) +│ │ │ │ ├── Code: *string +│ │ │ │ ├── Message: *string +│ │ │ │ └── TimeStampUtc: *string +│ │ │ └── SecretIdentifier: *string +│ │ ├── Secret: *bool +│ │ ├── Tags: string[] +│ │ └── Value: *string +│ └── Type: *string +├── Service_NamedValue_Spec_ARM: Object (2 properties) +│ ├── Name: string +│ └── Properties: *Object (5 properties) +│ ├── DisplayName: *string +│ ├── KeyVault: *Object (2 properties) +│ │ ├── IdentityClientId: *string +│ │ └── SecretIdentifier: *string +│ ├── Secret: *bool +│ ├── Tags: string[] +│ └── Value: *string ├── Service_STATUS_ARM: Object (11 properties) │ ├── Etag: *string │ ├── Id: *string @@ -449,103 +671,185 @@ github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801 │ ├── Tags: map[string]string │ ├── Type: *string │ └── Zones: string[] -└── Service_Spec_ARM: Object (7 properties) - ├── Identity: *Object (2 properties) - │ ├── Type: *Enum (4 values) - │ │ ├── "None" - │ │ ├── "SystemAssigned" - │ │ ├── "SystemAssigned, UserAssigned" - │ │ └── "UserAssigned" - │ └── UserAssignedIdentities: map[string]Object (0 properties) - ├── Location: *string - ├── Name: string - ├── Properties: *Object (16 properties) - │ ├── AdditionalLocations: Object (7 properties)[] - │ │ ├── DisableGateway: *bool - │ │ ├── Location: *string - │ │ ├── NatGatewayState: *Enum (2 values) - │ │ │ ├── "Disabled" - │ │ │ └── "Enabled" - │ │ ├── PublicIpAddressId: *string - │ │ ├── Sku: *Object (2 properties) - │ │ │ ├── Capacity: *int - │ │ │ └── Name: *Enum (6 values) - │ │ │ ├── "Basic" - │ │ │ ├── "Consumption" - │ │ │ ├── "Developer" - │ │ │ ├── "Isolated" - │ │ │ ├── "Premium" - │ │ │ └── "Standard" - │ │ ├── VirtualNetworkConfiguration: *Object (1 property) - │ │ │ └── SubnetResourceId: *string - │ │ └── Zones: string[] - │ ├── ApiVersionConstraint: *Object (1 property) - │ │ └── MinApiVersion: *string - │ ├── Certificates: Object (4 properties)[] - │ │ ├── Certificate: *Object (3 properties) - │ │ │ ├── Expiry: *string - │ │ │ ├── Subject: *string - │ │ │ └── Thumbprint: *string - │ │ ├── CertificatePassword: *string - │ │ ├── EncodedCertificate: *string - │ │ └── StoreName: *Enum (2 values) - │ │ ├── "CertificateAuthority" - │ │ └── "Root" - │ ├── CustomProperties: map[string]string - │ ├── DisableGateway: *bool - │ ├── EnableClientCertificate: *bool - │ ├── HostnameConfigurations: Object (11 properties)[] - │ │ ├── Certificate: *Object (3 properties) - │ │ │ ├── Expiry: *string - │ │ │ ├── Subject: *string - │ │ │ └── Thumbprint: *string - │ │ ├── CertificatePassword: *string - │ │ ├── CertificateSource: *Enum (4 values) - │ │ │ ├── "BuiltIn" - │ │ │ ├── "Custom" - │ │ │ ├── "KeyVault" - │ │ │ └── "Managed" - │ │ ├── CertificateStatus: *Enum (3 values) - │ │ │ ├── "Completed" - │ │ │ ├── "Failed" - │ │ │ └── "InProgress" - │ │ ├── DefaultSslBinding: *bool - │ │ ├── EncodedCertificate: *string - │ │ ├── HostName: *string - │ │ ├── IdentityClientId: *string - │ │ ├── KeyVaultId: *string - │ │ ├── NegotiateClientCertificate: *bool - │ │ └── Type: *Enum (5 values) - │ │ ├── "DeveloperPortal" - │ │ ├── "Management" - │ │ ├── "Portal" - │ │ ├── "Proxy" - │ │ └── "Scm" - │ ├── NatGatewayState: *Enum (2 values) - │ │ ├── "Disabled" - │ │ └── "Enabled" - │ ├── NotificationSenderEmail: *string - │ ├── PublicIpAddressId: *string - │ ├── PublicNetworkAccess: *Enum (2 values) - │ │ ├── "Disabled" - │ │ └── "Enabled" - │ ├── PublisherEmail: *string - │ ├── PublisherName: *string - │ ├── Restore: *bool - │ ├── VirtualNetworkConfiguration: *Object (1 property) - │ │ └── SubnetResourceId: *string - │ └── VirtualNetworkType: *Enum (3 values) - │ ├── "External" - │ ├── "Internal" - │ └── "None" - ├── Sku: *Object (2 properties) - │ ├── Capacity: *int - │ └── Name: *Enum (6 values) - │ ├── "Basic" - │ ├── "Consumption" - │ ├── "Developer" - │ ├── "Isolated" - │ ├── "Premium" - │ └── "Standard" - ├── Tags: map[string]string - └── Zones: string[] +├── Service_Spec_ARM: Object (7 properties) +│ ├── Identity: *Object (2 properties) +│ │ ├── Type: *Enum (4 values) +│ │ │ ├── "None" +│ │ │ ├── "SystemAssigned" +│ │ │ ├── "SystemAssigned, UserAssigned" +│ │ │ └── "UserAssigned" +│ │ └── UserAssignedIdentities: map[string]Object (0 properties) +│ ├── Location: *string +│ ├── Name: string +│ ├── Properties: *Object (16 properties) +│ │ ├── AdditionalLocations: Object (7 properties)[] +│ │ │ ├── DisableGateway: *bool +│ │ │ ├── Location: *string +│ │ │ ├── NatGatewayState: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ ├── PublicIpAddressId: *string +│ │ │ ├── Sku: *Object (2 properties) +│ │ │ │ ├── Capacity: *int +│ │ │ │ └── Name: *Enum (6 values) +│ │ │ │ ├── "Basic" +│ │ │ │ ├── "Consumption" +│ │ │ │ ├── "Developer" +│ │ │ │ ├── "Isolated" +│ │ │ │ ├── "Premium" +│ │ │ │ └── "Standard" +│ │ │ ├── VirtualNetworkConfiguration: *Object (1 property) +│ │ │ │ └── SubnetResourceId: *string +│ │ │ └── Zones: string[] +│ │ ├── ApiVersionConstraint: *Object (1 property) +│ │ │ └── MinApiVersion: *string +│ │ ├── Certificates: Object (4 properties)[] +│ │ │ ├── Certificate: *Object (3 properties) +│ │ │ │ ├── Expiry: *string +│ │ │ │ ├── Subject: *string +│ │ │ │ └── Thumbprint: *string +│ │ │ ├── CertificatePassword: *string +│ │ │ ├── EncodedCertificate: *string +│ │ │ └── StoreName: *Enum (2 values) +│ │ │ ├── "CertificateAuthority" +│ │ │ └── "Root" +│ │ ├── CustomProperties: map[string]string +│ │ ├── DisableGateway: *bool +│ │ ├── EnableClientCertificate: *bool +│ │ ├── HostnameConfigurations: Object (11 properties)[] +│ │ │ ├── Certificate: *Object (3 properties) +│ │ │ │ ├── Expiry: *string +│ │ │ │ ├── Subject: *string +│ │ │ │ └── Thumbprint: *string +│ │ │ ├── CertificatePassword: *string +│ │ │ ├── CertificateSource: *Enum (4 values) +│ │ │ │ ├── "BuiltIn" +│ │ │ │ ├── "Custom" +│ │ │ │ ├── "KeyVault" +│ │ │ │ └── "Managed" +│ │ │ ├── CertificateStatus: *Enum (3 values) +│ │ │ │ ├── "Completed" +│ │ │ │ ├── "Failed" +│ │ │ │ └── "InProgress" +│ │ │ ├── DefaultSslBinding: *bool +│ │ │ ├── EncodedCertificate: *string +│ │ │ ├── HostName: *string +│ │ │ ├── IdentityClientId: *string +│ │ │ ├── KeyVaultId: *string +│ │ │ ├── NegotiateClientCertificate: *bool +│ │ │ └── Type: *Enum (5 values) +│ │ │ ├── "DeveloperPortal" +│ │ │ ├── "Management" +│ │ │ ├── "Portal" +│ │ │ ├── "Proxy" +│ │ │ └── "Scm" +│ │ ├── NatGatewayState: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── NotificationSenderEmail: *string +│ │ ├── PublicIpAddressId: *string +│ │ ├── PublicNetworkAccess: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── PublisherEmail: *string +│ │ ├── PublisherName: *string +│ │ ├── Restore: *bool +│ │ ├── VirtualNetworkConfiguration: *Object (1 property) +│ │ │ └── SubnetResourceId: *string +│ │ └── VirtualNetworkType: *Enum (3 values) +│ │ ├── "External" +│ │ ├── "Internal" +│ │ └── "None" +│ ├── Sku: *Object (2 properties) +│ │ ├── Capacity: *int +│ │ └── Name: *Enum (6 values) +│ │ ├── "Basic" +│ │ ├── "Consumption" +│ │ ├── "Developer" +│ │ ├── "Isolated" +│ │ ├── "Premium" +│ │ └── "Standard" +│ ├── Tags: map[string]string +│ └── Zones: string[] +├── Service_Subscription_STATUS_ARM: Object (4 properties) +│ ├── Id: *string +│ ├── Name: *string +│ ├── Properties: *Object (11 properties) +│ │ ├── AllowTracing: *bool +│ │ ├── CreatedDate: *string +│ │ ├── DisplayName: *string +│ │ ├── EndDate: *string +│ │ ├── ExpirationDate: *string +│ │ ├── NotificationDate: *string +│ │ ├── OwnerId: *string +│ │ ├── Scope: *string +│ │ ├── StartDate: *string +│ │ ├── State: *Enum (6 values) +│ │ │ ├── "active" +│ │ │ ├── "cancelled" +│ │ │ ├── "expired" +│ │ │ ├── "rejected" +│ │ │ ├── "submitted" +│ │ │ └── "suspended" +│ │ └── StateComment: *string +│ └── Type: *string +├── Service_Subscription_Spec_ARM: Object (2 properties) +│ ├── Name: string +│ └── Properties: *Object (7 properties) +│ ├── AllowTracing: *bool +│ ├── DisplayName: *string +│ ├── OwnerId: *string +│ ├── PrimaryKey: *string +│ ├── Scope: *string +│ ├── SecondaryKey: *string +│ └── State: *Enum (6 values) +│ ├── "active" +│ ├── "cancelled" +│ ├── "expired" +│ ├── "rejected" +│ ├── "submitted" +│ └── "suspended" +└── Subscription: Resource + ├── Owner: Service + ├── Spec: Object (9 properties) + │ ├── AllowTracing: *bool + │ ├── AzureName: Validated (2 rules) + │ │ ├── Rule 0: MaxLength: 256 + │ │ └── Rule 1: Pattern: "^[^*#&+:<>?]+$" + │ ├── DisplayName: Validated<*string> (2 rules) + │ │ ├── Rule 0: MaxLength: 100 + │ │ └── Rule 1: MinLength: 1 + │ ├── Owner: *genruntime.KnownResourceReference + │ ├── OwnerReference: *genruntime.ResourceReference + │ ├── PrimaryKey: *genruntime.SecretReference + │ ├── Scope: *string + │ ├── SecondaryKey: *genruntime.SecretReference + │ └── State: *Enum (6 values) + │ ├── "active" + │ ├── "cancelled" + │ ├── "expired" + │ ├── "rejected" + │ ├── "submitted" + │ └── "suspended" + └── Status: Object (15 properties) + ├── AllowTracing: *bool + ├── Conditions: conditions.Condition[] + ├── CreatedDate: *string + ├── DisplayName: *string + ├── EndDate: *string + ├── ExpirationDate: *string + ├── Id: *string + ├── Name: *string + ├── NotificationDate: *string + ├── OwnerId: *string + ├── Scope: *string + ├── StartDate: *string + ├── State: *Enum (6 values) + │ ├── "active" + │ ├── "cancelled" + │ ├── "expired" + │ ├── "rejected" + │ ├── "submitted" + │ └── "suspended" + ├── StateComment: *string + └── Type: *string diff --git a/v2/api/apimanagement/v1api20220801/subscription_types_gen.go b/v2/api/apimanagement/v1api20220801/subscription_types_gen.go new file mode 100644 index 00000000000..7b30c5ad955 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/subscription_types_gen.go @@ -0,0 +1,1129 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "fmt" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/Azure/azure-service-operator/v2/internal/reflecthelpers" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" + "sigs.k8s.io/controller-runtime/pkg/webhook/admission" +) + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimsubscriptions.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid} +type Subscription struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec Service_Subscription_Spec `json:"spec,omitempty"` + Status Service_Subscription_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &Subscription{} + +// GetConditions returns the conditions of the resource +func (subscription *Subscription) GetConditions() conditions.Conditions { + return subscription.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (subscription *Subscription) SetConditions(conditions conditions.Conditions) { + subscription.Status.Conditions = conditions +} + +var _ conversion.Convertible = &Subscription{} + +// ConvertFrom populates our Subscription from the provided hub Subscription +func (subscription *Subscription) ConvertFrom(hub conversion.Hub) error { + source, ok := hub.(*v20220801s.Subscription) + if !ok { + return fmt.Errorf("expected apimanagement/v1api20220801storage/Subscription but received %T instead", hub) + } + + return subscription.AssignProperties_From_Subscription(source) +} + +// ConvertTo populates the provided hub Subscription from our Subscription +func (subscription *Subscription) ConvertTo(hub conversion.Hub) error { + destination, ok := hub.(*v20220801s.Subscription) + if !ok { + return fmt.Errorf("expected apimanagement/v1api20220801storage/Subscription but received %T instead", hub) + } + + return subscription.AssignProperties_To_Subscription(destination) +} + +// +kubebuilder:webhook:path=/mutate-apimanagement-azure-com-v1api20220801-subscription,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=apimanagement.azure.com,resources=subscriptions,verbs=create;update,versions=v1api20220801,name=default.v1api20220801.subscriptions.apimanagement.azure.com,admissionReviewVersions=v1 + +var _ admission.Defaulter = &Subscription{} + +// Default applies defaults to the Subscription resource +func (subscription *Subscription) Default() { + subscription.defaultImpl() + var temp any = subscription + if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok { + runtimeDefaulter.CustomDefault() + } +} + +// defaultAzureName defaults the Azure name of the resource to the Kubernetes name +func (subscription *Subscription) defaultAzureName() { + if subscription.Spec.AzureName == "" { + subscription.Spec.AzureName = subscription.Name + } +} + +// defaultImpl applies the code generated defaults to the Subscription resource +func (subscription *Subscription) defaultImpl() { subscription.defaultAzureName() } + +var _ genruntime.ImportableResource = &Subscription{} + +// InitializeSpec initializes the spec for this resource from the given status +func (subscription *Subscription) InitializeSpec(status genruntime.ConvertibleStatus) error { + if s, ok := status.(*Service_Subscription_STATUS); ok { + return subscription.Spec.Initialize_From_Service_Subscription_STATUS(s) + } + + return fmt.Errorf("expected Status of type Service_Subscription_STATUS but received %T instead", status) +} + +var _ genruntime.KubernetesResource = &Subscription{} + +// AzureName returns the Azure name of the resource +func (subscription *Subscription) AzureName() string { + return subscription.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (subscription Subscription) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (subscription *Subscription) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (subscription *Subscription) GetSpec() genruntime.ConvertibleSpec { + return &subscription.Spec +} + +// GetStatus returns the status of this resource +func (subscription *Subscription) GetStatus() genruntime.ConvertibleStatus { + return &subscription.Status +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/subscriptions" +func (subscription *Subscription) GetType() string { + return "Microsoft.ApiManagement/service/subscriptions" +} + +// NewEmptyStatus returns a new empty (blank) status +func (subscription *Subscription) NewEmptyStatus() genruntime.ConvertibleStatus { + return &Service_Subscription_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (subscription *Subscription) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(subscription.Spec) + return subscription.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (subscription *Subscription) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*Service_Subscription_STATUS); ok { + subscription.Status = *st + return nil + } + + // Convert status to required version + var st Service_Subscription_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + subscription.Status = st + return nil +} + +// +kubebuilder:webhook:path=/validate-apimanagement-azure-com-v1api20220801-subscription,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=apimanagement.azure.com,resources=subscriptions,verbs=create;update,versions=v1api20220801,name=validate.v1api20220801.subscriptions.apimanagement.azure.com,admissionReviewVersions=v1 + +var _ admission.Validator = &Subscription{} + +// ValidateCreate validates the creation of the resource +func (subscription *Subscription) ValidateCreate() (admission.Warnings, error) { + validations := subscription.createValidations() + var temp any = subscription + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.CreateValidations()...) + } + return genruntime.ValidateCreate(validations) +} + +// ValidateDelete validates the deletion of the resource +func (subscription *Subscription) ValidateDelete() (admission.Warnings, error) { + validations := subscription.deleteValidations() + var temp any = subscription + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.DeleteValidations()...) + } + return genruntime.ValidateDelete(validations) +} + +// ValidateUpdate validates an update of the resource +func (subscription *Subscription) ValidateUpdate(old runtime.Object) (admission.Warnings, error) { + validations := subscription.updateValidations() + var temp any = subscription + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.UpdateValidations()...) + } + return genruntime.ValidateUpdate(old, validations) +} + +// createValidations validates the creation of the resource +func (subscription *Subscription) createValidations() []func() (admission.Warnings, error) { + return []func() (admission.Warnings, error){subscription.validateResourceReferences, subscription.validateOwnerReference} +} + +// deleteValidations validates the deletion of the resource +func (subscription *Subscription) deleteValidations() []func() (admission.Warnings, error) { + return nil +} + +// updateValidations validates the update of the resource +func (subscription *Subscription) updateValidations() []func(old runtime.Object) (admission.Warnings, error) { + return []func(old runtime.Object) (admission.Warnings, error){ + func(old runtime.Object) (admission.Warnings, error) { + return subscription.validateResourceReferences() + }, + subscription.validateWriteOnceProperties, + func(old runtime.Object) (admission.Warnings, error) { + return subscription.validateOwnerReference() + }, + } +} + +// validateOwnerReference validates the owner field +func (subscription *Subscription) validateOwnerReference() (admission.Warnings, error) { + return genruntime.ValidateOwner(subscription) +} + +// validateResourceReferences validates all resource references +func (subscription *Subscription) validateResourceReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindResourceReferences(&subscription.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateResourceReferences(refs) +} + +// validateWriteOnceProperties validates all WriteOnce properties +func (subscription *Subscription) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) { + oldObj, ok := old.(*Subscription) + if !ok { + return nil, nil + } + + return genruntime.ValidateWriteOnceProperties(oldObj, subscription) +} + +// AssignProperties_From_Subscription populates our Subscription from the provided source Subscription +func (subscription *Subscription) AssignProperties_From_Subscription(source *v20220801s.Subscription) error { + + // ObjectMeta + subscription.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec Service_Subscription_Spec + err := spec.AssignProperties_From_Service_Subscription_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Service_Subscription_Spec() to populate field Spec") + } + subscription.Spec = spec + + // Status + var status Service_Subscription_STATUS + err = status.AssignProperties_From_Service_Subscription_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Service_Subscription_STATUS() to populate field Status") + } + subscription.Status = status + + // No error + return nil +} + +// AssignProperties_To_Subscription populates the provided destination Subscription from our Subscription +func (subscription *Subscription) AssignProperties_To_Subscription(destination *v20220801s.Subscription) error { + + // ObjectMeta + destination.ObjectMeta = *subscription.ObjectMeta.DeepCopy() + + // Spec + var spec v20220801s.Service_Subscription_Spec + err := subscription.Spec.AssignProperties_To_Service_Subscription_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Service_Subscription_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20220801s.Service_Subscription_STATUS + err = subscription.Status.AssignProperties_To_Service_Subscription_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Service_Subscription_STATUS() to populate field Status") + } + destination.Status = status + + // No error + return nil +} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (subscription *Subscription) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: subscription.Spec.OriginalVersion(), + Kind: "Subscription", + } +} + +// +kubebuilder:object:root=true +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimsubscriptions.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid} +type SubscriptionList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []Subscription `json:"items"` +} + +type Service_Subscription_Spec struct { + // AllowTracing: Determines whether tracing can be enabled + AllowTracing *bool `json:"allowTracing,omitempty"` + + // +kubebuilder:validation:MaxLength=256 + // +kubebuilder:validation:Pattern="^[^*#&+:<>?]+$" + // AzureName: The name of the resource in Azure. This is often the same as the name of the resource in Kubernetes but it + // doesn't have to be. + AzureName string `json:"azureName,omitempty"` + + // +kubebuilder:validation:Required + // +kubebuilder:validation:MaxLength=100 + // +kubebuilder:validation:MinLength=1 + // DisplayName: Subscription name. + DisplayName *string `json:"displayName,omitempty"` + + // +kubebuilder:validation:Required + // Owner: The owner of the resource. The owner controls where the resource goes when it is deployed. The owner also + // controls the resources lifecycle. When the owner is deleted the resource will also be deleted. Owner is expected to be a + // reference to a apimanagement.azure.com/Service resource + Owner *genruntime.KnownResourceReference `group:"apimanagement.azure.com" json:"owner,omitempty" kind:"Service"` + + // OwnerReference: User (user id path) for whom subscription is being created in form /users/{userId} + OwnerReference *genruntime.ResourceReference `armReference:"OwnerId" json:"ownerReference,omitempty"` + + // PrimaryKey: Primary subscription key. If not specified during request key will be generated automatically. + PrimaryKey *genruntime.SecretReference `json:"primaryKey,omitempty"` + + // +kubebuilder:validation:Required + // Scope: Scope like /products/{productId} or /apis or /apis/{apiId}. + Scope *string `json:"scope,omitempty"` + + // SecondaryKey: Secondary subscription key. If not specified during request key will be generated automatically. + SecondaryKey *genruntime.SecretReference `json:"secondaryKey,omitempty"` + + // State: Initial subscription state. If no value is specified, subscription is created with Submitted state. Possible + // states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber + // cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has + // not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * + // cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription + // reached its expiration date and was deactivated. + State *SubscriptionCreateParameterProperties_State `json:"state,omitempty"` +} + +var _ genruntime.ARMTransformer = &Service_Subscription_Spec{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (subscription *Service_Subscription_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if subscription == nil { + return nil, nil + } + result := &Service_Subscription_Spec_ARM{} + + // Set property "Name": + result.Name = resolved.Name + + // Set property "Properties": + if subscription.AllowTracing != nil || + subscription.DisplayName != nil || + subscription.OwnerReference != nil || + subscription.PrimaryKey != nil || + subscription.Scope != nil || + subscription.SecondaryKey != nil || + subscription.State != nil { + result.Properties = &SubscriptionCreateParameterProperties_ARM{} + } + if subscription.AllowTracing != nil { + allowTracing := *subscription.AllowTracing + result.Properties.AllowTracing = &allowTracing + } + if subscription.DisplayName != nil { + displayName := *subscription.DisplayName + result.Properties.DisplayName = &displayName + } + if subscription.OwnerReference != nil { + ownerIdARMID, err := resolved.ResolvedReferences.Lookup(*subscription.OwnerReference) + if err != nil { + return nil, err + } + ownerId := ownerIdARMID + result.Properties.OwnerId = &ownerId + } + if subscription.PrimaryKey != nil { + primaryKeySecret, err := resolved.ResolvedSecrets.Lookup(*subscription.PrimaryKey) + if err != nil { + return nil, errors.Wrap(err, "looking up secret for property PrimaryKey") + } + primaryKey := primaryKeySecret + result.Properties.PrimaryKey = &primaryKey + } + if subscription.Scope != nil { + scope := *subscription.Scope + result.Properties.Scope = &scope + } + if subscription.SecondaryKey != nil { + secondaryKeySecret, err := resolved.ResolvedSecrets.Lookup(*subscription.SecondaryKey) + if err != nil { + return nil, errors.Wrap(err, "looking up secret for property SecondaryKey") + } + secondaryKey := secondaryKeySecret + result.Properties.SecondaryKey = &secondaryKey + } + if subscription.State != nil { + state := *subscription.State + result.Properties.State = &state + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (subscription *Service_Subscription_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Service_Subscription_Spec_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (subscription *Service_Subscription_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Service_Subscription_Spec_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Service_Subscription_Spec_ARM, got %T", armInput) + } + + // Set property "AllowTracing": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AllowTracing != nil { + allowTracing := *typedInput.Properties.AllowTracing + subscription.AllowTracing = &allowTracing + } + } + + // Set property "AzureName": + subscription.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name)) + + // Set property "DisplayName": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DisplayName != nil { + displayName := *typedInput.Properties.DisplayName + subscription.DisplayName = &displayName + } + } + + // Set property "Owner": + subscription.Owner = &genruntime.KnownResourceReference{ + Name: owner.Name, + ARMID: owner.ARMID, + } + + // no assignment for property "OwnerReference" + + // no assignment for property "PrimaryKey" + + // Set property "Scope": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Scope != nil { + scope := *typedInput.Properties.Scope + subscription.Scope = &scope + } + } + + // no assignment for property "SecondaryKey" + + // Set property "State": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.State != nil { + state := *typedInput.Properties.State + subscription.State = &state + } + } + + // No error + return nil +} + +var _ genruntime.ConvertibleSpec = &Service_Subscription_Spec{} + +// ConvertSpecFrom populates our Service_Subscription_Spec from the provided source +func (subscription *Service_Subscription_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20220801s.Service_Subscription_Spec) + if ok { + // Populate our instance from source + return subscription.AssignProperties_From_Service_Subscription_Spec(src) + } + + // Convert to an intermediate form + src = &v20220801s.Service_Subscription_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = subscription.AssignProperties_From_Service_Subscription_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our Service_Subscription_Spec +func (subscription *Service_Subscription_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20220801s.Service_Subscription_Spec) + if ok { + // Populate destination from our instance + return subscription.AssignProperties_To_Service_Subscription_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20220801s.Service_Subscription_Spec{} + err := subscription.AssignProperties_To_Service_Subscription_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_Service_Subscription_Spec populates our Service_Subscription_Spec from the provided source Service_Subscription_Spec +func (subscription *Service_Subscription_Spec) AssignProperties_From_Service_Subscription_Spec(source *v20220801s.Service_Subscription_Spec) error { + + // AllowTracing + if source.AllowTracing != nil { + allowTracing := *source.AllowTracing + subscription.AllowTracing = &allowTracing + } else { + subscription.AllowTracing = nil + } + + // AzureName + subscription.AzureName = source.AzureName + + // DisplayName + if source.DisplayName != nil { + displayName := *source.DisplayName + subscription.DisplayName = &displayName + } else { + subscription.DisplayName = nil + } + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + subscription.Owner = &owner + } else { + subscription.Owner = nil + } + + // OwnerReference + if source.OwnerReference != nil { + ownerReference := source.OwnerReference.Copy() + subscription.OwnerReference = &ownerReference + } else { + subscription.OwnerReference = nil + } + + // PrimaryKey + if source.PrimaryKey != nil { + primaryKey := source.PrimaryKey.Copy() + subscription.PrimaryKey = &primaryKey + } else { + subscription.PrimaryKey = nil + } + + // Scope + subscription.Scope = genruntime.ClonePointerToString(source.Scope) + + // SecondaryKey + if source.SecondaryKey != nil { + secondaryKey := source.SecondaryKey.Copy() + subscription.SecondaryKey = &secondaryKey + } else { + subscription.SecondaryKey = nil + } + + // State + if source.State != nil { + state := SubscriptionCreateParameterProperties_State(*source.State) + subscription.State = &state + } else { + subscription.State = nil + } + + // No error + return nil +} + +// AssignProperties_To_Service_Subscription_Spec populates the provided destination Service_Subscription_Spec from our Service_Subscription_Spec +func (subscription *Service_Subscription_Spec) AssignProperties_To_Service_Subscription_Spec(destination *v20220801s.Service_Subscription_Spec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AllowTracing + if subscription.AllowTracing != nil { + allowTracing := *subscription.AllowTracing + destination.AllowTracing = &allowTracing + } else { + destination.AllowTracing = nil + } + + // AzureName + destination.AzureName = subscription.AzureName + + // DisplayName + if subscription.DisplayName != nil { + displayName := *subscription.DisplayName + destination.DisplayName = &displayName + } else { + destination.DisplayName = nil + } + + // OriginalVersion + destination.OriginalVersion = subscription.OriginalVersion() + + // Owner + if subscription.Owner != nil { + owner := subscription.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // OwnerReference + if subscription.OwnerReference != nil { + ownerReference := subscription.OwnerReference.Copy() + destination.OwnerReference = &ownerReference + } else { + destination.OwnerReference = nil + } + + // PrimaryKey + if subscription.PrimaryKey != nil { + primaryKey := subscription.PrimaryKey.Copy() + destination.PrimaryKey = &primaryKey + } else { + destination.PrimaryKey = nil + } + + // Scope + destination.Scope = genruntime.ClonePointerToString(subscription.Scope) + + // SecondaryKey + if subscription.SecondaryKey != nil { + secondaryKey := subscription.SecondaryKey.Copy() + destination.SecondaryKey = &secondaryKey + } else { + destination.SecondaryKey = nil + } + + // State + if subscription.State != nil { + state := string(*subscription.State) + destination.State = &state + } else { + destination.State = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_Service_Subscription_STATUS populates our Service_Subscription_Spec from the provided source Service_Subscription_STATUS +func (subscription *Service_Subscription_Spec) Initialize_From_Service_Subscription_STATUS(source *Service_Subscription_STATUS) error { + + // AllowTracing + if source.AllowTracing != nil { + allowTracing := *source.AllowTracing + subscription.AllowTracing = &allowTracing + } else { + subscription.AllowTracing = nil + } + + // DisplayName + if source.DisplayName != nil { + displayName := *source.DisplayName + subscription.DisplayName = &displayName + } else { + subscription.DisplayName = nil + } + + // OwnerReference + if source.OwnerId != nil { + ownerReference := genruntime.CreateResourceReferenceFromARMID(*source.OwnerId) + subscription.OwnerReference = &ownerReference + } else { + subscription.OwnerReference = nil + } + + // Scope + subscription.Scope = genruntime.ClonePointerToString(source.Scope) + + // State + if source.State != nil { + state := SubscriptionCreateParameterProperties_State(*source.State) + subscription.State = &state + } else { + subscription.State = nil + } + + // No error + return nil +} + +// OriginalVersion returns the original API version used to create the resource. +func (subscription *Service_Subscription_Spec) OriginalVersion() string { + return GroupVersion.Version +} + +// SetAzureName sets the Azure name of the resource +func (subscription *Service_Subscription_Spec) SetAzureName(azureName string) { + subscription.AzureName = azureName +} + +type Service_Subscription_STATUS struct { + // AllowTracing: Determines whether tracing is enabled + AllowTracing *bool `json:"allowTracing,omitempty"` + + // Conditions: The observed state of the resource + Conditions []conditions.Condition `json:"conditions,omitempty"` + + // CreatedDate: Subscription creation date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + // by the ISO 8601 standard. + CreatedDate *string `json:"createdDate,omitempty"` + + // DisplayName: The name of the subscription, or null if the subscription has no name. + DisplayName *string `json:"displayName,omitempty"` + + // EndDate: Date when subscription was cancelled or expired. The setting is for audit purposes only and the subscription is + // not automatically cancelled. The subscription lifecycle can be managed by using the `state` property. The date conforms + // to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + EndDate *string `json:"endDate,omitempty"` + + // ExpirationDate: Subscription expiration date. The setting is for audit purposes only and the subscription is not + // automatically expired. The subscription lifecycle can be managed by using the `state` property. The date conforms to the + // following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + ExpirationDate *string `json:"expirationDate,omitempty"` + + // Id: Fully qualified resource ID for the resource. Ex - + // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + Id *string `json:"id,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // NotificationDate: Upcoming subscription expiration notification date. The date conforms to the following format: + // `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + NotificationDate *string `json:"notificationDate,omitempty"` + + // OwnerId: The user resource identifier of the subscription owner. The value is a valid relative URL in the format of + // /users/{userId} where {userId} is a user identifier. + OwnerId *string `json:"ownerId,omitempty"` + + // Scope: Scope like /products/{productId} or /apis or /apis/{apiId}. + Scope *string `json:"scope,omitempty"` + + // StartDate: Subscription activation date. The setting is for audit purposes only and the subscription is not + // automatically activated. The subscription lifecycle can be managed by using the `state` property. The date conforms to + // the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + StartDate *string `json:"startDate,omitempty"` + + // State: Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription + // is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been + // made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been + // denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * + // expired – the subscription reached its expiration date and was deactivated. + State *SubscriptionContractProperties_State_STATUS `json:"state,omitempty"` + + // StateComment: Optional subscription comment added by an administrator when the state is changed to the 'rejected'. + StateComment *string `json:"stateComment,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &Service_Subscription_STATUS{} + +// ConvertStatusFrom populates our Service_Subscription_STATUS from the provided source +func (subscription *Service_Subscription_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20220801s.Service_Subscription_STATUS) + if ok { + // Populate our instance from source + return subscription.AssignProperties_From_Service_Subscription_STATUS(src) + } + + // Convert to an intermediate form + src = &v20220801s.Service_Subscription_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = subscription.AssignProperties_From_Service_Subscription_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our Service_Subscription_STATUS +func (subscription *Service_Subscription_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20220801s.Service_Subscription_STATUS) + if ok { + // Populate destination from our instance + return subscription.AssignProperties_To_Service_Subscription_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20220801s.Service_Subscription_STATUS{} + err := subscription.AssignProperties_To_Service_Subscription_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +var _ genruntime.FromARMConverter = &Service_Subscription_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (subscription *Service_Subscription_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Service_Subscription_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (subscription *Service_Subscription_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Service_Subscription_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Service_Subscription_STATUS_ARM, got %T", armInput) + } + + // Set property "AllowTracing": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AllowTracing != nil { + allowTracing := *typedInput.Properties.AllowTracing + subscription.AllowTracing = &allowTracing + } + } + + // no assignment for property "Conditions" + + // Set property "CreatedDate": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.CreatedDate != nil { + createdDate := *typedInput.Properties.CreatedDate + subscription.CreatedDate = &createdDate + } + } + + // Set property "DisplayName": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DisplayName != nil { + displayName := *typedInput.Properties.DisplayName + subscription.DisplayName = &displayName + } + } + + // Set property "EndDate": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.EndDate != nil { + endDate := *typedInput.Properties.EndDate + subscription.EndDate = &endDate + } + } + + // Set property "ExpirationDate": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ExpirationDate != nil { + expirationDate := *typedInput.Properties.ExpirationDate + subscription.ExpirationDate = &expirationDate + } + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + subscription.Id = &id + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + subscription.Name = &name + } + + // Set property "NotificationDate": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.NotificationDate != nil { + notificationDate := *typedInput.Properties.NotificationDate + subscription.NotificationDate = ¬ificationDate + } + } + + // Set property "OwnerId": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.OwnerId != nil { + ownerId := *typedInput.Properties.OwnerId + subscription.OwnerId = &ownerId + } + } + + // Set property "Scope": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Scope != nil { + scope := *typedInput.Properties.Scope + subscription.Scope = &scope + } + } + + // Set property "StartDate": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.StartDate != nil { + startDate := *typedInput.Properties.StartDate + subscription.StartDate = &startDate + } + } + + // Set property "State": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.State != nil { + state := *typedInput.Properties.State + subscription.State = &state + } + } + + // Set property "StateComment": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.StateComment != nil { + stateComment := *typedInput.Properties.StateComment + subscription.StateComment = &stateComment + } + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + subscription.Type = &typeVar + } + + // No error + return nil +} + +// AssignProperties_From_Service_Subscription_STATUS populates our Service_Subscription_STATUS from the provided source Service_Subscription_STATUS +func (subscription *Service_Subscription_STATUS) AssignProperties_From_Service_Subscription_STATUS(source *v20220801s.Service_Subscription_STATUS) error { + + // AllowTracing + if source.AllowTracing != nil { + allowTracing := *source.AllowTracing + subscription.AllowTracing = &allowTracing + } else { + subscription.AllowTracing = nil + } + + // Conditions + subscription.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // CreatedDate + subscription.CreatedDate = genruntime.ClonePointerToString(source.CreatedDate) + + // DisplayName + subscription.DisplayName = genruntime.ClonePointerToString(source.DisplayName) + + // EndDate + subscription.EndDate = genruntime.ClonePointerToString(source.EndDate) + + // ExpirationDate + subscription.ExpirationDate = genruntime.ClonePointerToString(source.ExpirationDate) + + // Id + subscription.Id = genruntime.ClonePointerToString(source.Id) + + // Name + subscription.Name = genruntime.ClonePointerToString(source.Name) + + // NotificationDate + subscription.NotificationDate = genruntime.ClonePointerToString(source.NotificationDate) + + // OwnerId + subscription.OwnerId = genruntime.ClonePointerToString(source.OwnerId) + + // Scope + subscription.Scope = genruntime.ClonePointerToString(source.Scope) + + // StartDate + subscription.StartDate = genruntime.ClonePointerToString(source.StartDate) + + // State + if source.State != nil { + state := SubscriptionContractProperties_State_STATUS(*source.State) + subscription.State = &state + } else { + subscription.State = nil + } + + // StateComment + subscription.StateComment = genruntime.ClonePointerToString(source.StateComment) + + // Type + subscription.Type = genruntime.ClonePointerToString(source.Type) + + // No error + return nil +} + +// AssignProperties_To_Service_Subscription_STATUS populates the provided destination Service_Subscription_STATUS from our Service_Subscription_STATUS +func (subscription *Service_Subscription_STATUS) AssignProperties_To_Service_Subscription_STATUS(destination *v20220801s.Service_Subscription_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AllowTracing + if subscription.AllowTracing != nil { + allowTracing := *subscription.AllowTracing + destination.AllowTracing = &allowTracing + } else { + destination.AllowTracing = nil + } + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(subscription.Conditions) + + // CreatedDate + destination.CreatedDate = genruntime.ClonePointerToString(subscription.CreatedDate) + + // DisplayName + destination.DisplayName = genruntime.ClonePointerToString(subscription.DisplayName) + + // EndDate + destination.EndDate = genruntime.ClonePointerToString(subscription.EndDate) + + // ExpirationDate + destination.ExpirationDate = genruntime.ClonePointerToString(subscription.ExpirationDate) + + // Id + destination.Id = genruntime.ClonePointerToString(subscription.Id) + + // Name + destination.Name = genruntime.ClonePointerToString(subscription.Name) + + // NotificationDate + destination.NotificationDate = genruntime.ClonePointerToString(subscription.NotificationDate) + + // OwnerId + destination.OwnerId = genruntime.ClonePointerToString(subscription.OwnerId) + + // Scope + destination.Scope = genruntime.ClonePointerToString(subscription.Scope) + + // StartDate + destination.StartDate = genruntime.ClonePointerToString(subscription.StartDate) + + // State + if subscription.State != nil { + state := string(*subscription.State) + destination.State = &state + } else { + destination.State = nil + } + + // StateComment + destination.StateComment = genruntime.ClonePointerToString(subscription.StateComment) + + // Type + destination.Type = genruntime.ClonePointerToString(subscription.Type) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +func init() { + SchemeBuilder.Register(&Subscription{}, &SubscriptionList{}) +} diff --git a/v2/api/apimanagement/v1api20220801/subscription_types_gen_test.go b/v2/api/apimanagement/v1api20220801/subscription_types_gen_test.go new file mode 100644 index 00000000000..8da04818780 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801/subscription_types_gen_test.go @@ -0,0 +1,400 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801 + +import ( + "encoding/json" + v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Subscription_WhenConvertedToHub_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + parameters.MinSuccessfulTests = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Subscription to hub returns original", + prop.ForAll(RunResourceConversionTestForSubscription, SubscriptionGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForSubscription tests if a specific instance of Subscription round trips to the hub storage version and back losslessly +func RunResourceConversionTestForSubscription(subject Subscription) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20220801s.Subscription + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual Subscription + err = actual.ConvertFrom(&hub) + if err != nil { + return err.Error() + } + + // Compare actual with what we started with + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Subscription_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Subscription to Subscription via AssignProperties_To_Subscription & AssignProperties_From_Subscription returns original", + prop.ForAll(RunPropertyAssignmentTestForSubscription, SubscriptionGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForSubscription tests if a specific instance of Subscription can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForSubscription(subject Subscription) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.Subscription + err := copied.AssignProperties_To_Subscription(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Subscription + err = actual.AssignProperties_From_Subscription(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Subscription_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 20 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Subscription via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSubscription, SubscriptionGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSubscription runs a test to see if a specific instance of Subscription round trips to JSON and back losslessly +func RunJSONSerializationTestForSubscription(subject Subscription) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Subscription + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Subscription instances for property testing - lazily instantiated by SubscriptionGenerator() +var subscriptionGenerator gopter.Gen + +// SubscriptionGenerator returns a generator of Subscription instances for property testing. +func SubscriptionGenerator() gopter.Gen { + if subscriptionGenerator != nil { + return subscriptionGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForSubscription(generators) + subscriptionGenerator = gen.Struct(reflect.TypeOf(Subscription{}), generators) + + return subscriptionGenerator +} + +// AddRelatedPropertyGeneratorsForSubscription is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForSubscription(gens map[string]gopter.Gen) { + gens["Spec"] = Service_Subscription_SpecGenerator() + gens["Status"] = Service_Subscription_STATUSGenerator() +} + +func Test_Service_Subscription_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Service_Subscription_Spec to Service_Subscription_Spec via AssignProperties_To_Service_Subscription_Spec & AssignProperties_From_Service_Subscription_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForService_Subscription_Spec, Service_Subscription_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForService_Subscription_Spec tests if a specific instance of Service_Subscription_Spec can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForService_Subscription_Spec(subject Service_Subscription_Spec) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.Service_Subscription_Spec + err := copied.AssignProperties_To_Service_Subscription_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Service_Subscription_Spec + err = actual.AssignProperties_From_Service_Subscription_Spec(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Service_Subscription_Spec_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Subscription_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Subscription_Spec, Service_Subscription_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Subscription_Spec runs a test to see if a specific instance of Service_Subscription_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Subscription_Spec(subject Service_Subscription_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Subscription_Spec + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Subscription_Spec instances for property testing - lazily instantiated by +// Service_Subscription_SpecGenerator() +var service_Subscription_SpecGenerator gopter.Gen + +// Service_Subscription_SpecGenerator returns a generator of Service_Subscription_Spec instances for property testing. +func Service_Subscription_SpecGenerator() gopter.Gen { + if service_Subscription_SpecGenerator != nil { + return service_Subscription_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Subscription_Spec(generators) + service_Subscription_SpecGenerator = gen.Struct(reflect.TypeOf(Service_Subscription_Spec{}), generators) + + return service_Subscription_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForService_Subscription_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Subscription_Spec(gens map[string]gopter.Gen) { + gens["AllowTracing"] = gen.PtrOf(gen.Bool()) + gens["AzureName"] = gen.AlphaString() + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["Scope"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.OneConstOf( + SubscriptionCreateParameterProperties_State_Active, + SubscriptionCreateParameterProperties_State_Cancelled, + SubscriptionCreateParameterProperties_State_Expired, + SubscriptionCreateParameterProperties_State_Rejected, + SubscriptionCreateParameterProperties_State_Submitted, + SubscriptionCreateParameterProperties_State_Suspended)) +} + +func Test_Service_Subscription_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Service_Subscription_STATUS to Service_Subscription_STATUS via AssignProperties_To_Service_Subscription_STATUS & AssignProperties_From_Service_Subscription_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForService_Subscription_STATUS, Service_Subscription_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForService_Subscription_STATUS tests if a specific instance of Service_Subscription_STATUS can be assigned to v1api20220801storage and back losslessly +func RunPropertyAssignmentTestForService_Subscription_STATUS(subject Service_Subscription_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20220801s.Service_Subscription_STATUS + err := copied.AssignProperties_To_Service_Subscription_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Service_Subscription_STATUS + err = actual.AssignProperties_From_Service_Subscription_STATUS(&other) + if err != nil { + return err.Error() + } + + // Check for a match + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +func Test_Service_Subscription_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Subscription_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Subscription_STATUS, Service_Subscription_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Subscription_STATUS runs a test to see if a specific instance of Service_Subscription_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Subscription_STATUS(subject Service_Subscription_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Subscription_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Subscription_STATUS instances for property testing - lazily instantiated by +// Service_Subscription_STATUSGenerator() +var service_Subscription_STATUSGenerator gopter.Gen + +// Service_Subscription_STATUSGenerator returns a generator of Service_Subscription_STATUS instances for property testing. +func Service_Subscription_STATUSGenerator() gopter.Gen { + if service_Subscription_STATUSGenerator != nil { + return service_Subscription_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Subscription_STATUS(generators) + service_Subscription_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_Subscription_STATUS{}), generators) + + return service_Subscription_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForService_Subscription_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Subscription_STATUS(gens map[string]gopter.Gen) { + gens["AllowTracing"] = gen.PtrOf(gen.Bool()) + gens["CreatedDate"] = gen.PtrOf(gen.AlphaString()) + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["EndDate"] = gen.PtrOf(gen.AlphaString()) + gens["ExpirationDate"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["NotificationDate"] = gen.PtrOf(gen.AlphaString()) + gens["OwnerId"] = gen.PtrOf(gen.AlphaString()) + gens["Scope"] = gen.PtrOf(gen.AlphaString()) + gens["StartDate"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.OneConstOf( + SubscriptionContractProperties_State_STATUS_Active, + SubscriptionContractProperties_State_STATUS_Cancelled, + SubscriptionContractProperties_State_STATUS_Expired, + SubscriptionContractProperties_State_STATUS_Rejected, + SubscriptionContractProperties_State_STATUS_Submitted, + SubscriptionContractProperties_State_STATUS_Suspended)) + gens["StateComment"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801/zz_generated.deepcopy.go b/v2/api/apimanagement/v1api20220801/zz_generated.deepcopy.go index 776fa720682..36a959fa053 100644 --- a/v2/api/apimanagement/v1api20220801/zz_generated.deepcopy.go +++ b/v2/api/apimanagement/v1api20220801/zz_generated.deepcopy.go @@ -890,860 +890,2543 @@ func (in *ArmIdWrapper_STATUS_ARM) DeepCopy() *ArmIdWrapper_STATUS_ARM { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateConfiguration) DeepCopyInto(out *CertificateConfiguration) { +func (in *Backend) DeepCopyInto(out *Backend) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = new(CertificateInformation) - (*in).DeepCopyInto(*out) + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend. +func (in *Backend) DeepCopy() *Backend { + if in == nil { + return nil } - if in.CertificatePassword != nil { - in, out := &in.CertificatePassword, &out.CertificatePassword - *out = new(genruntime.SecretReference) - **out = **in + out := new(Backend) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Backend) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c } - if in.EncodedCertificate != nil { - in, out := &in.EncodedCertificate, &out.EncodedCertificate + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendAuthorizationHeaderCredentials) DeepCopyInto(out *BackendAuthorizationHeaderCredentials) { + *out = *in + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter *out = new(string) **out = **in } - if in.StoreName != nil { - in, out := &in.StoreName, &out.StoreName - *out = new(CertificateConfiguration_StoreName) + if in.Scheme != nil { + in, out := &in.Scheme, &out.Scheme + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateConfiguration. -func (in *CertificateConfiguration) DeepCopy() *CertificateConfiguration { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAuthorizationHeaderCredentials. +func (in *BackendAuthorizationHeaderCredentials) DeepCopy() *BackendAuthorizationHeaderCredentials { if in == nil { return nil } - out := new(CertificateConfiguration) + out := new(BackendAuthorizationHeaderCredentials) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateConfiguration_ARM) DeepCopyInto(out *CertificateConfiguration_ARM) { +func (in *BackendAuthorizationHeaderCredentials_ARM) DeepCopyInto(out *BackendAuthorizationHeaderCredentials_ARM) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = new(CertificateInformation_ARM) - (*in).DeepCopyInto(*out) - } - if in.CertificatePassword != nil { - in, out := &in.CertificatePassword, &out.CertificatePassword + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter *out = new(string) **out = **in } - if in.EncodedCertificate != nil { - in, out := &in.EncodedCertificate, &out.EncodedCertificate + if in.Scheme != nil { + in, out := &in.Scheme, &out.Scheme *out = new(string) **out = **in } - if in.StoreName != nil { - in, out := &in.StoreName, &out.StoreName - *out = new(CertificateConfiguration_StoreName) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateConfiguration_ARM. -func (in *CertificateConfiguration_ARM) DeepCopy() *CertificateConfiguration_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAuthorizationHeaderCredentials_ARM. +func (in *BackendAuthorizationHeaderCredentials_ARM) DeepCopy() *BackendAuthorizationHeaderCredentials_ARM { if in == nil { return nil } - out := new(CertificateConfiguration_ARM) + out := new(BackendAuthorizationHeaderCredentials_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateConfiguration_STATUS) DeepCopyInto(out *CertificateConfiguration_STATUS) { +func (in *BackendAuthorizationHeaderCredentials_STATUS) DeepCopyInto(out *BackendAuthorizationHeaderCredentials_STATUS) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = new(CertificateInformation_STATUS) - (*in).DeepCopyInto(*out) - } - if in.EncodedCertificate != nil { - in, out := &in.EncodedCertificate, &out.EncodedCertificate + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter *out = new(string) **out = **in } - if in.StoreName != nil { - in, out := &in.StoreName, &out.StoreName - *out = new(CertificateConfiguration_StoreName_STATUS) + if in.Scheme != nil { + in, out := &in.Scheme, &out.Scheme + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateConfiguration_STATUS. -func (in *CertificateConfiguration_STATUS) DeepCopy() *CertificateConfiguration_STATUS { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAuthorizationHeaderCredentials_STATUS. +func (in *BackendAuthorizationHeaderCredentials_STATUS) DeepCopy() *BackendAuthorizationHeaderCredentials_STATUS { if in == nil { return nil } - out := new(CertificateConfiguration_STATUS) + out := new(BackendAuthorizationHeaderCredentials_STATUS) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateConfiguration_STATUS_ARM) DeepCopyInto(out *CertificateConfiguration_STATUS_ARM) { +func (in *BackendAuthorizationHeaderCredentials_STATUS_ARM) DeepCopyInto(out *BackendAuthorizationHeaderCredentials_STATUS_ARM) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = new(CertificateInformation_STATUS_ARM) - (*in).DeepCopyInto(*out) - } - if in.EncodedCertificate != nil { - in, out := &in.EncodedCertificate, &out.EncodedCertificate + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter *out = new(string) **out = **in } - if in.StoreName != nil { - in, out := &in.StoreName, &out.StoreName - *out = new(CertificateConfiguration_StoreName_STATUS) + if in.Scheme != nil { + in, out := &in.Scheme, &out.Scheme + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateConfiguration_STATUS_ARM. -func (in *CertificateConfiguration_STATUS_ARM) DeepCopy() *CertificateConfiguration_STATUS_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAuthorizationHeaderCredentials_STATUS_ARM. +func (in *BackendAuthorizationHeaderCredentials_STATUS_ARM) DeepCopy() *BackendAuthorizationHeaderCredentials_STATUS_ARM { if in == nil { return nil } - out := new(CertificateConfiguration_STATUS_ARM) + out := new(BackendAuthorizationHeaderCredentials_STATUS_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateInformation) DeepCopyInto(out *CertificateInformation) { +func (in *BackendContractProperties_ARM) DeepCopyInto(out *BackendContractProperties_ARM) { *out = *in - if in.Expiry != nil { - in, out := &in.Expiry, &out.Expiry + if in.Credentials != nil { + in, out := &in.Credentials, &out.Credentials + *out = new(BackendCredentialsContract_ARM) + (*in).DeepCopyInto(*out) + } + if in.Description != nil { + in, out := &in.Description, &out.Description *out = new(string) **out = **in } - if in.ExpiryFromConfig != nil { - in, out := &in.ExpiryFromConfig, &out.ExpiryFromConfig - *out = new(genruntime.ConfigMapReference) - **out = **in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(BackendProperties_ARM) + (*in).DeepCopyInto(*out) } - if in.Subject != nil { - in, out := &in.Subject, &out.Subject - *out = new(string) + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(BackendContractProperties_Protocol) **out = **in } - if in.SubjectFromConfig != nil { - in, out := &in.SubjectFromConfig, &out.SubjectFromConfig - *out = new(genruntime.ConfigMapReference) + if in.Proxy != nil { + in, out := &in.Proxy, &out.Proxy + *out = new(BackendProxyContract_ARM) + (*in).DeepCopyInto(*out) + } + if in.ResourceId != nil { + in, out := &in.ResourceId, &out.ResourceId + *out = new(string) **out = **in } - if in.Thumbprint != nil { - in, out := &in.Thumbprint, &out.Thumbprint + if in.Title != nil { + in, out := &in.Title, &out.Title *out = new(string) **out = **in } - if in.ThumbprintFromConfig != nil { - in, out := &in.ThumbprintFromConfig, &out.ThumbprintFromConfig - *out = new(genruntime.ConfigMapReference) + if in.Tls != nil { + in, out := &in.Tls, &out.Tls + *out = new(BackendTlsProperties_ARM) + (*in).DeepCopyInto(*out) + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInformation. -func (in *CertificateInformation) DeepCopy() *CertificateInformation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendContractProperties_ARM. +func (in *BackendContractProperties_ARM) DeepCopy() *BackendContractProperties_ARM { if in == nil { return nil } - out := new(CertificateInformation) + out := new(BackendContractProperties_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateInformation_ARM) DeepCopyInto(out *CertificateInformation_ARM) { +func (in *BackendContractProperties_STATUS_ARM) DeepCopyInto(out *BackendContractProperties_STATUS_ARM) { *out = *in - if in.Expiry != nil { - in, out := &in.Expiry, &out.Expiry + if in.Credentials != nil { + in, out := &in.Credentials, &out.Credentials + *out = new(BackendCredentialsContract_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Description != nil { + in, out := &in.Description, &out.Description *out = new(string) **out = **in } - if in.Subject != nil { - in, out := &in.Subject, &out.Subject + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(BackendProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(BackendContractProperties_Protocol_STATUS) + **out = **in + } + if in.Proxy != nil { + in, out := &in.Proxy, &out.Proxy + *out = new(BackendProxyContract_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.ResourceId != nil { + in, out := &in.ResourceId, &out.ResourceId *out = new(string) **out = **in } - if in.Thumbprint != nil { - in, out := &in.Thumbprint, &out.Thumbprint + if in.Title != nil { + in, out := &in.Title, &out.Title + *out = new(string) + **out = **in + } + if in.Tls != nil { + in, out := &in.Tls, &out.Tls + *out = new(BackendTlsProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Url != nil { + in, out := &in.Url, &out.Url *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInformation_ARM. -func (in *CertificateInformation_ARM) DeepCopy() *CertificateInformation_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendContractProperties_STATUS_ARM. +func (in *BackendContractProperties_STATUS_ARM) DeepCopy() *BackendContractProperties_STATUS_ARM { if in == nil { return nil } - out := new(CertificateInformation_ARM) + out := new(BackendContractProperties_STATUS_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateInformation_STATUS) DeepCopyInto(out *CertificateInformation_STATUS) { +func (in *BackendCredentialsContract) DeepCopyInto(out *BackendCredentialsContract) { *out = *in - if in.Expiry != nil { - in, out := &in.Expiry, &out.Expiry - *out = new(string) - **out = **in + if in.Authorization != nil { + in, out := &in.Authorization, &out.Authorization + *out = new(BackendAuthorizationHeaderCredentials) + (*in).DeepCopyInto(*out) } - if in.Subject != nil { - in, out := &in.Subject, &out.Subject - *out = new(string) - **out = **in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]string, len(*in)) + copy(*out, *in) } - if in.Thumbprint != nil { - in, out := &in.Thumbprint, &out.Thumbprint - *out = new(string) - **out = **in + if in.CertificateIds != nil { + in, out := &in.CertificateIds, &out.CertificateIds + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInformation_STATUS. -func (in *CertificateInformation_STATUS) DeepCopy() *CertificateInformation_STATUS { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendCredentialsContract. +func (in *BackendCredentialsContract) DeepCopy() *BackendCredentialsContract { if in == nil { return nil } - out := new(CertificateInformation_STATUS) + out := new(BackendCredentialsContract) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateInformation_STATUS_ARM) DeepCopyInto(out *CertificateInformation_STATUS_ARM) { +func (in *BackendCredentialsContract_ARM) DeepCopyInto(out *BackendCredentialsContract_ARM) { *out = *in - if in.Expiry != nil { - in, out := &in.Expiry, &out.Expiry - *out = new(string) - **out = **in + if in.Authorization != nil { + in, out := &in.Authorization, &out.Authorization + *out = new(BackendAuthorizationHeaderCredentials_ARM) + (*in).DeepCopyInto(*out) } - if in.Subject != nil { - in, out := &in.Subject, &out.Subject - *out = new(string) - **out = **in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]string, len(*in)) + copy(*out, *in) } - if in.Thumbprint != nil { - in, out := &in.Thumbprint, &out.Thumbprint - *out = new(string) - **out = **in + if in.CertificateIds != nil { + in, out := &in.CertificateIds, &out.CertificateIds + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInformation_STATUS_ARM. -func (in *CertificateInformation_STATUS_ARM) DeepCopy() *CertificateInformation_STATUS_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendCredentialsContract_ARM. +func (in *BackendCredentialsContract_ARM) DeepCopy() *BackendCredentialsContract_ARM { if in == nil { return nil } - out := new(CertificateInformation_STATUS_ARM) + out := new(BackendCredentialsContract_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostnameConfiguration) DeepCopyInto(out *HostnameConfiguration) { +func (in *BackendCredentialsContract_STATUS) DeepCopyInto(out *BackendCredentialsContract_STATUS) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = new(CertificateInformation) + if in.Authorization != nil { + in, out := &in.Authorization, &out.Authorization + *out = new(BackendAuthorizationHeaderCredentials_STATUS) (*in).DeepCopyInto(*out) } - if in.CertificatePassword != nil { - in, out := &in.CertificatePassword, &out.CertificatePassword - *out = new(genruntime.SecretReference) - **out = **in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]string, len(*in)) + copy(*out, *in) } - if in.CertificateSource != nil { - in, out := &in.CertificateSource, &out.CertificateSource - *out = new(HostnameConfiguration_CertificateSource) - **out = **in + if in.CertificateIds != nil { + in, out := &in.CertificateIds, &out.CertificateIds + *out = make([]string, len(*in)) + copy(*out, *in) } - if in.CertificateStatus != nil { - in, out := &in.CertificateStatus, &out.CertificateStatus - *out = new(HostnameConfiguration_CertificateStatus) - **out = **in + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } } - if in.DefaultSslBinding != nil { - in, out := &in.DefaultSslBinding, &out.DefaultSslBinding - *out = new(bool) - **out = **in + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } } - if in.EncodedCertificate != nil { - in, out := &in.EncodedCertificate, &out.EncodedCertificate - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendCredentialsContract_STATUS. +func (in *BackendCredentialsContract_STATUS) DeepCopy() *BackendCredentialsContract_STATUS { + if in == nil { + return nil } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) - **out = **in + out := new(BackendCredentialsContract_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendCredentialsContract_STATUS_ARM) DeepCopyInto(out *BackendCredentialsContract_STATUS_ARM) { + *out = *in + if in.Authorization != nil { + in, out := &in.Authorization, &out.Authorization + *out = new(BackendAuthorizationHeaderCredentials_STATUS_ARM) + (*in).DeepCopyInto(*out) } - if in.IdentityClientId != nil { - in, out := &in.IdentityClientId, &out.IdentityClientId - *out = new(string) - **out = **in - } - if in.IdentityClientIdFromConfig != nil { - in, out := &in.IdentityClientIdFromConfig, &out.IdentityClientIdFromConfig - *out = new(genruntime.ConfigMapReference) - **out = **in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]string, len(*in)) + copy(*out, *in) } - if in.KeyVaultId != nil { - in, out := &in.KeyVaultId, &out.KeyVaultId - *out = new(string) - **out = **in + if in.CertificateIds != nil { + in, out := &in.CertificateIds, &out.CertificateIds + *out = make([]string, len(*in)) + copy(*out, *in) } - if in.NegotiateClientCertificate != nil { - in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate - *out = new(bool) - **out = **in + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(HostnameConfiguration_Type) - **out = **in + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration. -func (in *HostnameConfiguration) DeepCopy() *HostnameConfiguration { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendCredentialsContract_STATUS_ARM. +func (in *BackendCredentialsContract_STATUS_ARM) DeepCopy() *BackendCredentialsContract_STATUS_ARM { if in == nil { return nil } - out := new(HostnameConfiguration) + out := new(BackendCredentialsContract_STATUS_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostnameConfiguration_ARM) DeepCopyInto(out *HostnameConfiguration_ARM) { +func (in *BackendList) DeepCopyInto(out *BackendList) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = new(CertificateInformation_ARM) - (*in).DeepCopyInto(*out) - } - if in.CertificatePassword != nil { - in, out := &in.CertificatePassword, &out.CertificatePassword - *out = new(string) - **out = **in - } - if in.CertificateSource != nil { - in, out := &in.CertificateSource, &out.CertificateSource - *out = new(HostnameConfiguration_CertificateSource) - **out = **in - } - if in.CertificateStatus != nil { - in, out := &in.CertificateStatus, &out.CertificateStatus - *out = new(HostnameConfiguration_CertificateStatus) - **out = **in - } - if in.DefaultSslBinding != nil { - in, out := &in.DefaultSslBinding, &out.DefaultSslBinding - *out = new(bool) - **out = **in - } - if in.EncodedCertificate != nil { - in, out := &in.EncodedCertificate, &out.EncodedCertificate - *out = new(string) - **out = **in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Backend, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendList. +func (in *BackendList) DeepCopy() *BackendList { + if in == nil { + return nil } - if in.IdentityClientId != nil { - in, out := &in.IdentityClientId, &out.IdentityClientId - *out = new(string) - **out = **in + out := new(BackendList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *BackendList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c } - if in.KeyVaultId != nil { - in, out := &in.KeyVaultId, &out.KeyVaultId - *out = new(string) - **out = **in + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProperties) DeepCopyInto(out *BackendProperties) { + *out = *in + if in.ServiceFabricCluster != nil { + in, out := &in.ServiceFabricCluster, &out.ServiceFabricCluster + *out = new(BackendServiceFabricClusterProperties) + (*in).DeepCopyInto(*out) } - if in.NegotiateClientCertificate != nil { - in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate - *out = new(bool) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProperties. +func (in *BackendProperties) DeepCopy() *BackendProperties { + if in == nil { + return nil } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(HostnameConfiguration_Type) - **out = **in + out := new(BackendProperties) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProperties_ARM) DeepCopyInto(out *BackendProperties_ARM) { + *out = *in + if in.ServiceFabricCluster != nil { + in, out := &in.ServiceFabricCluster, &out.ServiceFabricCluster + *out = new(BackendServiceFabricClusterProperties_ARM) + (*in).DeepCopyInto(*out) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration_ARM. -func (in *HostnameConfiguration_ARM) DeepCopy() *HostnameConfiguration_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProperties_ARM. +func (in *BackendProperties_ARM) DeepCopy() *BackendProperties_ARM { if in == nil { return nil } - out := new(HostnameConfiguration_ARM) + out := new(BackendProperties_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostnameConfiguration_STATUS) DeepCopyInto(out *HostnameConfiguration_STATUS) { +func (in *BackendProperties_STATUS) DeepCopyInto(out *BackendProperties_STATUS) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = new(CertificateInformation_STATUS) + if in.ServiceFabricCluster != nil { + in, out := &in.ServiceFabricCluster, &out.ServiceFabricCluster + *out = new(BackendServiceFabricClusterProperties_STATUS) (*in).DeepCopyInto(*out) } - if in.CertificateSource != nil { - in, out := &in.CertificateSource, &out.CertificateSource - *out = new(HostnameConfiguration_CertificateSource_STATUS) - **out = **in - } - if in.CertificateStatus != nil { - in, out := &in.CertificateStatus, &out.CertificateStatus - *out = new(HostnameConfiguration_CertificateStatus_STATUS) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProperties_STATUS. +func (in *BackendProperties_STATUS) DeepCopy() *BackendProperties_STATUS { + if in == nil { + return nil } - if in.DefaultSslBinding != nil { - in, out := &in.DefaultSslBinding, &out.DefaultSslBinding - *out = new(bool) - **out = **in + out := new(BackendProperties_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProperties_STATUS_ARM) DeepCopyInto(out *BackendProperties_STATUS_ARM) { + *out = *in + if in.ServiceFabricCluster != nil { + in, out := &in.ServiceFabricCluster, &out.ServiceFabricCluster + *out = new(BackendServiceFabricClusterProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) } - if in.EncodedCertificate != nil { - in, out := &in.EncodedCertificate, &out.EncodedCertificate - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProperties_STATUS_ARM. +func (in *BackendProperties_STATUS_ARM) DeepCopy() *BackendProperties_STATUS_ARM { + if in == nil { + return nil } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) + out := new(BackendProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProxyContract) DeepCopyInto(out *BackendProxyContract) { + *out = *in + if in.Password != nil { + in, out := &in.Password, &out.Password + *out = new(genruntime.SecretReference) **out = **in } - if in.IdentityClientId != nil { - in, out := &in.IdentityClientId, &out.IdentityClientId + if in.Url != nil { + in, out := &in.Url, &out.Url *out = new(string) **out = **in } - if in.KeyVaultId != nil { - in, out := &in.KeyVaultId, &out.KeyVaultId + if in.Username != nil { + in, out := &in.Username, &out.Username *out = new(string) **out = **in } - if in.NegotiateClientCertificate != nil { - in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate - *out = new(bool) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(HostnameConfiguration_Type_STATUS) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration_STATUS. -func (in *HostnameConfiguration_STATUS) DeepCopy() *HostnameConfiguration_STATUS { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProxyContract. +func (in *BackendProxyContract) DeepCopy() *BackendProxyContract { if in == nil { return nil } - out := new(HostnameConfiguration_STATUS) + out := new(BackendProxyContract) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostnameConfiguration_STATUS_ARM) DeepCopyInto(out *HostnameConfiguration_STATUS_ARM) { +func (in *BackendProxyContract_ARM) DeepCopyInto(out *BackendProxyContract_ARM) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = new(CertificateInformation_STATUS_ARM) - (*in).DeepCopyInto(*out) - } - if in.CertificateSource != nil { - in, out := &in.CertificateSource, &out.CertificateSource - *out = new(HostnameConfiguration_CertificateSource_STATUS) - **out = **in - } - if in.CertificateStatus != nil { - in, out := &in.CertificateStatus, &out.CertificateStatus - *out = new(HostnameConfiguration_CertificateStatus_STATUS) - **out = **in - } - if in.DefaultSslBinding != nil { - in, out := &in.DefaultSslBinding, &out.DefaultSslBinding - *out = new(bool) - **out = **in - } - if in.EncodedCertificate != nil { - in, out := &in.EncodedCertificate, &out.EncodedCertificate - *out = new(string) - **out = **in - } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName + if in.Password != nil { + in, out := &in.Password, &out.Password *out = new(string) **out = **in } - if in.IdentityClientId != nil { - in, out := &in.IdentityClientId, &out.IdentityClientId + if in.Url != nil { + in, out := &in.Url, &out.Url *out = new(string) **out = **in } - if in.KeyVaultId != nil { - in, out := &in.KeyVaultId, &out.KeyVaultId + if in.Username != nil { + in, out := &in.Username, &out.Username *out = new(string) **out = **in } - if in.NegotiateClientCertificate != nil { - in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate - *out = new(bool) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(HostnameConfiguration_Type_STATUS) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration_STATUS_ARM. -func (in *HostnameConfiguration_STATUS_ARM) DeepCopy() *HostnameConfiguration_STATUS_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProxyContract_ARM. +func (in *BackendProxyContract_ARM) DeepCopy() *BackendProxyContract_ARM { if in == nil { return nil } - out := new(HostnameConfiguration_STATUS_ARM) + out := new(BackendProxyContract_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PrivateEndpointConnectionWrapperProperties_STATUS_ARM) DeepCopyInto(out *PrivateEndpointConnectionWrapperProperties_STATUS_ARM) { +func (in *BackendProxyContract_STATUS) DeepCopyInto(out *BackendProxyContract_STATUS) { *out = *in - if in.GroupIds != nil { - in, out := &in.GroupIds, &out.GroupIds - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.PrivateEndpoint != nil { - in, out := &in.PrivateEndpoint, &out.PrivateEndpoint - *out = new(ArmIdWrapper_STATUS_ARM) - (*in).DeepCopyInto(*out) - } - if in.PrivateLinkServiceConnectionState != nil { - in, out := &in.PrivateLinkServiceConnectionState, &out.PrivateLinkServiceConnectionState - *out = new(PrivateLinkServiceConnectionState_STATUS_ARM) - (*in).DeepCopyInto(*out) + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in } - if in.ProvisioningState != nil { - in, out := &in.ProvisioningState, &out.ProvisioningState + if in.Username != nil { + in, out := &in.Username, &out.Username *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointConnectionWrapperProperties_STATUS_ARM. -func (in *PrivateEndpointConnectionWrapperProperties_STATUS_ARM) DeepCopy() *PrivateEndpointConnectionWrapperProperties_STATUS_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProxyContract_STATUS. +func (in *BackendProxyContract_STATUS) DeepCopy() *BackendProxyContract_STATUS { if in == nil { return nil } - out := new(PrivateEndpointConnectionWrapperProperties_STATUS_ARM) + out := new(BackendProxyContract_STATUS) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PrivateLinkServiceConnectionState_STATUS) DeepCopyInto(out *PrivateLinkServiceConnectionState_STATUS) { +func (in *BackendProxyContract_STATUS_ARM) DeepCopyInto(out *BackendProxyContract_STATUS_ARM) { *out = *in - if in.ActionsRequired != nil { - in, out := &in.ActionsRequired, &out.ActionsRequired + if in.Url != nil { + in, out := &in.Url, &out.Url *out = new(string) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.Username != nil { + in, out := &in.Username, &out.Username *out = new(string) **out = **in } - if in.Status != nil { - in, out := &in.Status, &out.Status - *out = new(PrivateEndpointServiceConnectionStatus_STATUS) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceConnectionState_STATUS. -func (in *PrivateLinkServiceConnectionState_STATUS) DeepCopy() *PrivateLinkServiceConnectionState_STATUS { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProxyContract_STATUS_ARM. +func (in *BackendProxyContract_STATUS_ARM) DeepCopy() *BackendProxyContract_STATUS_ARM { if in == nil { return nil } - out := new(PrivateLinkServiceConnectionState_STATUS) + out := new(BackendProxyContract_STATUS_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PrivateLinkServiceConnectionState_STATUS_ARM) DeepCopyInto(out *PrivateLinkServiceConnectionState_STATUS_ARM) { +func (in *BackendServiceFabricClusterProperties) DeepCopyInto(out *BackendServiceFabricClusterProperties) { *out = *in - if in.ActionsRequired != nil { - in, out := &in.ActionsRequired, &out.ActionsRequired + if in.ClientCertificateId != nil { + in, out := &in.ClientCertificateId, &out.ClientCertificateId *out = new(string) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.ClientCertificatethumbprint != nil { + in, out := &in.ClientCertificatethumbprint, &out.ClientCertificatethumbprint *out = new(string) **out = **in } - if in.Status != nil { - in, out := &in.Status, &out.Status - *out = new(PrivateEndpointServiceConnectionStatus_STATUS) + if in.ManagementEndpoints != nil { + in, out := &in.ManagementEndpoints, &out.ManagementEndpoints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.MaxPartitionResolutionRetries != nil { + in, out := &in.MaxPartitionResolutionRetries, &out.MaxPartitionResolutionRetries + *out = new(int) **out = **in } + if in.ServerCertificateThumbprints != nil { + in, out := &in.ServerCertificateThumbprints, &out.ServerCertificateThumbprints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.ServerX509Names != nil { + in, out := &in.ServerX509Names, &out.ServerX509Names + *out = make([]X509CertificateName, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceConnectionState_STATUS_ARM. -func (in *PrivateLinkServiceConnectionState_STATUS_ARM) DeepCopy() *PrivateLinkServiceConnectionState_STATUS_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendServiceFabricClusterProperties. +func (in *BackendServiceFabricClusterProperties) DeepCopy() *BackendServiceFabricClusterProperties { if in == nil { return nil } - out := new(PrivateLinkServiceConnectionState_STATUS_ARM) + out := new(BackendServiceFabricClusterProperties) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RemotePrivateEndpointConnectionWrapper_STATUS) DeepCopyInto(out *RemotePrivateEndpointConnectionWrapper_STATUS) { +func (in *BackendServiceFabricClusterProperties_ARM) DeepCopyInto(out *BackendServiceFabricClusterProperties_ARM) { *out = *in - if in.GroupIds != nil { - in, out := &in.GroupIds, &out.GroupIds - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.Id != nil { - in, out := &in.Id, &out.Id + if in.ClientCertificateId != nil { + in, out := &in.ClientCertificateId, &out.ClientCertificateId *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.ClientCertificatethumbprint != nil { + in, out := &in.ClientCertificatethumbprint, &out.ClientCertificatethumbprint *out = new(string) **out = **in } - if in.PrivateEndpoint != nil { - in, out := &in.PrivateEndpoint, &out.PrivateEndpoint - *out = new(ArmIdWrapper_STATUS) - (*in).DeepCopyInto(*out) + if in.ManagementEndpoints != nil { + in, out := &in.ManagementEndpoints, &out.ManagementEndpoints + *out = make([]string, len(*in)) + copy(*out, *in) } - if in.PrivateLinkServiceConnectionState != nil { - in, out := &in.PrivateLinkServiceConnectionState, &out.PrivateLinkServiceConnectionState - *out = new(PrivateLinkServiceConnectionState_STATUS) - (*in).DeepCopyInto(*out) + if in.MaxPartitionResolutionRetries != nil { + in, out := &in.MaxPartitionResolutionRetries, &out.MaxPartitionResolutionRetries + *out = new(int) + **out = **in } - if in.ProvisioningState != nil { - in, out := &in.ProvisioningState, &out.ProvisioningState + if in.ServerCertificateThumbprints != nil { + in, out := &in.ServerCertificateThumbprints, &out.ServerCertificateThumbprints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.ServerX509Names != nil { + in, out := &in.ServerX509Names, &out.ServerX509Names + *out = make([]X509CertificateName_ARM, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendServiceFabricClusterProperties_ARM. +func (in *BackendServiceFabricClusterProperties_ARM) DeepCopy() *BackendServiceFabricClusterProperties_ARM { + if in == nil { + return nil + } + out := new(BackendServiceFabricClusterProperties_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendServiceFabricClusterProperties_STATUS) DeepCopyInto(out *BackendServiceFabricClusterProperties_STATUS) { + *out = *in + if in.ClientCertificateId != nil { + in, out := &in.ClientCertificateId, &out.ClientCertificateId *out = new(string) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.ClientCertificatethumbprint != nil { + in, out := &in.ClientCertificatethumbprint, &out.ClientCertificatethumbprint *out = new(string) **out = **in } + if in.ManagementEndpoints != nil { + in, out := &in.ManagementEndpoints, &out.ManagementEndpoints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.MaxPartitionResolutionRetries != nil { + in, out := &in.MaxPartitionResolutionRetries, &out.MaxPartitionResolutionRetries + *out = new(int) + **out = **in + } + if in.ServerCertificateThumbprints != nil { + in, out := &in.ServerCertificateThumbprints, &out.ServerCertificateThumbprints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.ServerX509Names != nil { + in, out := &in.ServerX509Names, &out.ServerX509Names + *out = make([]X509CertificateName_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemotePrivateEndpointConnectionWrapper_STATUS. -func (in *RemotePrivateEndpointConnectionWrapper_STATUS) DeepCopy() *RemotePrivateEndpointConnectionWrapper_STATUS { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendServiceFabricClusterProperties_STATUS. +func (in *BackendServiceFabricClusterProperties_STATUS) DeepCopy() *BackendServiceFabricClusterProperties_STATUS { if in == nil { return nil } - out := new(RemotePrivateEndpointConnectionWrapper_STATUS) + out := new(BackendServiceFabricClusterProperties_STATUS) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RemotePrivateEndpointConnectionWrapper_STATUS_ARM) DeepCopyInto(out *RemotePrivateEndpointConnectionWrapper_STATUS_ARM) { +func (in *BackendServiceFabricClusterProperties_STATUS_ARM) DeepCopyInto(out *BackendServiceFabricClusterProperties_STATUS_ARM) { *out = *in - if in.Id != nil { - in, out := &in.Id, &out.Id + if in.ClientCertificateId != nil { + in, out := &in.ClientCertificateId, &out.ClientCertificateId *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.ClientCertificatethumbprint != nil { + in, out := &in.ClientCertificatethumbprint, &out.ClientCertificatethumbprint *out = new(string) **out = **in } - if in.Properties != nil { - in, out := &in.Properties, &out.Properties - *out = new(PrivateEndpointConnectionWrapperProperties_STATUS_ARM) - (*in).DeepCopyInto(*out) + if in.ManagementEndpoints != nil { + in, out := &in.ManagementEndpoints, &out.ManagementEndpoints + *out = make([]string, len(*in)) + copy(*out, *in) } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.MaxPartitionResolutionRetries != nil { + in, out := &in.MaxPartitionResolutionRetries, &out.MaxPartitionResolutionRetries + *out = new(int) **out = **in } + if in.ServerCertificateThumbprints != nil { + in, out := &in.ServerCertificateThumbprints, &out.ServerCertificateThumbprints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.ServerX509Names != nil { + in, out := &in.ServerX509Names, &out.ServerX509Names + *out = make([]X509CertificateName_STATUS_ARM, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemotePrivateEndpointConnectionWrapper_STATUS_ARM. -func (in *RemotePrivateEndpointConnectionWrapper_STATUS_ARM) DeepCopy() *RemotePrivateEndpointConnectionWrapper_STATUS_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendServiceFabricClusterProperties_STATUS_ARM. +func (in *BackendServiceFabricClusterProperties_STATUS_ARM) DeepCopy() *BackendServiceFabricClusterProperties_STATUS_ARM { if in == nil { return nil } - out := new(RemotePrivateEndpointConnectionWrapper_STATUS_ARM) + out := new(BackendServiceFabricClusterProperties_STATUS_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Service) DeepCopyInto(out *Service) { +func (in *BackendTlsProperties) DeepCopyInto(out *BackendTlsProperties) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.ValidateCertificateChain != nil { + in, out := &in.ValidateCertificateChain, &out.ValidateCertificateChain + *out = new(bool) + **out = **in + } + if in.ValidateCertificateName != nil { + in, out := &in.ValidateCertificateName, &out.ValidateCertificateName + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service. -func (in *Service) DeepCopy() *Service { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTlsProperties. +func (in *BackendTlsProperties) DeepCopy() *BackendTlsProperties { if in == nil { return nil } - out := new(Service) + out := new(BackendTlsProperties) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *Service) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ServiceList) DeepCopyInto(out *ServiceList) { +func (in *BackendTlsProperties_ARM) DeepCopyInto(out *BackendTlsProperties_ARM) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Service, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ValidateCertificateChain != nil { + in, out := &in.ValidateCertificateChain, &out.ValidateCertificateChain + *out = new(bool) + **out = **in + } + if in.ValidateCertificateName != nil { + in, out := &in.ValidateCertificateName, &out.ValidateCertificateName + *out = new(bool) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceList. -func (in *ServiceList) DeepCopy() *ServiceList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTlsProperties_ARM. +func (in *BackendTlsProperties_ARM) DeepCopy() *BackendTlsProperties_ARM { if in == nil { return nil } - out := new(ServiceList) + out := new(BackendTlsProperties_ARM) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ServiceList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Service_STATUS) DeepCopyInto(out *Service_STATUS) { +func (in *BackendTlsProperties_STATUS) DeepCopyInto(out *BackendTlsProperties_STATUS) { *out = *in - if in.AdditionalLocations != nil { - in, out := &in.AdditionalLocations, &out.AdditionalLocations - *out = make([]AdditionalLocation_STATUS, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ApiVersionConstraint != nil { - in, out := &in.ApiVersionConstraint, &out.ApiVersionConstraint - *out = new(ApiVersionConstraint_STATUS) - (*in).DeepCopyInto(*out) - } - if in.Certificates != nil { - in, out := &in.Certificates, &out.Certificates - *out = make([]CertificateConfiguration_STATUS, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]conditions.Condition, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CreatedAtUtc != nil { - in, out := &in.CreatedAtUtc, &out.CreatedAtUtc - *out = new(string) + if in.ValidateCertificateChain != nil { + in, out := &in.ValidateCertificateChain, &out.ValidateCertificateChain + *out = new(bool) **out = **in } - if in.CustomProperties != nil { - in, out := &in.CustomProperties, &out.CustomProperties - *out = make(map[string]string, len(*in)) - for key, val := range *in { - (*out)[key] = val - } - } - if in.DeveloperPortalUrl != nil { - in, out := &in.DeveloperPortalUrl, &out.DeveloperPortalUrl - *out = new(string) + if in.ValidateCertificateName != nil { + in, out := &in.ValidateCertificateName, &out.ValidateCertificateName + *out = new(bool) **out = **in } - if in.DisableGateway != nil { - in, out := &in.DisableGateway, &out.DisableGateway +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTlsProperties_STATUS. +func (in *BackendTlsProperties_STATUS) DeepCopy() *BackendTlsProperties_STATUS { + if in == nil { + return nil + } + out := new(BackendTlsProperties_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendTlsProperties_STATUS_ARM) DeepCopyInto(out *BackendTlsProperties_STATUS_ARM) { + *out = *in + if in.ValidateCertificateChain != nil { + in, out := &in.ValidateCertificateChain, &out.ValidateCertificateChain *out = new(bool) **out = **in } - if in.EnableClientCertificate != nil { - in, out := &in.EnableClientCertificate, &out.EnableClientCertificate + if in.ValidateCertificateName != nil { + in, out := &in.ValidateCertificateName, &out.ValidateCertificateName *out = new(bool) **out = **in } - if in.Etag != nil { - in, out := &in.Etag, &out.Etag - *out = new(string) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTlsProperties_STATUS_ARM. +func (in *BackendTlsProperties_STATUS_ARM) DeepCopy() *BackendTlsProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(BackendTlsProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateConfiguration) DeepCopyInto(out *CertificateConfiguration) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = new(CertificateInformation) + (*in).DeepCopyInto(*out) + } + if in.CertificatePassword != nil { + in, out := &in.CertificatePassword, &out.CertificatePassword + *out = new(genruntime.SecretReference) **out = **in } - if in.GatewayRegionalUrl != nil { - in, out := &in.GatewayRegionalUrl, &out.GatewayRegionalUrl + if in.EncodedCertificate != nil { + in, out := &in.EncodedCertificate, &out.EncodedCertificate *out = new(string) **out = **in } - if in.GatewayUrl != nil { - in, out := &in.GatewayUrl, &out.GatewayUrl - *out = new(string) + if in.StoreName != nil { + in, out := &in.StoreName, &out.StoreName + *out = new(CertificateConfiguration_StoreName) **out = **in } - if in.HostnameConfigurations != nil { - in, out := &in.HostnameConfigurations, &out.HostnameConfigurations - *out = make([]HostnameConfiguration_STATUS, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateConfiguration. +func (in *CertificateConfiguration) DeepCopy() *CertificateConfiguration { + if in == nil { + return nil + } + out := new(CertificateConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateConfiguration_ARM) DeepCopyInto(out *CertificateConfiguration_ARM) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = new(CertificateInformation_ARM) + (*in).DeepCopyInto(*out) + } + if in.CertificatePassword != nil { + in, out := &in.CertificatePassword, &out.CertificatePassword + *out = new(string) + **out = **in + } + if in.EncodedCertificate != nil { + in, out := &in.EncodedCertificate, &out.EncodedCertificate + *out = new(string) + **out = **in + } + if in.StoreName != nil { + in, out := &in.StoreName, &out.StoreName + *out = new(CertificateConfiguration_StoreName) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateConfiguration_ARM. +func (in *CertificateConfiguration_ARM) DeepCopy() *CertificateConfiguration_ARM { + if in == nil { + return nil + } + out := new(CertificateConfiguration_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateConfiguration_STATUS) DeepCopyInto(out *CertificateConfiguration_STATUS) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = new(CertificateInformation_STATUS) + (*in).DeepCopyInto(*out) + } + if in.EncodedCertificate != nil { + in, out := &in.EncodedCertificate, &out.EncodedCertificate + *out = new(string) + **out = **in + } + if in.StoreName != nil { + in, out := &in.StoreName, &out.StoreName + *out = new(CertificateConfiguration_StoreName_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateConfiguration_STATUS. +func (in *CertificateConfiguration_STATUS) DeepCopy() *CertificateConfiguration_STATUS { + if in == nil { + return nil + } + out := new(CertificateConfiguration_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateConfiguration_STATUS_ARM) DeepCopyInto(out *CertificateConfiguration_STATUS_ARM) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = new(CertificateInformation_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.EncodedCertificate != nil { + in, out := &in.EncodedCertificate, &out.EncodedCertificate + *out = new(string) + **out = **in + } + if in.StoreName != nil { + in, out := &in.StoreName, &out.StoreName + *out = new(CertificateConfiguration_StoreName_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateConfiguration_STATUS_ARM. +func (in *CertificateConfiguration_STATUS_ARM) DeepCopy() *CertificateConfiguration_STATUS_ARM { + if in == nil { + return nil + } + out := new(CertificateConfiguration_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateInformation) DeepCopyInto(out *CertificateInformation) { + *out = *in + if in.Expiry != nil { + in, out := &in.Expiry, &out.Expiry + *out = new(string) + **out = **in + } + if in.ExpiryFromConfig != nil { + in, out := &in.ExpiryFromConfig, &out.ExpiryFromConfig + *out = new(genruntime.ConfigMapReference) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } + if in.SubjectFromConfig != nil { + in, out := &in.SubjectFromConfig, &out.SubjectFromConfig + *out = new(genruntime.ConfigMapReference) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } + if in.ThumbprintFromConfig != nil { + in, out := &in.ThumbprintFromConfig, &out.ThumbprintFromConfig + *out = new(genruntime.ConfigMapReference) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInformation. +func (in *CertificateInformation) DeepCopy() *CertificateInformation { + if in == nil { + return nil + } + out := new(CertificateInformation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateInformation_ARM) DeepCopyInto(out *CertificateInformation_ARM) { + *out = *in + if in.Expiry != nil { + in, out := &in.Expiry, &out.Expiry + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInformation_ARM. +func (in *CertificateInformation_ARM) DeepCopy() *CertificateInformation_ARM { + if in == nil { + return nil + } + out := new(CertificateInformation_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateInformation_STATUS) DeepCopyInto(out *CertificateInformation_STATUS) { + *out = *in + if in.Expiry != nil { + in, out := &in.Expiry, &out.Expiry + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInformation_STATUS. +func (in *CertificateInformation_STATUS) DeepCopy() *CertificateInformation_STATUS { + if in == nil { + return nil + } + out := new(CertificateInformation_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateInformation_STATUS_ARM) DeepCopyInto(out *CertificateInformation_STATUS_ARM) { + *out = *in + if in.Expiry != nil { + in, out := &in.Expiry, &out.Expiry + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInformation_STATUS_ARM. +func (in *CertificateInformation_STATUS_ARM) DeepCopy() *CertificateInformation_STATUS_ARM { + if in == nil { + return nil + } + out := new(CertificateInformation_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostnameConfiguration) DeepCopyInto(out *HostnameConfiguration) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = new(CertificateInformation) + (*in).DeepCopyInto(*out) + } + if in.CertificatePassword != nil { + in, out := &in.CertificatePassword, &out.CertificatePassword + *out = new(genruntime.SecretReference) + **out = **in + } + if in.CertificateSource != nil { + in, out := &in.CertificateSource, &out.CertificateSource + *out = new(HostnameConfiguration_CertificateSource) + **out = **in + } + if in.CertificateStatus != nil { + in, out := &in.CertificateStatus, &out.CertificateStatus + *out = new(HostnameConfiguration_CertificateStatus) + **out = **in + } + if in.DefaultSslBinding != nil { + in, out := &in.DefaultSslBinding, &out.DefaultSslBinding + *out = new(bool) + **out = **in + } + if in.EncodedCertificate != nil { + in, out := &in.EncodedCertificate, &out.EncodedCertificate + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.IdentityClientIdFromConfig != nil { + in, out := &in.IdentityClientIdFromConfig, &out.IdentityClientIdFromConfig + *out = new(genruntime.ConfigMapReference) + **out = **in + } + if in.KeyVaultId != nil { + in, out := &in.KeyVaultId, &out.KeyVaultId + *out = new(string) + **out = **in + } + if in.NegotiateClientCertificate != nil { + in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate + *out = new(bool) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(HostnameConfiguration_Type) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration. +func (in *HostnameConfiguration) DeepCopy() *HostnameConfiguration { + if in == nil { + return nil + } + out := new(HostnameConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostnameConfiguration_ARM) DeepCopyInto(out *HostnameConfiguration_ARM) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = new(CertificateInformation_ARM) + (*in).DeepCopyInto(*out) + } + if in.CertificatePassword != nil { + in, out := &in.CertificatePassword, &out.CertificatePassword + *out = new(string) + **out = **in + } + if in.CertificateSource != nil { + in, out := &in.CertificateSource, &out.CertificateSource + *out = new(HostnameConfiguration_CertificateSource) + **out = **in + } + if in.CertificateStatus != nil { + in, out := &in.CertificateStatus, &out.CertificateStatus + *out = new(HostnameConfiguration_CertificateStatus) + **out = **in + } + if in.DefaultSslBinding != nil { + in, out := &in.DefaultSslBinding, &out.DefaultSslBinding + *out = new(bool) + **out = **in + } + if in.EncodedCertificate != nil { + in, out := &in.EncodedCertificate, &out.EncodedCertificate + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.KeyVaultId != nil { + in, out := &in.KeyVaultId, &out.KeyVaultId + *out = new(string) + **out = **in + } + if in.NegotiateClientCertificate != nil { + in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate + *out = new(bool) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(HostnameConfiguration_Type) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration_ARM. +func (in *HostnameConfiguration_ARM) DeepCopy() *HostnameConfiguration_ARM { + if in == nil { + return nil + } + out := new(HostnameConfiguration_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostnameConfiguration_STATUS) DeepCopyInto(out *HostnameConfiguration_STATUS) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = new(CertificateInformation_STATUS) + (*in).DeepCopyInto(*out) + } + if in.CertificateSource != nil { + in, out := &in.CertificateSource, &out.CertificateSource + *out = new(HostnameConfiguration_CertificateSource_STATUS) + **out = **in + } + if in.CertificateStatus != nil { + in, out := &in.CertificateStatus, &out.CertificateStatus + *out = new(HostnameConfiguration_CertificateStatus_STATUS) + **out = **in + } + if in.DefaultSslBinding != nil { + in, out := &in.DefaultSslBinding, &out.DefaultSslBinding + *out = new(bool) + **out = **in + } + if in.EncodedCertificate != nil { + in, out := &in.EncodedCertificate, &out.EncodedCertificate + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.KeyVaultId != nil { + in, out := &in.KeyVaultId, &out.KeyVaultId + *out = new(string) + **out = **in + } + if in.NegotiateClientCertificate != nil { + in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate + *out = new(bool) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(HostnameConfiguration_Type_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration_STATUS. +func (in *HostnameConfiguration_STATUS) DeepCopy() *HostnameConfiguration_STATUS { + if in == nil { + return nil + } + out := new(HostnameConfiguration_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostnameConfiguration_STATUS_ARM) DeepCopyInto(out *HostnameConfiguration_STATUS_ARM) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = new(CertificateInformation_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.CertificateSource != nil { + in, out := &in.CertificateSource, &out.CertificateSource + *out = new(HostnameConfiguration_CertificateSource_STATUS) + **out = **in + } + if in.CertificateStatus != nil { + in, out := &in.CertificateStatus, &out.CertificateStatus + *out = new(HostnameConfiguration_CertificateStatus_STATUS) + **out = **in + } + if in.DefaultSslBinding != nil { + in, out := &in.DefaultSslBinding, &out.DefaultSslBinding + *out = new(bool) + **out = **in + } + if in.EncodedCertificate != nil { + in, out := &in.EncodedCertificate, &out.EncodedCertificate + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.KeyVaultId != nil { + in, out := &in.KeyVaultId, &out.KeyVaultId + *out = new(string) + **out = **in + } + if in.NegotiateClientCertificate != nil { + in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate + *out = new(bool) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(HostnameConfiguration_Type_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration_STATUS_ARM. +func (in *HostnameConfiguration_STATUS_ARM) DeepCopy() *HostnameConfiguration_STATUS_ARM { + if in == nil { + return nil + } + out := new(HostnameConfiguration_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultContractCreateProperties) DeepCopyInto(out *KeyVaultContractCreateProperties) { + *out = *in + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.IdentityClientIdFromConfig != nil { + in, out := &in.IdentityClientIdFromConfig, &out.IdentityClientIdFromConfig + *out = new(genruntime.ConfigMapReference) + **out = **in + } + if in.SecretIdentifier != nil { + in, out := &in.SecretIdentifier, &out.SecretIdentifier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultContractCreateProperties. +func (in *KeyVaultContractCreateProperties) DeepCopy() *KeyVaultContractCreateProperties { + if in == nil { + return nil + } + out := new(KeyVaultContractCreateProperties) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultContractCreateProperties_ARM) DeepCopyInto(out *KeyVaultContractCreateProperties_ARM) { + *out = *in + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.SecretIdentifier != nil { + in, out := &in.SecretIdentifier, &out.SecretIdentifier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultContractCreateProperties_ARM. +func (in *KeyVaultContractCreateProperties_ARM) DeepCopy() *KeyVaultContractCreateProperties_ARM { + if in == nil { + return nil + } + out := new(KeyVaultContractCreateProperties_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultContractProperties_STATUS) DeepCopyInto(out *KeyVaultContractProperties_STATUS) { + *out = *in + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.LastStatus != nil { + in, out := &in.LastStatus, &out.LastStatus + *out = new(KeyVaultLastAccessStatusContractProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.SecretIdentifier != nil { + in, out := &in.SecretIdentifier, &out.SecretIdentifier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultContractProperties_STATUS. +func (in *KeyVaultContractProperties_STATUS) DeepCopy() *KeyVaultContractProperties_STATUS { + if in == nil { + return nil + } + out := new(KeyVaultContractProperties_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultContractProperties_STATUS_ARM) DeepCopyInto(out *KeyVaultContractProperties_STATUS_ARM) { + *out = *in + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.LastStatus != nil { + in, out := &in.LastStatus, &out.LastStatus + *out = new(KeyVaultLastAccessStatusContractProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.SecretIdentifier != nil { + in, out := &in.SecretIdentifier, &out.SecretIdentifier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultContractProperties_STATUS_ARM. +func (in *KeyVaultContractProperties_STATUS_ARM) DeepCopy() *KeyVaultContractProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(KeyVaultContractProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultLastAccessStatusContractProperties_STATUS) DeepCopyInto(out *KeyVaultLastAccessStatusContractProperties_STATUS) { + *out = *in + if in.Code != nil { + in, out := &in.Code, &out.Code + *out = new(string) + **out = **in + } + if in.Message != nil { + in, out := &in.Message, &out.Message + *out = new(string) + **out = **in + } + if in.TimeStampUtc != nil { + in, out := &in.TimeStampUtc, &out.TimeStampUtc + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultLastAccessStatusContractProperties_STATUS. +func (in *KeyVaultLastAccessStatusContractProperties_STATUS) DeepCopy() *KeyVaultLastAccessStatusContractProperties_STATUS { + if in == nil { + return nil + } + out := new(KeyVaultLastAccessStatusContractProperties_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultLastAccessStatusContractProperties_STATUS_ARM) DeepCopyInto(out *KeyVaultLastAccessStatusContractProperties_STATUS_ARM) { + *out = *in + if in.Code != nil { + in, out := &in.Code, &out.Code + *out = new(string) + **out = **in + } + if in.Message != nil { + in, out := &in.Message, &out.Message + *out = new(string) + **out = **in + } + if in.TimeStampUtc != nil { + in, out := &in.TimeStampUtc, &out.TimeStampUtc + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultLastAccessStatusContractProperties_STATUS_ARM. +func (in *KeyVaultLastAccessStatusContractProperties_STATUS_ARM) DeepCopy() *KeyVaultLastAccessStatusContractProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(KeyVaultLastAccessStatusContractProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamedValue) DeepCopyInto(out *NamedValue) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamedValue. +func (in *NamedValue) DeepCopy() *NamedValue { + if in == nil { + return nil + } + out := new(NamedValue) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NamedValue) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamedValueContractProperties_STATUS_ARM) DeepCopyInto(out *NamedValueContractProperties_STATUS_ARM) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.KeyVault != nil { + in, out := &in.KeyVault, &out.KeyVault + *out = new(KeyVaultContractProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamedValueContractProperties_STATUS_ARM. +func (in *NamedValueContractProperties_STATUS_ARM) DeepCopy() *NamedValueContractProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(NamedValueContractProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamedValueCreateContractProperties_ARM) DeepCopyInto(out *NamedValueCreateContractProperties_ARM) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.KeyVault != nil { + in, out := &in.KeyVault, &out.KeyVault + *out = new(KeyVaultContractCreateProperties_ARM) + (*in).DeepCopyInto(*out) + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamedValueCreateContractProperties_ARM. +func (in *NamedValueCreateContractProperties_ARM) DeepCopy() *NamedValueCreateContractProperties_ARM { + if in == nil { + return nil + } + out := new(NamedValueCreateContractProperties_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamedValueList) DeepCopyInto(out *NamedValueList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]NamedValue, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamedValueList. +func (in *NamedValueList) DeepCopy() *NamedValueList { + if in == nil { + return nil + } + out := new(NamedValueList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NamedValueList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointConnectionWrapperProperties_STATUS_ARM) DeepCopyInto(out *PrivateEndpointConnectionWrapperProperties_STATUS_ARM) { + *out = *in + if in.GroupIds != nil { + in, out := &in.GroupIds, &out.GroupIds + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.PrivateEndpoint != nil { + in, out := &in.PrivateEndpoint, &out.PrivateEndpoint + *out = new(ArmIdWrapper_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.PrivateLinkServiceConnectionState != nil { + in, out := &in.PrivateLinkServiceConnectionState, &out.PrivateLinkServiceConnectionState + *out = new(PrivateLinkServiceConnectionState_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.ProvisioningState != nil { + in, out := &in.ProvisioningState, &out.ProvisioningState + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointConnectionWrapperProperties_STATUS_ARM. +func (in *PrivateEndpointConnectionWrapperProperties_STATUS_ARM) DeepCopy() *PrivateEndpointConnectionWrapperProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(PrivateEndpointConnectionWrapperProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateLinkServiceConnectionState_STATUS) DeepCopyInto(out *PrivateLinkServiceConnectionState_STATUS) { + *out = *in + if in.ActionsRequired != nil { + in, out := &in.ActionsRequired, &out.ActionsRequired + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(PrivateEndpointServiceConnectionStatus_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceConnectionState_STATUS. +func (in *PrivateLinkServiceConnectionState_STATUS) DeepCopy() *PrivateLinkServiceConnectionState_STATUS { + if in == nil { + return nil + } + out := new(PrivateLinkServiceConnectionState_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateLinkServiceConnectionState_STATUS_ARM) DeepCopyInto(out *PrivateLinkServiceConnectionState_STATUS_ARM) { + *out = *in + if in.ActionsRequired != nil { + in, out := &in.ActionsRequired, &out.ActionsRequired + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(PrivateEndpointServiceConnectionStatus_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceConnectionState_STATUS_ARM. +func (in *PrivateLinkServiceConnectionState_STATUS_ARM) DeepCopy() *PrivateLinkServiceConnectionState_STATUS_ARM { + if in == nil { + return nil + } + out := new(PrivateLinkServiceConnectionState_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RemotePrivateEndpointConnectionWrapper_STATUS) DeepCopyInto(out *RemotePrivateEndpointConnectionWrapper_STATUS) { + *out = *in + if in.GroupIds != nil { + in, out := &in.GroupIds, &out.GroupIds + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrivateEndpoint != nil { + in, out := &in.PrivateEndpoint, &out.PrivateEndpoint + *out = new(ArmIdWrapper_STATUS) + (*in).DeepCopyInto(*out) + } + if in.PrivateLinkServiceConnectionState != nil { + in, out := &in.PrivateLinkServiceConnectionState, &out.PrivateLinkServiceConnectionState + *out = new(PrivateLinkServiceConnectionState_STATUS) + (*in).DeepCopyInto(*out) + } + if in.ProvisioningState != nil { + in, out := &in.ProvisioningState, &out.ProvisioningState + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemotePrivateEndpointConnectionWrapper_STATUS. +func (in *RemotePrivateEndpointConnectionWrapper_STATUS) DeepCopy() *RemotePrivateEndpointConnectionWrapper_STATUS { + if in == nil { + return nil + } + out := new(RemotePrivateEndpointConnectionWrapper_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RemotePrivateEndpointConnectionWrapper_STATUS_ARM) DeepCopyInto(out *RemotePrivateEndpointConnectionWrapper_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(PrivateEndpointConnectionWrapperProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemotePrivateEndpointConnectionWrapper_STATUS_ARM. +func (in *RemotePrivateEndpointConnectionWrapper_STATUS_ARM) DeepCopy() *RemotePrivateEndpointConnectionWrapper_STATUS_ARM { + if in == nil { + return nil + } + out := new(RemotePrivateEndpointConnectionWrapper_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service) DeepCopyInto(out *Service) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service. +func (in *Service) DeepCopy() *Service { + if in == nil { + return nil + } + out := new(Service) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Service) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceList) DeepCopyInto(out *ServiceList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Service, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceList. +func (in *ServiceList) DeepCopy() *ServiceList { + if in == nil { + return nil + } + out := new(ServiceList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ServiceList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Backend_STATUS) DeepCopyInto(out *Service_Backend_STATUS) { + *out = *in + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]conditions.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Credentials != nil { + in, out := &in.Credentials, &out.Credentials + *out = new(BackendCredentialsContract_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(BackendProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(BackendContractProperties_Protocol_STATUS) + **out = **in + } + if in.Proxy != nil { + in, out := &in.Proxy, &out.Proxy + *out = new(BackendProxyContract_STATUS) + (*in).DeepCopyInto(*out) + } + if in.ResourceId != nil { + in, out := &in.ResourceId, &out.ResourceId + *out = new(string) + **out = **in + } + if in.Title != nil { + in, out := &in.Title, &out.Title + *out = new(string) + **out = **in + } + if in.Tls != nil { + in, out := &in.Tls, &out.Tls + *out = new(BackendTlsProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Backend_STATUS. +func (in *Service_Backend_STATUS) DeepCopy() *Service_Backend_STATUS { + if in == nil { + return nil + } + out := new(Service_Backend_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Backend_STATUS_ARM) DeepCopyInto(out *Service_Backend_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(BackendContractProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Backend_STATUS_ARM. +func (in *Service_Backend_STATUS_ARM) DeepCopy() *Service_Backend_STATUS_ARM { + if in == nil { + return nil + } + out := new(Service_Backend_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Backend_Spec) DeepCopyInto(out *Service_Backend_Spec) { + *out = *in + if in.Credentials != nil { + in, out := &in.Credentials, &out.Credentials + *out = new(BackendCredentialsContract) + (*in).DeepCopyInto(*out) + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(BackendProperties) + (*in).DeepCopyInto(*out) + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(BackendContractProperties_Protocol) + **out = **in + } + if in.Proxy != nil { + in, out := &in.Proxy, &out.Proxy + *out = new(BackendProxyContract) + (*in).DeepCopyInto(*out) + } + if in.ResourceReference != nil { + in, out := &in.ResourceReference, &out.ResourceReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.Title != nil { + in, out := &in.Title, &out.Title + *out = new(string) + **out = **in + } + if in.Tls != nil { + in, out := &in.Tls, &out.Tls + *out = new(BackendTlsProperties) + (*in).DeepCopyInto(*out) + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Backend_Spec. +func (in *Service_Backend_Spec) DeepCopy() *Service_Backend_Spec { + if in == nil { + return nil + } + out := new(Service_Backend_Spec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Backend_Spec_ARM) DeepCopyInto(out *Service_Backend_Spec_ARM) { + *out = *in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(BackendContractProperties_ARM) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Backend_Spec_ARM. +func (in *Service_Backend_Spec_ARM) DeepCopy() *Service_Backend_Spec_ARM { + if in == nil { + return nil + } + out := new(Service_Backend_Spec_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_NamedValue_STATUS) DeepCopyInto(out *Service_NamedValue_STATUS) { + *out = *in + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]conditions.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.KeyVault != nil { + in, out := &in.KeyVault, &out.KeyVault + *out = new(KeyVaultContractProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_NamedValue_STATUS. +func (in *Service_NamedValue_STATUS) DeepCopy() *Service_NamedValue_STATUS { + if in == nil { + return nil + } + out := new(Service_NamedValue_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_NamedValue_STATUS_ARM) DeepCopyInto(out *Service_NamedValue_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(NamedValueContractProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_NamedValue_STATUS_ARM. +func (in *Service_NamedValue_STATUS_ARM) DeepCopy() *Service_NamedValue_STATUS_ARM { + if in == nil { + return nil + } + out := new(Service_NamedValue_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_NamedValue_Spec) DeepCopyInto(out *Service_NamedValue_Spec) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.KeyVault != nil { + in, out := &in.KeyVault, &out.KeyVault + *out = new(KeyVaultContractCreateProperties) + (*in).DeepCopyInto(*out) + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_NamedValue_Spec. +func (in *Service_NamedValue_Spec) DeepCopy() *Service_NamedValue_Spec { + if in == nil { + return nil + } + out := new(Service_NamedValue_Spec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_NamedValue_Spec_ARM) DeepCopyInto(out *Service_NamedValue_Spec_ARM) { + *out = *in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(NamedValueCreateContractProperties_ARM) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_NamedValue_Spec_ARM. +func (in *Service_NamedValue_Spec_ARM) DeepCopy() *Service_NamedValue_Spec_ARM { + if in == nil { + return nil + } + out := new(Service_NamedValue_Spec_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_STATUS) DeepCopyInto(out *Service_STATUS) { + *out = *in + if in.AdditionalLocations != nil { + in, out := &in.AdditionalLocations, &out.AdditionalLocations + *out = make([]AdditionalLocation_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApiVersionConstraint != nil { + in, out := &in.ApiVersionConstraint, &out.ApiVersionConstraint + *out = new(ApiVersionConstraint_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Certificates != nil { + in, out := &in.Certificates, &out.Certificates + *out = make([]CertificateConfiguration_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]conditions.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CreatedAtUtc != nil { + in, out := &in.CreatedAtUtc, &out.CreatedAtUtc + *out = new(string) + **out = **in + } + if in.CustomProperties != nil { + in, out := &in.CustomProperties, &out.CustomProperties + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.DeveloperPortalUrl != nil { + in, out := &in.DeveloperPortalUrl, &out.DeveloperPortalUrl + *out = new(string) + **out = **in + } + if in.DisableGateway != nil { + in, out := &in.DisableGateway, &out.DisableGateway + *out = new(bool) + **out = **in + } + if in.EnableClientCertificate != nil { + in, out := &in.EnableClientCertificate, &out.EnableClientCertificate + *out = new(bool) + **out = **in + } + if in.Etag != nil { + in, out := &in.Etag, &out.Etag + *out = new(string) + **out = **in + } + if in.GatewayRegionalUrl != nil { + in, out := &in.GatewayRegionalUrl, &out.GatewayRegionalUrl + *out = new(string) + **out = **in + } + if in.GatewayUrl != nil { + in, out := &in.GatewayUrl, &out.GatewayUrl + *out = new(string) + **out = **in + } + if in.HostnameConfigurations != nil { + in, out := &in.HostnameConfigurations, &out.HostnameConfigurations + *out = make([]HostnameConfiguration_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.Id != nil { @@ -1808,24 +3491,251 @@ func (in *Service_STATUS) DeepCopyInto(out *Service_STATUS) { *out = make([]string, len(*in)) copy(*out, *in) } - if in.ProvisioningState != nil { - in, out := &in.ProvisioningState, &out.ProvisioningState + if in.ProvisioningState != nil { + in, out := &in.ProvisioningState, &out.ProvisioningState + *out = new(string) + **out = **in + } + if in.PublicIPAddresses != nil { + in, out := &in.PublicIPAddresses, &out.PublicIPAddresses + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.PublicIpAddressId != nil { + in, out := &in.PublicIpAddressId, &out.PublicIpAddressId + *out = new(string) + **out = **in + } + if in.PublicNetworkAccess != nil { + in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess + *out = new(ApiManagementServiceProperties_PublicNetworkAccess_STATUS) + **out = **in + } + if in.PublisherEmail != nil { + in, out := &in.PublisherEmail, &out.PublisherEmail + *out = new(string) + **out = **in + } + if in.PublisherName != nil { + in, out := &in.PublisherName, &out.PublisherName + *out = new(string) + **out = **in + } + if in.Restore != nil { + in, out := &in.Restore, &out.Restore + *out = new(bool) + **out = **in + } + if in.ScmUrl != nil { + in, out := &in.ScmUrl, &out.ScmUrl + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(ApiManagementServiceSkuProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.SystemData != nil { + in, out := &in.SystemData, &out.SystemData + *out = new(SystemData_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.TargetProvisioningState != nil { + in, out := &in.TargetProvisioningState, &out.TargetProvisioningState + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.VirtualNetworkConfiguration != nil { + in, out := &in.VirtualNetworkConfiguration, &out.VirtualNetworkConfiguration + *out = new(VirtualNetworkConfiguration_STATUS) + (*in).DeepCopyInto(*out) + } + if in.VirtualNetworkType != nil { + in, out := &in.VirtualNetworkType, &out.VirtualNetworkType + *out = new(ApiManagementServiceProperties_VirtualNetworkType_STATUS) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]string, len(*in)) + copy(*out, *in) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_STATUS. +func (in *Service_STATUS) DeepCopy() *Service_STATUS { + if in == nil { + return nil + } + out := new(Service_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_STATUS_ARM) DeepCopyInto(out *Service_STATUS_ARM) { + *out = *in + if in.Etag != nil { + in, out := &in.Etag, &out.Etag + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = new(ApiManagementServiceIdentity_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(ApiManagementServiceProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(ApiManagementServiceSkuProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.SystemData != nil { + in, out := &in.SystemData, &out.SystemData + *out = new(SystemData_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]string, len(*in)) + copy(*out, *in) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_STATUS_ARM. +func (in *Service_STATUS_ARM) DeepCopy() *Service_STATUS_ARM { + if in == nil { + return nil + } + out := new(Service_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Spec) DeepCopyInto(out *Service_Spec) { + *out = *in + if in.AdditionalLocations != nil { + in, out := &in.AdditionalLocations, &out.AdditionalLocations + *out = make([]AdditionalLocation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApiVersionConstraint != nil { + in, out := &in.ApiVersionConstraint, &out.ApiVersionConstraint + *out = new(ApiVersionConstraint) + (*in).DeepCopyInto(*out) + } + if in.Certificates != nil { + in, out := &in.Certificates, &out.Certificates + *out = make([]CertificateConfiguration, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomProperties != nil { + in, out := &in.CustomProperties, &out.CustomProperties + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.DisableGateway != nil { + in, out := &in.DisableGateway, &out.DisableGateway + *out = new(bool) + **out = **in + } + if in.EnableClientCertificate != nil { + in, out := &in.EnableClientCertificate, &out.EnableClientCertificate + *out = new(bool) + **out = **in + } + if in.HostnameConfigurations != nil { + in, out := &in.HostnameConfigurations, &out.HostnameConfigurations + *out = make([]HostnameConfiguration, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = new(ApiManagementServiceIdentity) + (*in).DeepCopyInto(*out) + } + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.PublicIPAddresses != nil { - in, out := &in.PublicIPAddresses, &out.PublicIPAddresses - *out = make([]string, len(*in)) - copy(*out, *in) + if in.NatGatewayState != nil { + in, out := &in.NatGatewayState, &out.NatGatewayState + *out = new(ApiManagementServiceProperties_NatGatewayState) + **out = **in } - if in.PublicIpAddressId != nil { - in, out := &in.PublicIpAddressId, &out.PublicIpAddressId + if in.NotificationSenderEmail != nil { + in, out := &in.NotificationSenderEmail, &out.NotificationSenderEmail *out = new(string) **out = **in } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.PublicIpAddressReference != nil { + in, out := &in.PublicIpAddressReference, &out.PublicIpAddressReference + *out = new(genruntime.ResourceReference) + **out = **in + } if in.PublicNetworkAccess != nil { in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess - *out = new(ApiManagementServiceProperties_PublicNetworkAccess_STATUS) + *out = new(ApiManagementServiceProperties_PublicNetworkAccess) **out = **in } if in.PublisherEmail != nil { @@ -1843,19 +3753,9 @@ func (in *Service_STATUS) DeepCopyInto(out *Service_STATUS) { *out = new(bool) **out = **in } - if in.ScmUrl != nil { - in, out := &in.ScmUrl, &out.ScmUrl - *out = new(string) - **out = **in - } if in.Sku != nil { in, out := &in.Sku, &out.Sku - *out = new(ApiManagementServiceSkuProperties_STATUS) - (*in).DeepCopyInto(*out) - } - if in.SystemData != nil { - in, out := &in.SystemData, &out.SystemData - *out = new(SystemData_STATUS) + *out = new(ApiManagementServiceSkuProperties) (*in).DeepCopyInto(*out) } if in.Tags != nil { @@ -1865,24 +3765,14 @@ func (in *Service_STATUS) DeepCopyInto(out *Service_STATUS) { (*out)[key] = val } } - if in.TargetProvisioningState != nil { - in, out := &in.TargetProvisioningState, &out.TargetProvisioningState - *out = new(string) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } if in.VirtualNetworkConfiguration != nil { in, out := &in.VirtualNetworkConfiguration, &out.VirtualNetworkConfiguration - *out = new(VirtualNetworkConfiguration_STATUS) + *out = new(VirtualNetworkConfiguration) (*in).DeepCopyInto(*out) } if in.VirtualNetworkType != nil { in, out := &in.VirtualNetworkType, &out.VirtualNetworkType - *out = new(ApiManagementServiceProperties_VirtualNetworkType_STATUS) + *out = new(ApiManagementServiceProperties_VirtualNetworkType) **out = **in } if in.Zones != nil { @@ -1892,32 +3782,22 @@ func (in *Service_STATUS) DeepCopyInto(out *Service_STATUS) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_STATUS. -func (in *Service_STATUS) DeepCopy() *Service_STATUS { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Spec. +func (in *Service_Spec) DeepCopy() *Service_Spec { if in == nil { return nil } - out := new(Service_STATUS) + out := new(Service_Spec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Service_STATUS_ARM) DeepCopyInto(out *Service_STATUS_ARM) { +func (in *Service_Spec_ARM) DeepCopyInto(out *Service_Spec_ARM) { *out = *in - if in.Etag != nil { - in, out := &in.Etag, &out.Etag - *out = new(string) - **out = **in - } - if in.Id != nil { - in, out := &in.Id, &out.Id - *out = new(string) - **out = **in - } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = new(ApiManagementServiceIdentity_STATUS_ARM) + *out = new(ApiManagementServiceIdentity_ARM) (*in).DeepCopyInto(*out) } if in.Location != nil { @@ -1925,24 +3805,14 @@ func (in *Service_STATUS_ARM) DeepCopyInto(out *Service_STATUS_ARM) { *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } if in.Properties != nil { in, out := &in.Properties, &out.Properties - *out = new(ApiManagementServiceProperties_STATUS_ARM) + *out = new(ApiManagementServiceProperties_ARM) (*in).DeepCopyInto(*out) } if in.Sku != nil { in, out := &in.Sku, &out.Sku - *out = new(ApiManagementServiceSkuProperties_STATUS_ARM) - (*in).DeepCopyInto(*out) - } - if in.SystemData != nil { - in, out := &in.SystemData, &out.SystemData - *out = new(SystemData_STATUS_ARM) + *out = new(ApiManagementServiceSkuProperties_ARM) (*in).DeepCopyInto(*out) } if in.Tags != nil { @@ -1952,210 +3822,404 @@ func (in *Service_STATUS_ARM) DeepCopyInto(out *Service_STATUS_ARM) { (*out)[key] = val } } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]string, len(*in)) + copy(*out, *in) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Spec_ARM. +func (in *Service_Spec_ARM) DeepCopy() *Service_Spec_ARM { + if in == nil { + return nil + } + out := new(Service_Spec_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Subscription_STATUS) DeepCopyInto(out *Service_Subscription_STATUS) { + *out = *in + if in.AllowTracing != nil { + in, out := &in.AllowTracing, &out.AllowTracing + *out = new(bool) + **out = **in + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]conditions.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CreatedDate != nil { + in, out := &in.CreatedDate, &out.CreatedDate + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.EndDate != nil { + in, out := &in.EndDate, &out.EndDate + *out = new(string) + **out = **in + } + if in.ExpirationDate != nil { + in, out := &in.ExpirationDate, &out.ExpirationDate + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NotificationDate != nil { + in, out := &in.NotificationDate, &out.NotificationDate + *out = new(string) + **out = **in + } + if in.OwnerId != nil { + in, out := &in.OwnerId, &out.OwnerId + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.StartDate != nil { + in, out := &in.StartDate, &out.StartDate + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(SubscriptionContractProperties_State_STATUS) + **out = **in + } + if in.StateComment != nil { + in, out := &in.StateComment, &out.StateComment + *out = new(string) + **out = **in + } if in.Type != nil { in, out := &in.Type, &out.Type *out = new(string) **out = **in } - if in.Zones != nil { - in, out := &in.Zones, &out.Zones - *out = make([]string, len(*in)) - copy(*out, *in) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Subscription_STATUS. +func (in *Service_Subscription_STATUS) DeepCopy() *Service_Subscription_STATUS { + if in == nil { + return nil + } + out := new(Service_Subscription_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Subscription_STATUS_ARM) DeepCopyInto(out *Service_Subscription_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(SubscriptionContractProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Subscription_STATUS_ARM. +func (in *Service_Subscription_STATUS_ARM) DeepCopy() *Service_Subscription_STATUS_ARM { + if in == nil { + return nil + } + out := new(Service_Subscription_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Subscription_Spec) DeepCopyInto(out *Service_Subscription_Spec) { + *out = *in + if in.AllowTracing != nil { + in, out := &in.AllowTracing, &out.AllowTracing + *out = new(bool) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.OwnerReference != nil { + in, out := &in.OwnerReference, &out.OwnerReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.PrimaryKey != nil { + in, out := &in.PrimaryKey, &out.PrimaryKey + *out = new(genruntime.SecretReference) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.SecondaryKey != nil { + in, out := &in.SecondaryKey, &out.SecondaryKey + *out = new(genruntime.SecretReference) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(SubscriptionCreateParameterProperties_State) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Subscription_Spec. +func (in *Service_Subscription_Spec) DeepCopy() *Service_Subscription_Spec { + if in == nil { + return nil + } + out := new(Service_Subscription_Spec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Subscription_Spec_ARM) DeepCopyInto(out *Service_Subscription_Spec_ARM) { + *out = *in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(SubscriptionCreateParameterProperties_ARM) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Subscription_Spec_ARM. +func (in *Service_Subscription_Spec_ARM) DeepCopy() *Service_Subscription_Spec_ARM { + if in == nil { + return nil } + out := new(Service_Subscription_Spec_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Subscription) DeepCopyInto(out *Subscription) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_STATUS_ARM. -func (in *Service_STATUS_ARM) DeepCopy() *Service_STATUS_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subscription. +func (in *Subscription) DeepCopy() *Subscription { if in == nil { return nil } - out := new(Service_STATUS_ARM) + out := new(Subscription) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Subscription) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Service_Spec) DeepCopyInto(out *Service_Spec) { +func (in *SubscriptionContractProperties_STATUS_ARM) DeepCopyInto(out *SubscriptionContractProperties_STATUS_ARM) { *out = *in - if in.AdditionalLocations != nil { - in, out := &in.AdditionalLocations, &out.AdditionalLocations - *out = make([]AdditionalLocation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ApiVersionConstraint != nil { - in, out := &in.ApiVersionConstraint, &out.ApiVersionConstraint - *out = new(ApiVersionConstraint) - (*in).DeepCopyInto(*out) - } - if in.Certificates != nil { - in, out := &in.Certificates, &out.Certificates - *out = make([]CertificateConfiguration, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CustomProperties != nil { - in, out := &in.CustomProperties, &out.CustomProperties - *out = make(map[string]string, len(*in)) - for key, val := range *in { - (*out)[key] = val - } - } - if in.DisableGateway != nil { - in, out := &in.DisableGateway, &out.DisableGateway + if in.AllowTracing != nil { + in, out := &in.AllowTracing, &out.AllowTracing *out = new(bool) **out = **in } - if in.EnableClientCertificate != nil { - in, out := &in.EnableClientCertificate, &out.EnableClientCertificate - *out = new(bool) + if in.CreatedDate != nil { + in, out := &in.CreatedDate, &out.CreatedDate + *out = new(string) **out = **in } - if in.HostnameConfigurations != nil { - in, out := &in.HostnameConfigurations, &out.HostnameConfigurations - *out = make([]HostnameConfiguration, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Identity != nil { - in, out := &in.Identity, &out.Identity - *out = new(ApiManagementServiceIdentity) - (*in).DeepCopyInto(*out) - } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName *out = new(string) **out = **in } - if in.NatGatewayState != nil { - in, out := &in.NatGatewayState, &out.NatGatewayState - *out = new(ApiManagementServiceProperties_NatGatewayState) + if in.EndDate != nil { + in, out := &in.EndDate, &out.EndDate + *out = new(string) **out = **in } - if in.NotificationSenderEmail != nil { - in, out := &in.NotificationSenderEmail, &out.NotificationSenderEmail + if in.ExpirationDate != nil { + in, out := &in.ExpirationDate, &out.ExpirationDate *out = new(string) **out = **in } - if in.Owner != nil { - in, out := &in.Owner, &out.Owner - *out = new(genruntime.KnownResourceReference) + if in.NotificationDate != nil { + in, out := &in.NotificationDate, &out.NotificationDate + *out = new(string) **out = **in } - if in.PublicIpAddressReference != nil { - in, out := &in.PublicIpAddressReference, &out.PublicIpAddressReference - *out = new(genruntime.ResourceReference) + if in.OwnerId != nil { + in, out := &in.OwnerId, &out.OwnerId + *out = new(string) **out = **in } - if in.PublicNetworkAccess != nil { - in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess - *out = new(ApiManagementServiceProperties_PublicNetworkAccess) + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) **out = **in } - if in.PublisherEmail != nil { - in, out := &in.PublisherEmail, &out.PublisherEmail + if in.StartDate != nil { + in, out := &in.StartDate, &out.StartDate *out = new(string) **out = **in } - if in.PublisherName != nil { - in, out := &in.PublisherName, &out.PublisherName + if in.State != nil { + in, out := &in.State, &out.State + *out = new(SubscriptionContractProperties_State_STATUS) + **out = **in + } + if in.StateComment != nil { + in, out := &in.StateComment, &out.StateComment *out = new(string) **out = **in } - if in.Restore != nil { - in, out := &in.Restore, &out.Restore +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionContractProperties_STATUS_ARM. +func (in *SubscriptionContractProperties_STATUS_ARM) DeepCopy() *SubscriptionContractProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(SubscriptionContractProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionCreateParameterProperties_ARM) DeepCopyInto(out *SubscriptionCreateParameterProperties_ARM) { + *out = *in + if in.AllowTracing != nil { + in, out := &in.AllowTracing, &out.AllowTracing *out = new(bool) **out = **in } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku - *out = new(ApiManagementServiceSkuProperties) - (*in).DeepCopyInto(*out) + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]string, len(*in)) - for key, val := range *in { - (*out)[key] = val - } + if in.OwnerId != nil { + in, out := &in.OwnerId, &out.OwnerId + *out = new(string) + **out = **in } - if in.VirtualNetworkConfiguration != nil { - in, out := &in.VirtualNetworkConfiguration, &out.VirtualNetworkConfiguration - *out = new(VirtualNetworkConfiguration) - (*in).DeepCopyInto(*out) + if in.PrimaryKey != nil { + in, out := &in.PrimaryKey, &out.PrimaryKey + *out = new(string) + **out = **in } - if in.VirtualNetworkType != nil { - in, out := &in.VirtualNetworkType, &out.VirtualNetworkType - *out = new(ApiManagementServiceProperties_VirtualNetworkType) + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) **out = **in } - if in.Zones != nil { - in, out := &in.Zones, &out.Zones - *out = make([]string, len(*in)) - copy(*out, *in) + if in.SecondaryKey != nil { + in, out := &in.SecondaryKey, &out.SecondaryKey + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(SubscriptionCreateParameterProperties_State) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Spec. -func (in *Service_Spec) DeepCopy() *Service_Spec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionCreateParameterProperties_ARM. +func (in *SubscriptionCreateParameterProperties_ARM) DeepCopy() *SubscriptionCreateParameterProperties_ARM { if in == nil { return nil } - out := new(Service_Spec) + out := new(SubscriptionCreateParameterProperties_ARM) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Service_Spec_ARM) DeepCopyInto(out *Service_Spec_ARM) { +func (in *SubscriptionList) DeepCopyInto(out *SubscriptionList) { *out = *in - if in.Identity != nil { - in, out := &in.Identity, &out.Identity - *out = new(ApiManagementServiceIdentity_ARM) - (*in).DeepCopyInto(*out) - } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) - **out = **in - } - if in.Properties != nil { - in, out := &in.Properties, &out.Properties - *out = new(ApiManagementServiceProperties_ARM) - (*in).DeepCopyInto(*out) - } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku - *out = new(ApiManagementServiceSkuProperties_ARM) - (*in).DeepCopyInto(*out) - } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]string, len(*in)) - for key, val := range *in { - (*out)[key] = val + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Subscription, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Zones != nil { - in, out := &in.Zones, &out.Zones - *out = make([]string, len(*in)) - copy(*out, *in) - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Spec_ARM. -func (in *Service_Spec_ARM) DeepCopy() *Service_Spec_ARM { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionList. +func (in *SubscriptionList) DeepCopy() *SubscriptionList { if in == nil { return nil } - out := new(Service_Spec_ARM) + out := new(SubscriptionList) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SubscriptionList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SystemData_STATUS) DeepCopyInto(out *SystemData_STATUS) { *out = *in @@ -2426,3 +4490,103 @@ func (in *VirtualNetworkConfiguration_STATUS_ARM) DeepCopy() *VirtualNetworkConf in.DeepCopyInto(out) return out } + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *X509CertificateName) DeepCopyInto(out *X509CertificateName) { + *out = *in + if in.IssuerCertificateThumbprint != nil { + in, out := &in.IssuerCertificateThumbprint, &out.IssuerCertificateThumbprint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new X509CertificateName. +func (in *X509CertificateName) DeepCopy() *X509CertificateName { + if in == nil { + return nil + } + out := new(X509CertificateName) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *X509CertificateName_ARM) DeepCopyInto(out *X509CertificateName_ARM) { + *out = *in + if in.IssuerCertificateThumbprint != nil { + in, out := &in.IssuerCertificateThumbprint, &out.IssuerCertificateThumbprint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new X509CertificateName_ARM. +func (in *X509CertificateName_ARM) DeepCopy() *X509CertificateName_ARM { + if in == nil { + return nil + } + out := new(X509CertificateName_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *X509CertificateName_STATUS) DeepCopyInto(out *X509CertificateName_STATUS) { + *out = *in + if in.IssuerCertificateThumbprint != nil { + in, out := &in.IssuerCertificateThumbprint, &out.IssuerCertificateThumbprint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new X509CertificateName_STATUS. +func (in *X509CertificateName_STATUS) DeepCopy() *X509CertificateName_STATUS { + if in == nil { + return nil + } + out := new(X509CertificateName_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *X509CertificateName_STATUS_ARM) DeepCopyInto(out *X509CertificateName_STATUS_ARM) { + *out = *in + if in.IssuerCertificateThumbprint != nil { + in, out := &in.IssuerCertificateThumbprint, &out.IssuerCertificateThumbprint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new X509CertificateName_STATUS_ARM. +func (in *X509CertificateName_STATUS_ARM) DeepCopy() *X509CertificateName_STATUS_ARM { + if in == nil { + return nil + } + out := new(X509CertificateName_STATUS_ARM) + in.DeepCopyInto(out) + return out +} diff --git a/v2/api/apimanagement/v1api20220801storage/backend_types_gen.go b/v2/api/apimanagement/v1api20220801storage/backend_types_gen.go new file mode 100644 index 00000000000..8060488f7c4 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801storage/backend_types_gen.go @@ -0,0 +1,352 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801storage + +import ( + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// +kubebuilder:rbac:groups=apimanagement.azure.com,resources=backends,verbs=get;list;watch;create;update;patch;delete +// +kubebuilder:rbac:groups=apimanagement.azure.com,resources={backends/status,backends/finalizers},verbs=get;update;patch + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:storageversion +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Storage version of v1api20220801.Backend +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimbackends.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId} +type Backend struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec Service_Backend_Spec `json:"spec,omitempty"` + Status Service_Backend_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &Backend{} + +// GetConditions returns the conditions of the resource +func (backend *Backend) GetConditions() conditions.Conditions { + return backend.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (backend *Backend) SetConditions(conditions conditions.Conditions) { + backend.Status.Conditions = conditions +} + +var _ genruntime.KubernetesResource = &Backend{} + +// AzureName returns the Azure name of the resource +func (backend *Backend) AzureName() string { + return backend.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (backend Backend) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (backend *Backend) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (backend *Backend) GetSpec() genruntime.ConvertibleSpec { + return &backend.Spec +} + +// GetStatus returns the status of this resource +func (backend *Backend) GetStatus() genruntime.ConvertibleStatus { + return &backend.Status +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/backends" +func (backend *Backend) GetType() string { + return "Microsoft.ApiManagement/service/backends" +} + +// NewEmptyStatus returns a new empty (blank) status +func (backend *Backend) NewEmptyStatus() genruntime.ConvertibleStatus { + return &Service_Backend_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (backend *Backend) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(backend.Spec) + return backend.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (backend *Backend) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*Service_Backend_STATUS); ok { + backend.Status = *st + return nil + } + + // Convert status to required version + var st Service_Backend_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + backend.Status = st + return nil +} + +// Hub marks that this Backend is the hub type for conversion +func (backend *Backend) Hub() {} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (backend *Backend) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: backend.Spec.OriginalVersion, + Kind: "Backend", + } +} + +// +kubebuilder:object:root=true +// Storage version of v1api20220801.Backend +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimbackends.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId} +type BackendList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []Backend `json:"items"` +} + +// Storage version of v1api20220801.APIVersion +// +kubebuilder:validation:Enum={"2022-08-01"} +type APIVersion string + +const APIVersion_Value = APIVersion("2022-08-01") + +// Storage version of v1api20220801.Service_Backend_Spec +type Service_Backend_Spec struct { + // +kubebuilder:validation:MaxLength=80 + // +kubebuilder:validation:MinLength=1 + // AzureName: The name of the resource in Azure. This is often the same as the name of the resource in Kubernetes but it + // doesn't have to be. + AzureName string `json:"azureName,omitempty"` + Credentials *BackendCredentialsContract `json:"credentials,omitempty"` + Description *string `json:"description,omitempty"` + OriginalVersion string `json:"originalVersion,omitempty"` + + // +kubebuilder:validation:Required + // Owner: The owner of the resource. The owner controls where the resource goes when it is deployed. The owner also + // controls the resources lifecycle. When the owner is deleted the resource will also be deleted. Owner is expected to be a + // reference to a apimanagement.azure.com/Service resource + Owner *genruntime.KnownResourceReference `group:"apimanagement.azure.com" json:"owner,omitempty" kind:"Service"` + Properties *BackendProperties `json:"properties,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Protocol *string `json:"protocol,omitempty"` + Proxy *BackendProxyContract `json:"proxy,omitempty"` + + // ResourceReference: Management Uri of the Resource in External System. This URL can be the Arm Resource Id of Logic Apps, + // Function Apps or API Apps. + ResourceReference *genruntime.ResourceReference `armReference:"ResourceId" json:"resourceReference,omitempty"` + Title *string `json:"title,omitempty"` + Tls *BackendTlsProperties `json:"tls,omitempty"` + Url *string `json:"url,omitempty"` +} + +var _ genruntime.ConvertibleSpec = &Service_Backend_Spec{} + +// ConvertSpecFrom populates our Service_Backend_Spec from the provided source +func (backend *Service_Backend_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + if source == backend { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec") + } + + return source.ConvertSpecTo(backend) +} + +// ConvertSpecTo populates the provided destination from our Service_Backend_Spec +func (backend *Service_Backend_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + if destination == backend { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec") + } + + return destination.ConvertSpecFrom(backend) +} + +// Storage version of v1api20220801.Service_Backend_STATUS +type Service_Backend_STATUS struct { + Conditions []conditions.Condition `json:"conditions,omitempty"` + Credentials *BackendCredentialsContract_STATUS `json:"credentials,omitempty"` + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Properties *BackendProperties_STATUS `json:"properties,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Protocol *string `json:"protocol,omitempty"` + Proxy *BackendProxyContract_STATUS `json:"proxy,omitempty"` + ResourceId *string `json:"resourceId,omitempty"` + Title *string `json:"title,omitempty"` + Tls *BackendTlsProperties_STATUS `json:"tls,omitempty"` + Type *string `json:"type,omitempty"` + Url *string `json:"url,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &Service_Backend_STATUS{} + +// ConvertStatusFrom populates our Service_Backend_STATUS from the provided source +func (backend *Service_Backend_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + if source == backend { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus") + } + + return source.ConvertStatusTo(backend) +} + +// ConvertStatusTo populates the provided destination from our Service_Backend_STATUS +func (backend *Service_Backend_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + if destination == backend { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus") + } + + return destination.ConvertStatusFrom(backend) +} + +// Storage version of v1api20220801.BackendCredentialsContract +// Details of the Credentials used to connect to Backend. +type BackendCredentialsContract struct { + Authorization *BackendAuthorizationHeaderCredentials `json:"authorization,omitempty"` + Certificate []string `json:"certificate,omitempty"` + CertificateIds []string `json:"certificateIds,omitempty"` + Header map[string][]string `json:"header,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Query map[string][]string `json:"query,omitempty"` +} + +// Storage version of v1api20220801.BackendCredentialsContract_STATUS +// Details of the Credentials used to connect to Backend. +type BackendCredentialsContract_STATUS struct { + Authorization *BackendAuthorizationHeaderCredentials_STATUS `json:"authorization,omitempty"` + Certificate []string `json:"certificate,omitempty"` + CertificateIds []string `json:"certificateIds,omitempty"` + Header map[string][]string `json:"header,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Query map[string][]string `json:"query,omitempty"` +} + +// Storage version of v1api20220801.BackendProperties +// Properties specific to the Backend Type. +type BackendProperties struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ServiceFabricCluster *BackendServiceFabricClusterProperties `json:"serviceFabricCluster,omitempty"` +} + +// Storage version of v1api20220801.BackendProperties_STATUS +// Properties specific to the Backend Type. +type BackendProperties_STATUS struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ServiceFabricCluster *BackendServiceFabricClusterProperties_STATUS `json:"serviceFabricCluster,omitempty"` +} + +// Storage version of v1api20220801.BackendProxyContract +// Details of the Backend WebProxy Server to use in the Request to Backend. +type BackendProxyContract struct { + Password *genruntime.SecretReference `json:"password,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Url *string `json:"url,omitempty"` + Username *string `json:"username,omitempty"` +} + +// Storage version of v1api20220801.BackendProxyContract_STATUS +// Details of the Backend WebProxy Server to use in the Request to Backend. +type BackendProxyContract_STATUS struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Url *string `json:"url,omitempty"` + Username *string `json:"username,omitempty"` +} + +// Storage version of v1api20220801.BackendTlsProperties +// Properties controlling TLS Certificate Validation. +type BackendTlsProperties struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty"` + ValidateCertificateName *bool `json:"validateCertificateName,omitempty"` +} + +// Storage version of v1api20220801.BackendTlsProperties_STATUS +// Properties controlling TLS Certificate Validation. +type BackendTlsProperties_STATUS struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty"` + ValidateCertificateName *bool `json:"validateCertificateName,omitempty"` +} + +// Storage version of v1api20220801.BackendAuthorizationHeaderCredentials +// Authorization header information. +type BackendAuthorizationHeaderCredentials struct { + Parameter *string `json:"parameter,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Scheme *string `json:"scheme,omitempty"` +} + +// Storage version of v1api20220801.BackendAuthorizationHeaderCredentials_STATUS +// Authorization header information. +type BackendAuthorizationHeaderCredentials_STATUS struct { + Parameter *string `json:"parameter,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Scheme *string `json:"scheme,omitempty"` +} + +// Storage version of v1api20220801.BackendServiceFabricClusterProperties +// Properties of the Service Fabric Type Backend. +type BackendServiceFabricClusterProperties struct { + ClientCertificateId *string `json:"clientCertificateId,omitempty"` + ClientCertificatethumbprint *string `json:"clientCertificatethumbprint,omitempty"` + ManagementEndpoints []string `json:"managementEndpoints,omitempty"` + MaxPartitionResolutionRetries *int `json:"maxPartitionResolutionRetries,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ServerCertificateThumbprints []string `json:"serverCertificateThumbprints,omitempty"` + ServerX509Names []X509CertificateName `json:"serverX509Names,omitempty"` +} + +// Storage version of v1api20220801.BackendServiceFabricClusterProperties_STATUS +// Properties of the Service Fabric Type Backend. +type BackendServiceFabricClusterProperties_STATUS struct { + ClientCertificateId *string `json:"clientCertificateId,omitempty"` + ClientCertificatethumbprint *string `json:"clientCertificatethumbprint,omitempty"` + ManagementEndpoints []string `json:"managementEndpoints,omitempty"` + MaxPartitionResolutionRetries *int `json:"maxPartitionResolutionRetries,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ServerCertificateThumbprints []string `json:"serverCertificateThumbprints,omitempty"` + ServerX509Names []X509CertificateName_STATUS `json:"serverX509Names,omitempty"` +} + +// Storage version of v1api20220801.X509CertificateName +// Properties of server X509Names. +type X509CertificateName struct { + IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20220801.X509CertificateName_STATUS +// Properties of server X509Names. +type X509CertificateName_STATUS struct { + IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +func init() { + SchemeBuilder.Register(&Backend{}, &BackendList{}) +} diff --git a/v2/api/apimanagement/v1api20220801storage/backend_types_gen_test.go b/v2/api/apimanagement/v1api20220801storage/backend_types_gen_test.go new file mode 100644 index 00000000000..c6c89eaf2ff --- /dev/null +++ b/v2/api/apimanagement/v1api20220801storage/backend_types_gen_test.go @@ -0,0 +1,1178 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801storage + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Backend_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 20 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Backend via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackend, BackendGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackend runs a test to see if a specific instance of Backend round trips to JSON and back losslessly +func RunJSONSerializationTestForBackend(subject Backend) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Backend + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Backend instances for property testing - lazily instantiated by BackendGenerator() +var backendGenerator gopter.Gen + +// BackendGenerator returns a generator of Backend instances for property testing. +func BackendGenerator() gopter.Gen { + if backendGenerator != nil { + return backendGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForBackend(generators) + backendGenerator = gen.Struct(reflect.TypeOf(Backend{}), generators) + + return backendGenerator +} + +// AddRelatedPropertyGeneratorsForBackend is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackend(gens map[string]gopter.Gen) { + gens["Spec"] = Service_Backend_SpecGenerator() + gens["Status"] = Service_Backend_STATUSGenerator() +} + +func Test_Service_Backend_Spec_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Backend_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Backend_Spec, Service_Backend_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Backend_Spec runs a test to see if a specific instance of Service_Backend_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Backend_Spec(subject Service_Backend_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Backend_Spec + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Backend_Spec instances for property testing - lazily instantiated by +// Service_Backend_SpecGenerator() +var service_Backend_SpecGenerator gopter.Gen + +// Service_Backend_SpecGenerator returns a generator of Service_Backend_Spec instances for property testing. +// We first initialize service_Backend_SpecGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_Backend_SpecGenerator() gopter.Gen { + if service_Backend_SpecGenerator != nil { + return service_Backend_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_Spec(generators) + service_Backend_SpecGenerator = gen.Struct(reflect.TypeOf(Service_Backend_Spec{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_Spec(generators) + AddRelatedPropertyGeneratorsForService_Backend_Spec(generators) + service_Backend_SpecGenerator = gen.Struct(reflect.TypeOf(Service_Backend_Spec{}), generators) + + return service_Backend_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForService_Backend_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Backend_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["OriginalVersion"] = gen.AlphaString() + gens["Protocol"] = gen.PtrOf(gen.AlphaString()) + gens["Title"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_Backend_Spec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_Backend_Spec(gens map[string]gopter.Gen) { + gens["Credentials"] = gen.PtrOf(BackendCredentialsContractGenerator()) + gens["Properties"] = gen.PtrOf(BackendPropertiesGenerator()) + gens["Proxy"] = gen.PtrOf(BackendProxyContractGenerator()) + gens["Tls"] = gen.PtrOf(BackendTlsPropertiesGenerator()) +} + +func Test_Service_Backend_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Backend_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Backend_STATUS, Service_Backend_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Backend_STATUS runs a test to see if a specific instance of Service_Backend_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Backend_STATUS(subject Service_Backend_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Backend_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Backend_STATUS instances for property testing - lazily instantiated by +// Service_Backend_STATUSGenerator() +var service_Backend_STATUSGenerator gopter.Gen + +// Service_Backend_STATUSGenerator returns a generator of Service_Backend_STATUS instances for property testing. +// We first initialize service_Backend_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_Backend_STATUSGenerator() gopter.Gen { + if service_Backend_STATUSGenerator != nil { + return service_Backend_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_STATUS(generators) + service_Backend_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_Backend_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Backend_STATUS(generators) + AddRelatedPropertyGeneratorsForService_Backend_STATUS(generators) + service_Backend_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_Backend_STATUS{}), generators) + + return service_Backend_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForService_Backend_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Backend_STATUS(gens map[string]gopter.Gen) { + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Protocol"] = gen.PtrOf(gen.AlphaString()) + gens["ResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["Title"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_Backend_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_Backend_STATUS(gens map[string]gopter.Gen) { + gens["Credentials"] = gen.PtrOf(BackendCredentialsContract_STATUSGenerator()) + gens["Properties"] = gen.PtrOf(BackendProperties_STATUSGenerator()) + gens["Proxy"] = gen.PtrOf(BackendProxyContract_STATUSGenerator()) + gens["Tls"] = gen.PtrOf(BackendTlsProperties_STATUSGenerator()) +} + +func Test_BackendCredentialsContract_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendCredentialsContract via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendCredentialsContract, BackendCredentialsContractGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendCredentialsContract runs a test to see if a specific instance of BackendCredentialsContract round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendCredentialsContract(subject BackendCredentialsContract) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendCredentialsContract + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendCredentialsContract instances for property testing - lazily instantiated by +// BackendCredentialsContractGenerator() +var backendCredentialsContractGenerator gopter.Gen + +// BackendCredentialsContractGenerator returns a generator of BackendCredentialsContract instances for property testing. +// We first initialize backendCredentialsContractGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendCredentialsContractGenerator() gopter.Gen { + if backendCredentialsContractGenerator != nil { + return backendCredentialsContractGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract(generators) + backendCredentialsContractGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract(generators) + AddRelatedPropertyGeneratorsForBackendCredentialsContract(generators) + backendCredentialsContractGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract{}), generators) + + return backendCredentialsContractGenerator +} + +// AddIndependentPropertyGeneratorsForBackendCredentialsContract is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendCredentialsContract(gens map[string]gopter.Gen) { + gens["Certificate"] = gen.SliceOf(gen.AlphaString()) + gens["CertificateIds"] = gen.SliceOf(gen.AlphaString()) + gens["Header"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) + gens["Query"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) +} + +// AddRelatedPropertyGeneratorsForBackendCredentialsContract is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendCredentialsContract(gens map[string]gopter.Gen) { + gens["Authorization"] = gen.PtrOf(BackendAuthorizationHeaderCredentialsGenerator()) +} + +func Test_BackendCredentialsContract_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendCredentialsContract_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendCredentialsContract_STATUS, BackendCredentialsContract_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendCredentialsContract_STATUS runs a test to see if a specific instance of BackendCredentialsContract_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendCredentialsContract_STATUS(subject BackendCredentialsContract_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendCredentialsContract_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendCredentialsContract_STATUS instances for property testing - lazily instantiated by +// BackendCredentialsContract_STATUSGenerator() +var backendCredentialsContract_STATUSGenerator gopter.Gen + +// BackendCredentialsContract_STATUSGenerator returns a generator of BackendCredentialsContract_STATUS instances for property testing. +// We first initialize backendCredentialsContract_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendCredentialsContract_STATUSGenerator() gopter.Gen { + if backendCredentialsContract_STATUSGenerator != nil { + return backendCredentialsContract_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS(generators) + backendCredentialsContract_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS(generators) + AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS(generators) + backendCredentialsContract_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendCredentialsContract_STATUS{}), generators) + + return backendCredentialsContract_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendCredentialsContract_STATUS(gens map[string]gopter.Gen) { + gens["Certificate"] = gen.SliceOf(gen.AlphaString()) + gens["CertificateIds"] = gen.SliceOf(gen.AlphaString()) + gens["Header"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) + gens["Query"] = gen.MapOf(gen.AlphaString(), gen.SliceOf(gen.AlphaString())) +} + +// AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendCredentialsContract_STATUS(gens map[string]gopter.Gen) { + gens["Authorization"] = gen.PtrOf(BackendAuthorizationHeaderCredentials_STATUSGenerator()) +} + +func Test_BackendProperties_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProperties via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProperties, BackendPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProperties runs a test to see if a specific instance of BackendProperties round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProperties(subject BackendProperties) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProperties + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProperties instances for property testing - lazily instantiated by BackendPropertiesGenerator() +var backendPropertiesGenerator gopter.Gen + +// BackendPropertiesGenerator returns a generator of BackendProperties instances for property testing. +func BackendPropertiesGenerator() gopter.Gen { + if backendPropertiesGenerator != nil { + return backendPropertiesGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForBackendProperties(generators) + backendPropertiesGenerator = gen.Struct(reflect.TypeOf(BackendProperties{}), generators) + + return backendPropertiesGenerator +} + +// AddRelatedPropertyGeneratorsForBackendProperties is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendProperties(gens map[string]gopter.Gen) { + gens["ServiceFabricCluster"] = gen.PtrOf(BackendServiceFabricClusterPropertiesGenerator()) +} + +func Test_BackendProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProperties_STATUS, BackendProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProperties_STATUS runs a test to see if a specific instance of BackendProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProperties_STATUS(subject BackendProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProperties_STATUS instances for property testing - lazily instantiated by +// BackendProperties_STATUSGenerator() +var backendProperties_STATUSGenerator gopter.Gen + +// BackendProperties_STATUSGenerator returns a generator of BackendProperties_STATUS instances for property testing. +func BackendProperties_STATUSGenerator() gopter.Gen { + if backendProperties_STATUSGenerator != nil { + return backendProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForBackendProperties_STATUS(generators) + backendProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendProperties_STATUS{}), generators) + + return backendProperties_STATUSGenerator +} + +// AddRelatedPropertyGeneratorsForBackendProperties_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendProperties_STATUS(gens map[string]gopter.Gen) { + gens["ServiceFabricCluster"] = gen.PtrOf(BackendServiceFabricClusterProperties_STATUSGenerator()) +} + +func Test_BackendProxyContract_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProxyContract via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProxyContract, BackendProxyContractGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProxyContract runs a test to see if a specific instance of BackendProxyContract round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProxyContract(subject BackendProxyContract) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProxyContract + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProxyContract instances for property testing - lazily instantiated by +// BackendProxyContractGenerator() +var backendProxyContractGenerator gopter.Gen + +// BackendProxyContractGenerator returns a generator of BackendProxyContract instances for property testing. +func BackendProxyContractGenerator() gopter.Gen { + if backendProxyContractGenerator != nil { + return backendProxyContractGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendProxyContract(generators) + backendProxyContractGenerator = gen.Struct(reflect.TypeOf(BackendProxyContract{}), generators) + + return backendProxyContractGenerator +} + +// AddIndependentPropertyGeneratorsForBackendProxyContract is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendProxyContract(gens map[string]gopter.Gen) { + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Username"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendProxyContract_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendProxyContract_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendProxyContract_STATUS, BackendProxyContract_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendProxyContract_STATUS runs a test to see if a specific instance of BackendProxyContract_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendProxyContract_STATUS(subject BackendProxyContract_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendProxyContract_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendProxyContract_STATUS instances for property testing - lazily instantiated by +// BackendProxyContract_STATUSGenerator() +var backendProxyContract_STATUSGenerator gopter.Gen + +// BackendProxyContract_STATUSGenerator returns a generator of BackendProxyContract_STATUS instances for property testing. +func BackendProxyContract_STATUSGenerator() gopter.Gen { + if backendProxyContract_STATUSGenerator != nil { + return backendProxyContract_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS(generators) + backendProxyContract_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendProxyContract_STATUS{}), generators) + + return backendProxyContract_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendProxyContract_STATUS(gens map[string]gopter.Gen) { + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Username"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendTlsProperties_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendTlsProperties via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendTlsProperties, BackendTlsPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendTlsProperties runs a test to see if a specific instance of BackendTlsProperties round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendTlsProperties(subject BackendTlsProperties) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendTlsProperties + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendTlsProperties instances for property testing - lazily instantiated by +// BackendTlsPropertiesGenerator() +var backendTlsPropertiesGenerator gopter.Gen + +// BackendTlsPropertiesGenerator returns a generator of BackendTlsProperties instances for property testing. +func BackendTlsPropertiesGenerator() gopter.Gen { + if backendTlsPropertiesGenerator != nil { + return backendTlsPropertiesGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendTlsProperties(generators) + backendTlsPropertiesGenerator = gen.Struct(reflect.TypeOf(BackendTlsProperties{}), generators) + + return backendTlsPropertiesGenerator +} + +// AddIndependentPropertyGeneratorsForBackendTlsProperties is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendTlsProperties(gens map[string]gopter.Gen) { + gens["ValidateCertificateChain"] = gen.PtrOf(gen.Bool()) + gens["ValidateCertificateName"] = gen.PtrOf(gen.Bool()) +} + +func Test_BackendTlsProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendTlsProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendTlsProperties_STATUS, BackendTlsProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendTlsProperties_STATUS runs a test to see if a specific instance of BackendTlsProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendTlsProperties_STATUS(subject BackendTlsProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendTlsProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendTlsProperties_STATUS instances for property testing - lazily instantiated by +// BackendTlsProperties_STATUSGenerator() +var backendTlsProperties_STATUSGenerator gopter.Gen + +// BackendTlsProperties_STATUSGenerator returns a generator of BackendTlsProperties_STATUS instances for property testing. +func BackendTlsProperties_STATUSGenerator() gopter.Gen { + if backendTlsProperties_STATUSGenerator != nil { + return backendTlsProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS(generators) + backendTlsProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendTlsProperties_STATUS{}), generators) + + return backendTlsProperties_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendTlsProperties_STATUS(gens map[string]gopter.Gen) { + gens["ValidateCertificateChain"] = gen.PtrOf(gen.Bool()) + gens["ValidateCertificateName"] = gen.PtrOf(gen.Bool()) +} + +func Test_BackendAuthorizationHeaderCredentials_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendAuthorizationHeaderCredentials via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendAuthorizationHeaderCredentials, BackendAuthorizationHeaderCredentialsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendAuthorizationHeaderCredentials runs a test to see if a specific instance of BackendAuthorizationHeaderCredentials round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendAuthorizationHeaderCredentials(subject BackendAuthorizationHeaderCredentials) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendAuthorizationHeaderCredentials + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendAuthorizationHeaderCredentials instances for property testing - lazily instantiated by +// BackendAuthorizationHeaderCredentialsGenerator() +var backendAuthorizationHeaderCredentialsGenerator gopter.Gen + +// BackendAuthorizationHeaderCredentialsGenerator returns a generator of BackendAuthorizationHeaderCredentials instances for property testing. +func BackendAuthorizationHeaderCredentialsGenerator() gopter.Gen { + if backendAuthorizationHeaderCredentialsGenerator != nil { + return backendAuthorizationHeaderCredentialsGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials(generators) + backendAuthorizationHeaderCredentialsGenerator = gen.Struct(reflect.TypeOf(BackendAuthorizationHeaderCredentials{}), generators) + + return backendAuthorizationHeaderCredentialsGenerator +} + +// AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials(gens map[string]gopter.Gen) { + gens["Parameter"] = gen.PtrOf(gen.AlphaString()) + gens["Scheme"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendAuthorizationHeaderCredentials_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendAuthorizationHeaderCredentials_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS, BackendAuthorizationHeaderCredentials_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS runs a test to see if a specific instance of BackendAuthorizationHeaderCredentials_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendAuthorizationHeaderCredentials_STATUS(subject BackendAuthorizationHeaderCredentials_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendAuthorizationHeaderCredentials_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendAuthorizationHeaderCredentials_STATUS instances for property testing - lazily instantiated by +// BackendAuthorizationHeaderCredentials_STATUSGenerator() +var backendAuthorizationHeaderCredentials_STATUSGenerator gopter.Gen + +// BackendAuthorizationHeaderCredentials_STATUSGenerator returns a generator of BackendAuthorizationHeaderCredentials_STATUS instances for property testing. +func BackendAuthorizationHeaderCredentials_STATUSGenerator() gopter.Gen { + if backendAuthorizationHeaderCredentials_STATUSGenerator != nil { + return backendAuthorizationHeaderCredentials_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS(generators) + backendAuthorizationHeaderCredentials_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendAuthorizationHeaderCredentials_STATUS{}), generators) + + return backendAuthorizationHeaderCredentials_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendAuthorizationHeaderCredentials_STATUS(gens map[string]gopter.Gen) { + gens["Parameter"] = gen.PtrOf(gen.AlphaString()) + gens["Scheme"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_BackendServiceFabricClusterProperties_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendServiceFabricClusterProperties via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendServiceFabricClusterProperties, BackendServiceFabricClusterPropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendServiceFabricClusterProperties runs a test to see if a specific instance of BackendServiceFabricClusterProperties round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendServiceFabricClusterProperties(subject BackendServiceFabricClusterProperties) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendServiceFabricClusterProperties + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendServiceFabricClusterProperties instances for property testing - lazily instantiated by +// BackendServiceFabricClusterPropertiesGenerator() +var backendServiceFabricClusterPropertiesGenerator gopter.Gen + +// BackendServiceFabricClusterPropertiesGenerator returns a generator of BackendServiceFabricClusterProperties instances for property testing. +// We first initialize backendServiceFabricClusterPropertiesGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendServiceFabricClusterPropertiesGenerator() gopter.Gen { + if backendServiceFabricClusterPropertiesGenerator != nil { + return backendServiceFabricClusterPropertiesGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties(generators) + backendServiceFabricClusterPropertiesGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties(generators) + AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties(generators) + backendServiceFabricClusterPropertiesGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties{}), generators) + + return backendServiceFabricClusterPropertiesGenerator +} + +// AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties(gens map[string]gopter.Gen) { + gens["ClientCertificateId"] = gen.PtrOf(gen.AlphaString()) + gens["ClientCertificatethumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["ManagementEndpoints"] = gen.SliceOf(gen.AlphaString()) + gens["MaxPartitionResolutionRetries"] = gen.PtrOf(gen.Int()) + gens["ServerCertificateThumbprints"] = gen.SliceOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties(gens map[string]gopter.Gen) { + gens["ServerX509Names"] = gen.SliceOf(X509CertificateNameGenerator()) +} + +func Test_BackendServiceFabricClusterProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of BackendServiceFabricClusterProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS, BackendServiceFabricClusterProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS runs a test to see if a specific instance of BackendServiceFabricClusterProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackendServiceFabricClusterProperties_STATUS(subject BackendServiceFabricClusterProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual BackendServiceFabricClusterProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of BackendServiceFabricClusterProperties_STATUS instances for property testing - lazily instantiated by +// BackendServiceFabricClusterProperties_STATUSGenerator() +var backendServiceFabricClusterProperties_STATUSGenerator gopter.Gen + +// BackendServiceFabricClusterProperties_STATUSGenerator returns a generator of BackendServiceFabricClusterProperties_STATUS instances for property testing. +// We first initialize backendServiceFabricClusterProperties_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func BackendServiceFabricClusterProperties_STATUSGenerator() gopter.Gen { + if backendServiceFabricClusterProperties_STATUSGenerator != nil { + return backendServiceFabricClusterProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(generators) + backendServiceFabricClusterProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(generators) + AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(generators) + backendServiceFabricClusterProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(BackendServiceFabricClusterProperties_STATUS{}), generators) + + return backendServiceFabricClusterProperties_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(gens map[string]gopter.Gen) { + gens["ClientCertificateId"] = gen.PtrOf(gen.AlphaString()) + gens["ClientCertificatethumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["ManagementEndpoints"] = gen.SliceOf(gen.AlphaString()) + gens["MaxPartitionResolutionRetries"] = gen.PtrOf(gen.Int()) + gens["ServerCertificateThumbprints"] = gen.SliceOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForBackendServiceFabricClusterProperties_STATUS(gens map[string]gopter.Gen) { + gens["ServerX509Names"] = gen.SliceOf(X509CertificateName_STATUSGenerator()) +} + +func Test_X509CertificateName_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of X509CertificateName via JSON returns original", + prop.ForAll(RunJSONSerializationTestForX509CertificateName, X509CertificateNameGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForX509CertificateName runs a test to see if a specific instance of X509CertificateName round trips to JSON and back losslessly +func RunJSONSerializationTestForX509CertificateName(subject X509CertificateName) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual X509CertificateName + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of X509CertificateName instances for property testing - lazily instantiated by +// X509CertificateNameGenerator() +var x509CertificateNameGenerator gopter.Gen + +// X509CertificateNameGenerator returns a generator of X509CertificateName instances for property testing. +func X509CertificateNameGenerator() gopter.Gen { + if x509CertificateNameGenerator != nil { + return x509CertificateNameGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForX509CertificateName(generators) + x509CertificateNameGenerator = gen.Struct(reflect.TypeOf(X509CertificateName{}), generators) + + return x509CertificateNameGenerator +} + +// AddIndependentPropertyGeneratorsForX509CertificateName is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForX509CertificateName(gens map[string]gopter.Gen) { + gens["IssuerCertificateThumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_X509CertificateName_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of X509CertificateName_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForX509CertificateName_STATUS, X509CertificateName_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForX509CertificateName_STATUS runs a test to see if a specific instance of X509CertificateName_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForX509CertificateName_STATUS(subject X509CertificateName_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual X509CertificateName_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of X509CertificateName_STATUS instances for property testing - lazily instantiated by +// X509CertificateName_STATUSGenerator() +var x509CertificateName_STATUSGenerator gopter.Gen + +// X509CertificateName_STATUSGenerator returns a generator of X509CertificateName_STATUS instances for property testing. +func X509CertificateName_STATUSGenerator() gopter.Gen { + if x509CertificateName_STATUSGenerator != nil { + return x509CertificateName_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForX509CertificateName_STATUS(generators) + x509CertificateName_STATUSGenerator = gen.Struct(reflect.TypeOf(X509CertificateName_STATUS{}), generators) + + return x509CertificateName_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForX509CertificateName_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForX509CertificateName_STATUS(gens map[string]gopter.Gen) { + gens["IssuerCertificateThumbprint"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801storage/named_value_types_gen.go b/v2/api/apimanagement/v1api20220801storage/named_value_types_gen.go new file mode 100644 index 00000000000..3f203663d61 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801storage/named_value_types_gen.go @@ -0,0 +1,237 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801storage + +import ( + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// +kubebuilder:rbac:groups=apimanagement.azure.com,resources=namedvalues,verbs=get;list;watch;create;update;patch;delete +// +kubebuilder:rbac:groups=apimanagement.azure.com,resources={namedvalues/status,namedvalues/finalizers},verbs=get;update;patch + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:storageversion +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Storage version of v1api20220801.NamedValue +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimnamedvalues.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId} +type NamedValue struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec Service_NamedValue_Spec `json:"spec,omitempty"` + Status Service_NamedValue_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &NamedValue{} + +// GetConditions returns the conditions of the resource +func (value *NamedValue) GetConditions() conditions.Conditions { + return value.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (value *NamedValue) SetConditions(conditions conditions.Conditions) { + value.Status.Conditions = conditions +} + +var _ genruntime.KubernetesResource = &NamedValue{} + +// AzureName returns the Azure name of the resource +func (value *NamedValue) AzureName() string { + return value.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (value NamedValue) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (value *NamedValue) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (value *NamedValue) GetSpec() genruntime.ConvertibleSpec { + return &value.Spec +} + +// GetStatus returns the status of this resource +func (value *NamedValue) GetStatus() genruntime.ConvertibleStatus { + return &value.Status +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/namedValues" +func (value *NamedValue) GetType() string { + return "Microsoft.ApiManagement/service/namedValues" +} + +// NewEmptyStatus returns a new empty (blank) status +func (value *NamedValue) NewEmptyStatus() genruntime.ConvertibleStatus { + return &Service_NamedValue_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (value *NamedValue) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(value.Spec) + return value.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (value *NamedValue) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*Service_NamedValue_STATUS); ok { + value.Status = *st + return nil + } + + // Convert status to required version + var st Service_NamedValue_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + value.Status = st + return nil +} + +// Hub marks that this NamedValue is the hub type for conversion +func (value *NamedValue) Hub() {} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (value *NamedValue) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: value.Spec.OriginalVersion, + Kind: "NamedValue", + } +} + +// +kubebuilder:object:root=true +// Storage version of v1api20220801.NamedValue +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimnamedvalues.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId} +type NamedValueList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []NamedValue `json:"items"` +} + +// Storage version of v1api20220801.Service_NamedValue_Spec +type Service_NamedValue_Spec struct { + // +kubebuilder:validation:MaxLength=256 + // +kubebuilder:validation:Pattern="^[^*#&+:<>?]+$" + // AzureName: The name of the resource in Azure. This is often the same as the name of the resource in Kubernetes but it + // doesn't have to be. + AzureName string `json:"azureName,omitempty"` + DisplayName *string `json:"displayName,omitempty"` + KeyVault *KeyVaultContractCreateProperties `json:"keyVault,omitempty"` + OriginalVersion string `json:"originalVersion,omitempty"` + + // +kubebuilder:validation:Required + // Owner: The owner of the resource. The owner controls where the resource goes when it is deployed. The owner also + // controls the resources lifecycle. When the owner is deleted the resource will also be deleted. Owner is expected to be a + // reference to a apimanagement.azure.com/Service resource + Owner *genruntime.KnownResourceReference `group:"apimanagement.azure.com" json:"owner,omitempty" kind:"Service"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Secret *bool `json:"secret,omitempty"` + Tags []string `json:"tags,omitempty"` + Value *string `json:"value,omitempty"` +} + +var _ genruntime.ConvertibleSpec = &Service_NamedValue_Spec{} + +// ConvertSpecFrom populates our Service_NamedValue_Spec from the provided source +func (value *Service_NamedValue_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + if source == value { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec") + } + + return source.ConvertSpecTo(value) +} + +// ConvertSpecTo populates the provided destination from our Service_NamedValue_Spec +func (value *Service_NamedValue_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + if destination == value { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec") + } + + return destination.ConvertSpecFrom(value) +} + +// Storage version of v1api20220801.Service_NamedValue_STATUS +type Service_NamedValue_STATUS struct { + Conditions []conditions.Condition `json:"conditions,omitempty"` + DisplayName *string `json:"displayName,omitempty"` + Id *string `json:"id,omitempty"` + KeyVault *KeyVaultContractProperties_STATUS `json:"keyVault,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Secret *bool `json:"secret,omitempty"` + Tags []string `json:"tags,omitempty"` + Type *string `json:"type,omitempty"` + Value *string `json:"value,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &Service_NamedValue_STATUS{} + +// ConvertStatusFrom populates our Service_NamedValue_STATUS from the provided source +func (value *Service_NamedValue_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + if source == value { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus") + } + + return source.ConvertStatusTo(value) +} + +// ConvertStatusTo populates the provided destination from our Service_NamedValue_STATUS +func (value *Service_NamedValue_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + if destination == value { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus") + } + + return destination.ConvertStatusFrom(value) +} + +// Storage version of v1api20220801.KeyVaultContractCreateProperties +// Create keyVault contract details. +type KeyVaultContractCreateProperties struct { + IdentityClientId *string `json:"identityClientId,omitempty" optionalConfigMapPair:"IdentityClientId"` + IdentityClientIdFromConfig *genruntime.ConfigMapReference `json:"identityClientIdFromConfig,omitempty" optionalConfigMapPair:"IdentityClientId"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + SecretIdentifier *string `json:"secretIdentifier,omitempty"` +} + +// Storage version of v1api20220801.KeyVaultContractProperties_STATUS +// KeyVault contract details. +type KeyVaultContractProperties_STATUS struct { + IdentityClientId *string `json:"identityClientId,omitempty"` + LastStatus *KeyVaultLastAccessStatusContractProperties_STATUS `json:"lastStatus,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + SecretIdentifier *string `json:"secretIdentifier,omitempty"` +} + +// Storage version of v1api20220801.KeyVaultLastAccessStatusContractProperties_STATUS +// Issue contract Update Properties. +type KeyVaultLastAccessStatusContractProperties_STATUS struct { + Code *string `json:"code,omitempty"` + Message *string `json:"message,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + TimeStampUtc *string `json:"timeStampUtc,omitempty"` +} + +func init() { + SchemeBuilder.Register(&NamedValue{}, &NamedValueList{}) +} diff --git a/v2/api/apimanagement/v1api20220801storage/named_value_types_gen_test.go b/v2/api/apimanagement/v1api20220801storage/named_value_types_gen_test.go new file mode 100644 index 00000000000..c44801365f7 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801storage/named_value_types_gen_test.go @@ -0,0 +1,441 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801storage + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_NamedValue_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 20 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of NamedValue via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNamedValue, NamedValueGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNamedValue runs a test to see if a specific instance of NamedValue round trips to JSON and back losslessly +func RunJSONSerializationTestForNamedValue(subject NamedValue) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NamedValue + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of NamedValue instances for property testing - lazily instantiated by NamedValueGenerator() +var namedValueGenerator gopter.Gen + +// NamedValueGenerator returns a generator of NamedValue instances for property testing. +func NamedValueGenerator() gopter.Gen { + if namedValueGenerator != nil { + return namedValueGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForNamedValue(generators) + namedValueGenerator = gen.Struct(reflect.TypeOf(NamedValue{}), generators) + + return namedValueGenerator +} + +// AddRelatedPropertyGeneratorsForNamedValue is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNamedValue(gens map[string]gopter.Gen) { + gens["Spec"] = Service_NamedValue_SpecGenerator() + gens["Status"] = Service_NamedValue_STATUSGenerator() +} + +func Test_Service_NamedValue_Spec_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_NamedValue_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_NamedValue_Spec, Service_NamedValue_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_NamedValue_Spec runs a test to see if a specific instance of Service_NamedValue_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForService_NamedValue_Spec(subject Service_NamedValue_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_NamedValue_Spec + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_NamedValue_Spec instances for property testing - lazily instantiated by +// Service_NamedValue_SpecGenerator() +var service_NamedValue_SpecGenerator gopter.Gen + +// Service_NamedValue_SpecGenerator returns a generator of Service_NamedValue_Spec instances for property testing. +// We first initialize service_NamedValue_SpecGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_NamedValue_SpecGenerator() gopter.Gen { + if service_NamedValue_SpecGenerator != nil { + return service_NamedValue_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_Spec(generators) + service_NamedValue_SpecGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_Spec{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_Spec(generators) + AddRelatedPropertyGeneratorsForService_NamedValue_Spec(generators) + service_NamedValue_SpecGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_Spec{}), generators) + + return service_NamedValue_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForService_NamedValue_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_NamedValue_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["OriginalVersion"] = gen.AlphaString() + gens["Secret"] = gen.PtrOf(gen.Bool()) + gens["Tags"] = gen.SliceOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_NamedValue_Spec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_NamedValue_Spec(gens map[string]gopter.Gen) { + gens["KeyVault"] = gen.PtrOf(KeyVaultContractCreatePropertiesGenerator()) +} + +func Test_Service_NamedValue_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_NamedValue_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_NamedValue_STATUS, Service_NamedValue_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_NamedValue_STATUS runs a test to see if a specific instance of Service_NamedValue_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForService_NamedValue_STATUS(subject Service_NamedValue_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_NamedValue_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_NamedValue_STATUS instances for property testing - lazily instantiated by +// Service_NamedValue_STATUSGenerator() +var service_NamedValue_STATUSGenerator gopter.Gen + +// Service_NamedValue_STATUSGenerator returns a generator of Service_NamedValue_STATUS instances for property testing. +// We first initialize service_NamedValue_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func Service_NamedValue_STATUSGenerator() gopter.Gen { + if service_NamedValue_STATUSGenerator != nil { + return service_NamedValue_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_STATUS(generators) + service_NamedValue_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_NamedValue_STATUS(generators) + AddRelatedPropertyGeneratorsForService_NamedValue_STATUS(generators) + service_NamedValue_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_NamedValue_STATUS{}), generators) + + return service_NamedValue_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForService_NamedValue_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_NamedValue_STATUS(gens map[string]gopter.Gen) { + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Secret"] = gen.PtrOf(gen.Bool()) + gens["Tags"] = gen.SliceOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForService_NamedValue_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForService_NamedValue_STATUS(gens map[string]gopter.Gen) { + gens["KeyVault"] = gen.PtrOf(KeyVaultContractProperties_STATUSGenerator()) +} + +func Test_KeyVaultContractCreateProperties_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultContractCreateProperties via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultContractCreateProperties, KeyVaultContractCreatePropertiesGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultContractCreateProperties runs a test to see if a specific instance of KeyVaultContractCreateProperties round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultContractCreateProperties(subject KeyVaultContractCreateProperties) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultContractCreateProperties + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultContractCreateProperties instances for property testing - lazily instantiated by +// KeyVaultContractCreatePropertiesGenerator() +var keyVaultContractCreatePropertiesGenerator gopter.Gen + +// KeyVaultContractCreatePropertiesGenerator returns a generator of KeyVaultContractCreateProperties instances for property testing. +func KeyVaultContractCreatePropertiesGenerator() gopter.Gen { + if keyVaultContractCreatePropertiesGenerator != nil { + return keyVaultContractCreatePropertiesGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties(generators) + keyVaultContractCreatePropertiesGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractCreateProperties{}), generators) + + return keyVaultContractCreatePropertiesGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultContractCreateProperties(gens map[string]gopter.Gen) { + gens["IdentityClientId"] = gen.PtrOf(gen.AlphaString()) + gens["SecretIdentifier"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_KeyVaultContractProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultContractProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultContractProperties_STATUS, KeyVaultContractProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultContractProperties_STATUS runs a test to see if a specific instance of KeyVaultContractProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultContractProperties_STATUS(subject KeyVaultContractProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultContractProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultContractProperties_STATUS instances for property testing - lazily instantiated by +// KeyVaultContractProperties_STATUSGenerator() +var keyVaultContractProperties_STATUSGenerator gopter.Gen + +// KeyVaultContractProperties_STATUSGenerator returns a generator of KeyVaultContractProperties_STATUS instances for property testing. +// We first initialize keyVaultContractProperties_STATUSGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func KeyVaultContractProperties_STATUSGenerator() gopter.Gen { + if keyVaultContractProperties_STATUSGenerator != nil { + return keyVaultContractProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS(generators) + keyVaultContractProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractProperties_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS(generators) + AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS(generators) + keyVaultContractProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(KeyVaultContractProperties_STATUS{}), generators) + + return keyVaultContractProperties_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultContractProperties_STATUS(gens map[string]gopter.Gen) { + gens["IdentityClientId"] = gen.PtrOf(gen.AlphaString()) + gens["SecretIdentifier"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForKeyVaultContractProperties_STATUS(gens map[string]gopter.Gen) { + gens["LastStatus"] = gen.PtrOf(KeyVaultLastAccessStatusContractProperties_STATUSGenerator()) +} + +func Test_KeyVaultLastAccessStatusContractProperties_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of KeyVaultLastAccessStatusContractProperties_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS, KeyVaultLastAccessStatusContractProperties_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS runs a test to see if a specific instance of KeyVaultLastAccessStatusContractProperties_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForKeyVaultLastAccessStatusContractProperties_STATUS(subject KeyVaultLastAccessStatusContractProperties_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual KeyVaultLastAccessStatusContractProperties_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of KeyVaultLastAccessStatusContractProperties_STATUS instances for property testing - lazily instantiated +// by KeyVaultLastAccessStatusContractProperties_STATUSGenerator() +var keyVaultLastAccessStatusContractProperties_STATUSGenerator gopter.Gen + +// KeyVaultLastAccessStatusContractProperties_STATUSGenerator returns a generator of KeyVaultLastAccessStatusContractProperties_STATUS instances for property testing. +func KeyVaultLastAccessStatusContractProperties_STATUSGenerator() gopter.Gen { + if keyVaultLastAccessStatusContractProperties_STATUSGenerator != nil { + return keyVaultLastAccessStatusContractProperties_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS(generators) + keyVaultLastAccessStatusContractProperties_STATUSGenerator = gen.Struct(reflect.TypeOf(KeyVaultLastAccessStatusContractProperties_STATUS{}), generators) + + return keyVaultLastAccessStatusContractProperties_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForKeyVaultLastAccessStatusContractProperties_STATUS(gens map[string]gopter.Gen) { + gens["Code"] = gen.PtrOf(gen.AlphaString()) + gens["Message"] = gen.PtrOf(gen.AlphaString()) + gens["TimeStampUtc"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801storage/service_types_gen.go b/v2/api/apimanagement/v1api20220801storage/service_types_gen.go index 2c8bc5605dd..95329a545de 100644 --- a/v2/api/apimanagement/v1api20220801storage/service_types_gen.go +++ b/v2/api/apimanagement/v1api20220801storage/service_types_gen.go @@ -129,12 +129,6 @@ type ServiceList struct { Items []Service `json:"items"` } -// Storage version of v1api20220801.APIVersion -// +kubebuilder:validation:Enum={"2022-08-01"} -type APIVersion string - -const APIVersion_Value = APIVersion("2022-08-01") - // Storage version of v1api20220801.Service_Spec type Service_Spec struct { AdditionalLocations []AdditionalLocation `json:"additionalLocations,omitempty"` diff --git a/v2/api/apimanagement/v1api20220801storage/structure.txt b/v2/api/apimanagement/v1api20220801storage/structure.txt index 2720b8e7627..10e9ebd17af 100644 --- a/v2/api/apimanagement/v1api20220801storage/structure.txt +++ b/v2/api/apimanagement/v1api20220801storage/structure.txt @@ -2,215 +2,373 @@ github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801storage ├── APIVersion: Enum (1 value) │ └── "2022-08-01" -└── Service: Resource - ├── Owner: github.com/Azure/azure-service-operator/v2/api/resources/v1apiv20191001.ResourceGroup - ├── Spec: Object (25 properties) - │ ├── AdditionalLocations: Object (8 properties)[] - │ │ ├── DisableGateway: *bool - │ │ ├── Location: *string - │ │ ├── NatGatewayState: *string - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ ├── PublicIpAddressReference: *genruntime.ResourceReference - │ │ ├── Sku: *Object (3 properties) - │ │ │ ├── Capacity: *int - │ │ │ ├── Name: *string - │ │ │ └── PropertyBag: genruntime.PropertyBag - │ │ ├── VirtualNetworkConfiguration: *Object (2 properties) - │ │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ │ └── SubnetResourceReference: *genruntime.ResourceReference - │ │ └── Zones: string[] - │ ├── ApiVersionConstraint: *Object (2 properties) - │ │ ├── MinApiVersion: *string - │ │ └── PropertyBag: genruntime.PropertyBag - │ ├── AzureName: Validated (3 rules) - │ │ ├── Rule 0: MaxLength: 50 - │ │ ├── Rule 1: MinLength: 1 - │ │ └── Rule 2: Pattern: "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$" - │ ├── Certificates: Object (5 properties)[] - │ │ ├── Certificate: *Object (7 properties) - │ │ │ ├── Expiry: *string - │ │ │ ├── ExpiryFromConfig: *genruntime.ConfigMapReference - │ │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ │ ├── Subject: *string - │ │ │ ├── SubjectFromConfig: *genruntime.ConfigMapReference - │ │ │ ├── Thumbprint: *string - │ │ │ └── ThumbprintFromConfig: *genruntime.ConfigMapReference - │ │ ├── CertificatePassword: *genruntime.SecretReference - │ │ ├── EncodedCertificate: *string - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ └── StoreName: *string - │ ├── CustomProperties: map[string]string - │ ├── DisableGateway: *bool - │ ├── EnableClientCertificate: *bool - │ ├── HostnameConfigurations: Object (13 properties)[] - │ │ ├── Certificate: *Object (7 properties) - │ │ │ ├── Expiry: *string - │ │ │ ├── ExpiryFromConfig: *genruntime.ConfigMapReference - │ │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ │ ├── Subject: *string - │ │ │ ├── SubjectFromConfig: *genruntime.ConfigMapReference - │ │ │ ├── Thumbprint: *string - │ │ │ └── ThumbprintFromConfig: *genruntime.ConfigMapReference - │ │ ├── CertificatePassword: *genruntime.SecretReference - │ │ ├── CertificateSource: *string - │ │ ├── CertificateStatus: *string - │ │ ├── DefaultSslBinding: *bool - │ │ ├── EncodedCertificate: *string - │ │ ├── HostName: *string - │ │ ├── IdentityClientId: *string - │ │ ├── IdentityClientIdFromConfig: *genruntime.ConfigMapReference - │ │ ├── KeyVaultId: *string - │ │ ├── NegotiateClientCertificate: *bool - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ └── Type: *string - │ ├── Identity: *Object (3 properties) - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ ├── Type: *string - │ │ └── UserAssignedIdentities: Object (2 properties)[] - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ └── Reference: genruntime.ResourceReference - │ ├── Location: *string - │ ├── NatGatewayState: *string - │ ├── NotificationSenderEmail: *string +├── Backend: Resource +│ ├── Owner: github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801.Service +│ ├── Spec: Object (13 properties) +│ │ ├── AzureName: Validated (2 rules) +│ │ │ ├── Rule 0: MaxLength: 80 +│ │ │ └── Rule 1: MinLength: 1 +│ │ ├── Credentials: *Object (6 properties) +│ │ │ ├── Authorization: *Object (3 properties) +│ │ │ │ ├── Parameter: *string +│ │ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ │ └── Scheme: *string +│ │ │ ├── Certificate: string[] +│ │ │ ├── CertificateIds: string[] +│ │ │ ├── Header: map[string]string[] +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Query: map[string]string[] +│ │ ├── Description: *string +│ │ ├── OriginalVersion: string +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── Properties: *Object (2 properties) +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── ServiceFabricCluster: *Object (7 properties) +│ │ │ ├── ClientCertificateId: *string +│ │ │ ├── ClientCertificatethumbprint: *string +│ │ │ ├── ManagementEndpoints: string[] +│ │ │ ├── MaxPartitionResolutionRetries: *int +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── ServerCertificateThumbprints: string[] +│ │ │ └── ServerX509Names: Object (3 properties)[] +│ │ │ ├── IssuerCertificateThumbprint: *string +│ │ │ ├── Name: *string +│ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── Protocol: *string +│ │ ├── Proxy: *Object (4 properties) +│ │ │ ├── Password: *genruntime.SecretReference +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── Url: *string +│ │ │ └── Username: *string +│ │ ├── ResourceReference: *genruntime.ResourceReference +│ │ ├── Title: *string +│ │ ├── Tls: *Object (3 properties) +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── ValidateCertificateChain: *bool +│ │ │ └── ValidateCertificateName: *bool +│ │ └── Url: *string +│ └── Status: Object (14 properties) +│ ├── Conditions: conditions.Condition[] +│ ├── Credentials: *Object (6 properties) +│ │ ├── Authorization: *Object (3 properties) +│ │ │ ├── Parameter: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Scheme: *string +│ │ ├── Certificate: string[] +│ │ ├── CertificateIds: string[] +│ │ ├── Header: map[string]string[] +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── Query: map[string]string[] +│ ├── Description: *string +│ ├── Id: *string +│ ├── Name: *string +│ ├── Properties: *Object (2 properties) +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── ServiceFabricCluster: *Object (7 properties) +│ │ ├── ClientCertificateId: *string +│ │ ├── ClientCertificatethumbprint: *string +│ │ ├── ManagementEndpoints: string[] +│ │ ├── MaxPartitionResolutionRetries: *int +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── ServerCertificateThumbprints: string[] +│ │ └── ServerX509Names: Object (3 properties)[] +│ │ ├── IssuerCertificateThumbprint: *string +│ │ ├── Name: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── PropertyBag: genruntime.PropertyBag +│ ├── Protocol: *string +│ ├── Proxy: *Object (3 properties) +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── Url: *string +│ │ └── Username: *string +│ ├── ResourceId: *string +│ ├── Title: *string +│ ├── Tls: *Object (3 properties) +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── ValidateCertificateChain: *bool +│ │ └── ValidateCertificateName: *bool +│ ├── Type: *string +│ └── Url: *string +├── NamedValue: Resource +│ ├── Owner: github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801.Service +│ ├── Spec: Object (9 properties) +│ │ ├── AzureName: Validated (2 rules) +│ │ │ ├── Rule 0: MaxLength: 256 +│ │ │ └── Rule 1: Pattern: "^[^*#&+:<>?]+$" +│ │ ├── DisplayName: *string +│ │ ├── KeyVault: *Object (4 properties) +│ │ │ ├── IdentityClientId: *string +│ │ │ ├── IdentityClientIdFromConfig: *genruntime.ConfigMapReference +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── SecretIdentifier: *string +│ │ ├── OriginalVersion: string +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── Secret: *bool +│ │ ├── Tags: string[] +│ │ └── Value: *string +│ └── Status: Object (10 properties) +│ ├── Conditions: conditions.Condition[] +│ ├── DisplayName: *string +│ ├── Id: *string +│ ├── KeyVault: *Object (4 properties) +│ │ ├── IdentityClientId: *string +│ │ ├── LastStatus: *Object (4 properties) +│ │ │ ├── Code: *string +│ │ │ ├── Message: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── TimeStampUtc: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── SecretIdentifier: *string +│ ├── Name: *string +│ ├── PropertyBag: genruntime.PropertyBag +│ ├── Secret: *bool +│ ├── Tags: string[] +│ ├── Type: *string +│ └── Value: *string +├── Service: Resource +│ ├── Owner: github.com/Azure/azure-service-operator/v2/api/resources/v1apiv20191001.ResourceGroup +│ ├── Spec: Object (25 properties) +│ │ ├── AdditionalLocations: Object (8 properties)[] +│ │ │ ├── DisableGateway: *bool +│ │ │ ├── Location: *string +│ │ │ ├── NatGatewayState: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── PublicIpAddressReference: *genruntime.ResourceReference +│ │ │ ├── Sku: *Object (3 properties) +│ │ │ │ ├── Capacity: *int +│ │ │ │ ├── Name: *string +│ │ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ │ ├── VirtualNetworkConfiguration: *Object (2 properties) +│ │ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ │ └── SubnetResourceReference: *genruntime.ResourceReference +│ │ │ └── Zones: string[] +│ │ ├── ApiVersionConstraint: *Object (2 properties) +│ │ │ ├── MinApiVersion: *string +│ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ ├── AzureName: Validated (3 rules) +│ │ │ ├── Rule 0: MaxLength: 50 +│ │ │ ├── Rule 1: MinLength: 1 +│ │ │ └── Rule 2: Pattern: "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$" +│ │ ├── Certificates: Object (5 properties)[] +│ │ │ ├── Certificate: *Object (7 properties) +│ │ │ │ ├── Expiry: *string +│ │ │ │ ├── ExpiryFromConfig: *genruntime.ConfigMapReference +│ │ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ │ ├── Subject: *string +│ │ │ │ ├── SubjectFromConfig: *genruntime.ConfigMapReference +│ │ │ │ ├── Thumbprint: *string +│ │ │ │ └── ThumbprintFromConfig: *genruntime.ConfigMapReference +│ │ │ ├── CertificatePassword: *genruntime.SecretReference +│ │ │ ├── EncodedCertificate: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── StoreName: *string +│ │ ├── CustomProperties: map[string]string +│ │ ├── DisableGateway: *bool +│ │ ├── EnableClientCertificate: *bool +│ │ ├── HostnameConfigurations: Object (13 properties)[] +│ │ │ ├── Certificate: *Object (7 properties) +│ │ │ │ ├── Expiry: *string +│ │ │ │ ├── ExpiryFromConfig: *genruntime.ConfigMapReference +│ │ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ │ ├── Subject: *string +│ │ │ │ ├── SubjectFromConfig: *genruntime.ConfigMapReference +│ │ │ │ ├── Thumbprint: *string +│ │ │ │ └── ThumbprintFromConfig: *genruntime.ConfigMapReference +│ │ │ ├── CertificatePassword: *genruntime.SecretReference +│ │ │ ├── CertificateSource: *string +│ │ │ ├── CertificateStatus: *string +│ │ │ ├── DefaultSslBinding: *bool +│ │ │ ├── EncodedCertificate: *string +│ │ │ ├── HostName: *string +│ │ │ ├── IdentityClientId: *string +│ │ │ ├── IdentityClientIdFromConfig: *genruntime.ConfigMapReference +│ │ │ ├── KeyVaultId: *string +│ │ │ ├── NegotiateClientCertificate: *bool +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Type: *string +│ │ ├── Identity: *Object (3 properties) +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── Type: *string +│ │ │ └── UserAssignedIdentities: Object (2 properties)[] +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Reference: genruntime.ResourceReference +│ │ ├── Location: *string +│ │ ├── NatGatewayState: *string +│ │ ├── NotificationSenderEmail: *string +│ │ ├── OriginalVersion: string +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── PublicIpAddressReference: *genruntime.ResourceReference +│ │ ├── PublicNetworkAccess: *string +│ │ ├── PublisherEmail: *string +│ │ ├── PublisherName: *string +│ │ ├── Restore: *bool +│ │ ├── Sku: *Object (3 properties) +│ │ │ ├── Capacity: *int +│ │ │ ├── Name: *string +│ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ ├── Tags: map[string]string +│ │ ├── VirtualNetworkConfiguration: *Object (2 properties) +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── SubnetResourceReference: *genruntime.ResourceReference +│ │ ├── VirtualNetworkType: *string +│ │ └── Zones: string[] +│ └── Status: Object (42 properties) +│ ├── AdditionalLocations: Object (13 properties)[] +│ │ ├── DisableGateway: *bool +│ │ ├── GatewayRegionalUrl: *string +│ │ ├── Location: *string +│ │ ├── NatGatewayState: *string +│ │ ├── OutboundPublicIPAddresses: string[] +│ │ ├── PlatformVersion: *string +│ │ ├── PrivateIPAddresses: string[] +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── PublicIPAddresses: string[] +│ │ ├── PublicIpAddressId: *string +│ │ ├── Sku: *Object (3 properties) +│ │ │ ├── Capacity: *int +│ │ │ ├── Name: *string +│ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ ├── VirtualNetworkConfiguration: *Object (4 properties) +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── SubnetResourceId: *string +│ │ │ ├── Subnetname: *string +│ │ │ └── Vnetid: *string +│ │ └── Zones: string[] +│ ├── ApiVersionConstraint: *Object (2 properties) +│ │ ├── MinApiVersion: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── Certificates: Object (4 properties)[] +│ │ ├── Certificate: *Object (4 properties) +│ │ │ ├── Expiry: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── Subject: *string +│ │ │ └── Thumbprint: *string +│ │ ├── EncodedCertificate: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── StoreName: *string +│ ├── Conditions: conditions.Condition[] +│ ├── CreatedAtUtc: *string +│ ├── CustomProperties: map[string]string +│ ├── DeveloperPortalUrl: *string +│ ├── DisableGateway: *bool +│ ├── EnableClientCertificate: *bool +│ ├── Etag: *string +│ ├── GatewayRegionalUrl: *string +│ ├── GatewayUrl: *string +│ ├── HostnameConfigurations: Object (11 properties)[] +│ │ ├── Certificate: *Object (4 properties) +│ │ │ ├── Expiry: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── Subject: *string +│ │ │ └── Thumbprint: *string +│ │ ├── CertificateSource: *string +│ │ ├── CertificateStatus: *string +│ │ ├── DefaultSslBinding: *bool +│ │ ├── EncodedCertificate: *string +│ │ ├── HostName: *string +│ │ ├── IdentityClientId: *string +│ │ ├── KeyVaultId: *string +│ │ ├── NegotiateClientCertificate: *bool +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── Type: *string +│ ├── Id: *string +│ ├── Identity: *Object (5 properties) +│ │ ├── PrincipalId: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── TenantId: *string +│ │ ├── Type: *string +│ │ └── UserAssignedIdentities: map[string]Object (3 properties) +│ │ ├── ClientId: *string +│ │ ├── PrincipalId: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── Location: *string +│ ├── ManagementApiUrl: *string +│ ├── Name: *string +│ ├── NatGatewayState: *string +│ ├── NotificationSenderEmail: *string +│ ├── OutboundPublicIPAddresses: string[] +│ ├── PlatformVersion: *string +│ ├── PortalUrl: *string +│ ├── PrivateEndpointConnections: Object (8 properties)[] +│ │ ├── GroupIds: string[] +│ │ ├── Id: *string +│ │ ├── Name: *string +│ │ ├── PrivateEndpoint: *Object (2 properties) +│ │ │ ├── Id: *string +│ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ ├── PrivateLinkServiceConnectionState: *Object (4 properties) +│ │ │ ├── ActionsRequired: *string +│ │ │ ├── Description: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Status: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── ProvisioningState: *string +│ │ └── Type: *string +│ ├── PrivateIPAddresses: string[] +│ ├── PropertyBag: genruntime.PropertyBag +│ ├── ProvisioningState: *string +│ ├── PublicIPAddresses: string[] +│ ├── PublicIpAddressId: *string +│ ├── PublicNetworkAccess: *string +│ ├── PublisherEmail: *string +│ ├── PublisherName: *string +│ ├── Restore: *bool +│ ├── ScmUrl: *string +│ ├── Sku: *Object (3 properties) +│ │ ├── Capacity: *int +│ │ ├── Name: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── SystemData: *Object (7 properties) +│ │ ├── CreatedAt: *string +│ │ ├── CreatedBy: *string +│ │ ├── CreatedByType: *string +│ │ ├── LastModifiedAt: *string +│ │ ├── LastModifiedBy: *string +│ │ ├── LastModifiedByType: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── Tags: map[string]string +│ ├── TargetProvisioningState: *string +│ ├── Type: *string +│ ├── VirtualNetworkConfiguration: *Object (4 properties) +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── SubnetResourceId: *string +│ │ ├── Subnetname: *string +│ │ └── Vnetid: *string +│ ├── VirtualNetworkType: *string +│ └── Zones: string[] +└── Subscription: Resource + ├── Owner: github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801.Service + ├── Spec: Object (11 properties) + │ ├── AllowTracing: *bool + │ ├── AzureName: Validated (2 rules) + │ │ ├── Rule 0: MaxLength: 256 + │ │ └── Rule 1: Pattern: "^[^*#&+:<>?]+$" + │ ├── DisplayName: *string │ ├── OriginalVersion: string │ ├── Owner: *genruntime.KnownResourceReference + │ ├── OwnerReference: *genruntime.ResourceReference + │ ├── PrimaryKey: *genruntime.SecretReference │ ├── PropertyBag: genruntime.PropertyBag - │ ├── PublicIpAddressReference: *genruntime.ResourceReference - │ ├── PublicNetworkAccess: *string - │ ├── PublisherEmail: *string - │ ├── PublisherName: *string - │ ├── Restore: *bool - │ ├── Sku: *Object (3 properties) - │ │ ├── Capacity: *int - │ │ ├── Name: *string - │ │ └── PropertyBag: genruntime.PropertyBag - │ ├── Tags: map[string]string - │ ├── VirtualNetworkConfiguration: *Object (2 properties) - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ └── SubnetResourceReference: *genruntime.ResourceReference - │ ├── VirtualNetworkType: *string - │ └── Zones: string[] - └── Status: Object (42 properties) - ├── AdditionalLocations: Object (13 properties)[] - │ ├── DisableGateway: *bool - │ ├── GatewayRegionalUrl: *string - │ ├── Location: *string - │ ├── NatGatewayState: *string - │ ├── OutboundPublicIPAddresses: string[] - │ ├── PlatformVersion: *string - │ ├── PrivateIPAddresses: string[] - │ ├── PropertyBag: genruntime.PropertyBag - │ ├── PublicIPAddresses: string[] - │ ├── PublicIpAddressId: *string - │ ├── Sku: *Object (3 properties) - │ │ ├── Capacity: *int - │ │ ├── Name: *string - │ │ └── PropertyBag: genruntime.PropertyBag - │ ├── VirtualNetworkConfiguration: *Object (4 properties) - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ ├── SubnetResourceId: *string - │ │ ├── Subnetname: *string - │ │ └── Vnetid: *string - │ └── Zones: string[] - ├── ApiVersionConstraint: *Object (2 properties) - │ ├── MinApiVersion: *string - │ └── PropertyBag: genruntime.PropertyBag - ├── Certificates: Object (4 properties)[] - │ ├── Certificate: *Object (4 properties) - │ │ ├── Expiry: *string - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ ├── Subject: *string - │ │ └── Thumbprint: *string - │ ├── EncodedCertificate: *string - │ ├── PropertyBag: genruntime.PropertyBag - │ └── StoreName: *string + │ ├── Scope: *string + │ ├── SecondaryKey: *genruntime.SecretReference + │ └── State: *string + └── Status: Object (16 properties) + ├── AllowTracing: *bool ├── Conditions: conditions.Condition[] - ├── CreatedAtUtc: *string - ├── CustomProperties: map[string]string - ├── DeveloperPortalUrl: *string - ├── DisableGateway: *bool - ├── EnableClientCertificate: *bool - ├── Etag: *string - ├── GatewayRegionalUrl: *string - ├── GatewayUrl: *string - ├── HostnameConfigurations: Object (11 properties)[] - │ ├── Certificate: *Object (4 properties) - │ │ ├── Expiry: *string - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ ├── Subject: *string - │ │ └── Thumbprint: *string - │ ├── CertificateSource: *string - │ ├── CertificateStatus: *string - │ ├── DefaultSslBinding: *bool - │ ├── EncodedCertificate: *string - │ ├── HostName: *string - │ ├── IdentityClientId: *string - │ ├── KeyVaultId: *string - │ ├── NegotiateClientCertificate: *bool - │ ├── PropertyBag: genruntime.PropertyBag - │ └── Type: *string + ├── CreatedDate: *string + ├── DisplayName: *string + ├── EndDate: *string + ├── ExpirationDate: *string ├── Id: *string - ├── Identity: *Object (5 properties) - │ ├── PrincipalId: *string - │ ├── PropertyBag: genruntime.PropertyBag - │ ├── TenantId: *string - │ ├── Type: *string - │ └── UserAssignedIdentities: map[string]Object (3 properties) - │ ├── ClientId: *string - │ ├── PrincipalId: *string - │ └── PropertyBag: genruntime.PropertyBag - ├── Location: *string - ├── ManagementApiUrl: *string ├── Name: *string - ├── NatGatewayState: *string - ├── NotificationSenderEmail: *string - ├── OutboundPublicIPAddresses: string[] - ├── PlatformVersion: *string - ├── PortalUrl: *string - ├── PrivateEndpointConnections: Object (8 properties)[] - │ ├── GroupIds: string[] - │ ├── Id: *string - │ ├── Name: *string - │ ├── PrivateEndpoint: *Object (2 properties) - │ │ ├── Id: *string - │ │ └── PropertyBag: genruntime.PropertyBag - │ ├── PrivateLinkServiceConnectionState: *Object (4 properties) - │ │ ├── ActionsRequired: *string - │ │ ├── Description: *string - │ │ ├── PropertyBag: genruntime.PropertyBag - │ │ └── Status: *string - │ ├── PropertyBag: genruntime.PropertyBag - │ ├── ProvisioningState: *string - │ └── Type: *string - ├── PrivateIPAddresses: string[] + ├── NotificationDate: *string + ├── OwnerId: *string ├── PropertyBag: genruntime.PropertyBag - ├── ProvisioningState: *string - ├── PublicIPAddresses: string[] - ├── PublicIpAddressId: *string - ├── PublicNetworkAccess: *string - ├── PublisherEmail: *string - ├── PublisherName: *string - ├── Restore: *bool - ├── ScmUrl: *string - ├── Sku: *Object (3 properties) - │ ├── Capacity: *int - │ ├── Name: *string - │ └── PropertyBag: genruntime.PropertyBag - ├── SystemData: *Object (7 properties) - │ ├── CreatedAt: *string - │ ├── CreatedBy: *string - │ ├── CreatedByType: *string - │ ├── LastModifiedAt: *string - │ ├── LastModifiedBy: *string - │ ├── LastModifiedByType: *string - │ └── PropertyBag: genruntime.PropertyBag - ├── Tags: map[string]string - ├── TargetProvisioningState: *string - ├── Type: *string - ├── VirtualNetworkConfiguration: *Object (4 properties) - │ ├── PropertyBag: genruntime.PropertyBag - │ ├── SubnetResourceId: *string - │ ├── Subnetname: *string - │ └── Vnetid: *string - ├── VirtualNetworkType: *string - └── Zones: string[] + ├── Scope: *string + ├── StartDate: *string + ├── State: *string + ├── StateComment: *string + └── Type: *string diff --git a/v2/api/apimanagement/v1api20220801storage/subscription_types_gen.go b/v2/api/apimanagement/v1api20220801storage/subscription_types_gen.go new file mode 100644 index 00000000000..1cd67fef8a1 --- /dev/null +++ b/v2/api/apimanagement/v1api20220801storage/subscription_types_gen.go @@ -0,0 +1,221 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801storage + +import ( + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// +kubebuilder:rbac:groups=apimanagement.azure.com,resources=subscriptions,verbs=get;list;watch;create;update;patch;delete +// +kubebuilder:rbac:groups=apimanagement.azure.com,resources={subscriptions/status,subscriptions/finalizers},verbs=get;update;patch + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:storageversion +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Storage version of v1api20220801.Subscription +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimsubscriptions.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid} +type Subscription struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec Service_Subscription_Spec `json:"spec,omitempty"` + Status Service_Subscription_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &Subscription{} + +// GetConditions returns the conditions of the resource +func (subscription *Subscription) GetConditions() conditions.Conditions { + return subscription.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (subscription *Subscription) SetConditions(conditions conditions.Conditions) { + subscription.Status.Conditions = conditions +} + +var _ genruntime.KubernetesResource = &Subscription{} + +// AzureName returns the Azure name of the resource +func (subscription *Subscription) AzureName() string { + return subscription.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2022-08-01" +func (subscription Subscription) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (subscription *Subscription) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (subscription *Subscription) GetSpec() genruntime.ConvertibleSpec { + return &subscription.Spec +} + +// GetStatus returns the status of this resource +func (subscription *Subscription) GetStatus() genruntime.ConvertibleStatus { + return &subscription.Status +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.ApiManagement/service/subscriptions" +func (subscription *Subscription) GetType() string { + return "Microsoft.ApiManagement/service/subscriptions" +} + +// NewEmptyStatus returns a new empty (blank) status +func (subscription *Subscription) NewEmptyStatus() genruntime.ConvertibleStatus { + return &Service_Subscription_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (subscription *Subscription) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(subscription.Spec) + return subscription.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (subscription *Subscription) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*Service_Subscription_STATUS); ok { + subscription.Status = *st + return nil + } + + // Convert status to required version + var st Service_Subscription_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + subscription.Status = st + return nil +} + +// Hub marks that this Subscription is the hub type for conversion +func (subscription *Subscription) Hub() {} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (subscription *Subscription) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: subscription.Spec.OriginalVersion, + Kind: "Subscription", + } +} + +// +kubebuilder:object:root=true +// Storage version of v1api20220801.Subscription +// Generator information: +// - Generated from: /apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/apimsubscriptions.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid} +type SubscriptionList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []Subscription `json:"items"` +} + +// Storage version of v1api20220801.Service_Subscription_Spec +type Service_Subscription_Spec struct { + AllowTracing *bool `json:"allowTracing,omitempty"` + + // +kubebuilder:validation:MaxLength=256 + // +kubebuilder:validation:Pattern="^[^*#&+:<>?]+$" + // AzureName: The name of the resource in Azure. This is often the same as the name of the resource in Kubernetes but it + // doesn't have to be. + AzureName string `json:"azureName,omitempty"` + DisplayName *string `json:"displayName,omitempty"` + OriginalVersion string `json:"originalVersion,omitempty"` + + // +kubebuilder:validation:Required + // Owner: The owner of the resource. The owner controls where the resource goes when it is deployed. The owner also + // controls the resources lifecycle. When the owner is deleted the resource will also be deleted. Owner is expected to be a + // reference to a apimanagement.azure.com/Service resource + Owner *genruntime.KnownResourceReference `group:"apimanagement.azure.com" json:"owner,omitempty" kind:"Service"` + + // OwnerReference: User (user id path) for whom subscription is being created in form /users/{userId} + OwnerReference *genruntime.ResourceReference `armReference:"OwnerId" json:"ownerReference,omitempty"` + PrimaryKey *genruntime.SecretReference `json:"primaryKey,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Scope *string `json:"scope,omitempty"` + SecondaryKey *genruntime.SecretReference `json:"secondaryKey,omitempty"` + State *string `json:"state,omitempty"` +} + +var _ genruntime.ConvertibleSpec = &Service_Subscription_Spec{} + +// ConvertSpecFrom populates our Service_Subscription_Spec from the provided source +func (subscription *Service_Subscription_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + if source == subscription { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec") + } + + return source.ConvertSpecTo(subscription) +} + +// ConvertSpecTo populates the provided destination from our Service_Subscription_Spec +func (subscription *Service_Subscription_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + if destination == subscription { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec") + } + + return destination.ConvertSpecFrom(subscription) +} + +// Storage version of v1api20220801.Service_Subscription_STATUS +type Service_Subscription_STATUS struct { + AllowTracing *bool `json:"allowTracing,omitempty"` + Conditions []conditions.Condition `json:"conditions,omitempty"` + CreatedDate *string `json:"createdDate,omitempty"` + DisplayName *string `json:"displayName,omitempty"` + EndDate *string `json:"endDate,omitempty"` + ExpirationDate *string `json:"expirationDate,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + NotificationDate *string `json:"notificationDate,omitempty"` + OwnerId *string `json:"ownerId,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Scope *string `json:"scope,omitempty"` + StartDate *string `json:"startDate,omitempty"` + State *string `json:"state,omitempty"` + StateComment *string `json:"stateComment,omitempty"` + Type *string `json:"type,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &Service_Subscription_STATUS{} + +// ConvertStatusFrom populates our Service_Subscription_STATUS from the provided source +func (subscription *Service_Subscription_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + if source == subscription { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus") + } + + return source.ConvertStatusTo(subscription) +} + +// ConvertStatusTo populates the provided destination from our Service_Subscription_STATUS +func (subscription *Service_Subscription_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + if destination == subscription { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus") + } + + return destination.ConvertStatusFrom(subscription) +} + +func init() { + SchemeBuilder.Register(&Subscription{}, &SubscriptionList{}) +} diff --git a/v2/api/apimanagement/v1api20220801storage/subscription_types_gen_test.go b/v2/api/apimanagement/v1api20220801storage/subscription_types_gen_test.go new file mode 100644 index 00000000000..9d8cfd6c7ad --- /dev/null +++ b/v2/api/apimanagement/v1api20220801storage/subscription_types_gen_test.go @@ -0,0 +1,219 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20220801storage + +import ( + "encoding/json" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/kr/pretty" + "github.com/kylelemons/godebug/diff" + "github.com/leanovate/gopter" + "github.com/leanovate/gopter/gen" + "github.com/leanovate/gopter/prop" + "os" + "reflect" + "testing" +) + +func Test_Subscription_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 20 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Subscription via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSubscription, SubscriptionGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSubscription runs a test to see if a specific instance of Subscription round trips to JSON and back losslessly +func RunJSONSerializationTestForSubscription(subject Subscription) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Subscription + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Subscription instances for property testing - lazily instantiated by SubscriptionGenerator() +var subscriptionGenerator gopter.Gen + +// SubscriptionGenerator returns a generator of Subscription instances for property testing. +func SubscriptionGenerator() gopter.Gen { + if subscriptionGenerator != nil { + return subscriptionGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForSubscription(generators) + subscriptionGenerator = gen.Struct(reflect.TypeOf(Subscription{}), generators) + + return subscriptionGenerator +} + +// AddRelatedPropertyGeneratorsForSubscription is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForSubscription(gens map[string]gopter.Gen) { + gens["Spec"] = Service_Subscription_SpecGenerator() + gens["Status"] = Service_Subscription_STATUSGenerator() +} + +func Test_Service_Subscription_Spec_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Subscription_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Subscription_Spec, Service_Subscription_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Subscription_Spec runs a test to see if a specific instance of Service_Subscription_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Subscription_Spec(subject Service_Subscription_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Subscription_Spec + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Subscription_Spec instances for property testing - lazily instantiated by +// Service_Subscription_SpecGenerator() +var service_Subscription_SpecGenerator gopter.Gen + +// Service_Subscription_SpecGenerator returns a generator of Service_Subscription_Spec instances for property testing. +func Service_Subscription_SpecGenerator() gopter.Gen { + if service_Subscription_SpecGenerator != nil { + return service_Subscription_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Subscription_Spec(generators) + service_Subscription_SpecGenerator = gen.Struct(reflect.TypeOf(Service_Subscription_Spec{}), generators) + + return service_Subscription_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForService_Subscription_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Subscription_Spec(gens map[string]gopter.Gen) { + gens["AllowTracing"] = gen.PtrOf(gen.Bool()) + gens["AzureName"] = gen.AlphaString() + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["OriginalVersion"] = gen.AlphaString() + gens["Scope"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Service_Subscription_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Service_Subscription_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForService_Subscription_STATUS, Service_Subscription_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForService_Subscription_STATUS runs a test to see if a specific instance of Service_Subscription_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForService_Subscription_STATUS(subject Service_Subscription_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Service_Subscription_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Service_Subscription_STATUS instances for property testing - lazily instantiated by +// Service_Subscription_STATUSGenerator() +var service_Subscription_STATUSGenerator gopter.Gen + +// Service_Subscription_STATUSGenerator returns a generator of Service_Subscription_STATUS instances for property testing. +func Service_Subscription_STATUSGenerator() gopter.Gen { + if service_Subscription_STATUSGenerator != nil { + return service_Subscription_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForService_Subscription_STATUS(generators) + service_Subscription_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_Subscription_STATUS{}), generators) + + return service_Subscription_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForService_Subscription_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForService_Subscription_STATUS(gens map[string]gopter.Gen) { + gens["AllowTracing"] = gen.PtrOf(gen.Bool()) + gens["CreatedDate"] = gen.PtrOf(gen.AlphaString()) + gens["DisplayName"] = gen.PtrOf(gen.AlphaString()) + gens["EndDate"] = gen.PtrOf(gen.AlphaString()) + gens["ExpirationDate"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["NotificationDate"] = gen.PtrOf(gen.AlphaString()) + gens["OwnerId"] = gen.PtrOf(gen.AlphaString()) + gens["Scope"] = gen.PtrOf(gen.AlphaString()) + gens["StartDate"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.AlphaString()) + gens["StateComment"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/apimanagement/v1api20220801storage/zz_generated.deepcopy.go b/v2/api/apimanagement/v1api20220801storage/zz_generated.deepcopy.go index 0494f86cd2c..93b883b9a4e 100644 --- a/v2/api/apimanagement/v1api20220801storage/zz_generated.deepcopy.go +++ b/v2/api/apimanagement/v1api20220801storage/zz_generated.deepcopy.go @@ -377,6 +377,562 @@ func (in *ArmIdWrapper_STATUS) DeepCopy() *ArmIdWrapper_STATUS { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Backend) DeepCopyInto(out *Backend) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend. +func (in *Backend) DeepCopy() *Backend { + if in == nil { + return nil + } + out := new(Backend) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Backend) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendAuthorizationHeaderCredentials) DeepCopyInto(out *BackendAuthorizationHeaderCredentials) { + *out = *in + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter + *out = new(string) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Scheme != nil { + in, out := &in.Scheme, &out.Scheme + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAuthorizationHeaderCredentials. +func (in *BackendAuthorizationHeaderCredentials) DeepCopy() *BackendAuthorizationHeaderCredentials { + if in == nil { + return nil + } + out := new(BackendAuthorizationHeaderCredentials) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendAuthorizationHeaderCredentials_STATUS) DeepCopyInto(out *BackendAuthorizationHeaderCredentials_STATUS) { + *out = *in + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter + *out = new(string) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Scheme != nil { + in, out := &in.Scheme, &out.Scheme + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAuthorizationHeaderCredentials_STATUS. +func (in *BackendAuthorizationHeaderCredentials_STATUS) DeepCopy() *BackendAuthorizationHeaderCredentials_STATUS { + if in == nil { + return nil + } + out := new(BackendAuthorizationHeaderCredentials_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendCredentialsContract) DeepCopyInto(out *BackendCredentialsContract) { + *out = *in + if in.Authorization != nil { + in, out := &in.Authorization, &out.Authorization + *out = new(BackendAuthorizationHeaderCredentials) + (*in).DeepCopyInto(*out) + } + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.CertificateIds != nil { + in, out := &in.CertificateIds, &out.CertificateIds + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendCredentialsContract. +func (in *BackendCredentialsContract) DeepCopy() *BackendCredentialsContract { + if in == nil { + return nil + } + out := new(BackendCredentialsContract) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendCredentialsContract_STATUS) DeepCopyInto(out *BackendCredentialsContract_STATUS) { + *out = *in + if in.Authorization != nil { + in, out := &in.Authorization, &out.Authorization + *out = new(BackendAuthorizationHeaderCredentials_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.CertificateIds != nil { + in, out := &in.CertificateIds, &out.CertificateIds + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + var outVal []string + if val == nil { + (*out)[key] = nil + } else { + inVal := (*in)[key] + in, out := &inVal, &outVal + *out = make([]string, len(*in)) + copy(*out, *in) + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendCredentialsContract_STATUS. +func (in *BackendCredentialsContract_STATUS) DeepCopy() *BackendCredentialsContract_STATUS { + if in == nil { + return nil + } + out := new(BackendCredentialsContract_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendList) DeepCopyInto(out *BackendList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Backend, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendList. +func (in *BackendList) DeepCopy() *BackendList { + if in == nil { + return nil + } + out := new(BackendList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *BackendList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProperties) DeepCopyInto(out *BackendProperties) { + *out = *in + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.ServiceFabricCluster != nil { + in, out := &in.ServiceFabricCluster, &out.ServiceFabricCluster + *out = new(BackendServiceFabricClusterProperties) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProperties. +func (in *BackendProperties) DeepCopy() *BackendProperties { + if in == nil { + return nil + } + out := new(BackendProperties) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProperties_STATUS) DeepCopyInto(out *BackendProperties_STATUS) { + *out = *in + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.ServiceFabricCluster != nil { + in, out := &in.ServiceFabricCluster, &out.ServiceFabricCluster + *out = new(BackendServiceFabricClusterProperties_STATUS) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProperties_STATUS. +func (in *BackendProperties_STATUS) DeepCopy() *BackendProperties_STATUS { + if in == nil { + return nil + } + out := new(BackendProperties_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProxyContract) DeepCopyInto(out *BackendProxyContract) { + *out = *in + if in.Password != nil { + in, out := &in.Password, &out.Password + *out = new(genruntime.SecretReference) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProxyContract. +func (in *BackendProxyContract) DeepCopy() *BackendProxyContract { + if in == nil { + return nil + } + out := new(BackendProxyContract) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProxyContract_STATUS) DeepCopyInto(out *BackendProxyContract_STATUS) { + *out = *in + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProxyContract_STATUS. +func (in *BackendProxyContract_STATUS) DeepCopy() *BackendProxyContract_STATUS { + if in == nil { + return nil + } + out := new(BackendProxyContract_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendServiceFabricClusterProperties) DeepCopyInto(out *BackendServiceFabricClusterProperties) { + *out = *in + if in.ClientCertificateId != nil { + in, out := &in.ClientCertificateId, &out.ClientCertificateId + *out = new(string) + **out = **in + } + if in.ClientCertificatethumbprint != nil { + in, out := &in.ClientCertificatethumbprint, &out.ClientCertificatethumbprint + *out = new(string) + **out = **in + } + if in.ManagementEndpoints != nil { + in, out := &in.ManagementEndpoints, &out.ManagementEndpoints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.MaxPartitionResolutionRetries != nil { + in, out := &in.MaxPartitionResolutionRetries, &out.MaxPartitionResolutionRetries + *out = new(int) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.ServerCertificateThumbprints != nil { + in, out := &in.ServerCertificateThumbprints, &out.ServerCertificateThumbprints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.ServerX509Names != nil { + in, out := &in.ServerX509Names, &out.ServerX509Names + *out = make([]X509CertificateName, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendServiceFabricClusterProperties. +func (in *BackendServiceFabricClusterProperties) DeepCopy() *BackendServiceFabricClusterProperties { + if in == nil { + return nil + } + out := new(BackendServiceFabricClusterProperties) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendServiceFabricClusterProperties_STATUS) DeepCopyInto(out *BackendServiceFabricClusterProperties_STATUS) { + *out = *in + if in.ClientCertificateId != nil { + in, out := &in.ClientCertificateId, &out.ClientCertificateId + *out = new(string) + **out = **in + } + if in.ClientCertificatethumbprint != nil { + in, out := &in.ClientCertificatethumbprint, &out.ClientCertificatethumbprint + *out = new(string) + **out = **in + } + if in.ManagementEndpoints != nil { + in, out := &in.ManagementEndpoints, &out.ManagementEndpoints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.MaxPartitionResolutionRetries != nil { + in, out := &in.MaxPartitionResolutionRetries, &out.MaxPartitionResolutionRetries + *out = new(int) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.ServerCertificateThumbprints != nil { + in, out := &in.ServerCertificateThumbprints, &out.ServerCertificateThumbprints + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.ServerX509Names != nil { + in, out := &in.ServerX509Names, &out.ServerX509Names + *out = make([]X509CertificateName_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendServiceFabricClusterProperties_STATUS. +func (in *BackendServiceFabricClusterProperties_STATUS) DeepCopy() *BackendServiceFabricClusterProperties_STATUS { + if in == nil { + return nil + } + out := new(BackendServiceFabricClusterProperties_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendTlsProperties) DeepCopyInto(out *BackendTlsProperties) { + *out = *in + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.ValidateCertificateChain != nil { + in, out := &in.ValidateCertificateChain, &out.ValidateCertificateChain + *out = new(bool) + **out = **in + } + if in.ValidateCertificateName != nil { + in, out := &in.ValidateCertificateName, &out.ValidateCertificateName + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTlsProperties. +func (in *BackendTlsProperties) DeepCopy() *BackendTlsProperties { + if in == nil { + return nil + } + out := new(BackendTlsProperties) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendTlsProperties_STATUS) DeepCopyInto(out *BackendTlsProperties_STATUS) { + *out = *in + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.ValidateCertificateChain != nil { + in, out := &in.ValidateCertificateChain, &out.ValidateCertificateChain + *out = new(bool) + **out = **in + } + if in.ValidateCertificateName != nil { + in, out := &in.ValidateCertificateName, &out.ValidateCertificateName + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTlsProperties_STATUS. +func (in *BackendTlsProperties_STATUS) DeepCopy() *BackendTlsProperties_STATUS { + if in == nil { + return nil + } + out := new(BackendTlsProperties_STATUS) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateConfiguration) DeepCopyInto(out *CertificateConfiguration) { *out = *in @@ -665,14 +1221,125 @@ func (in *HostnameConfiguration_STATUS) DeepCopyInto(out *HostnameConfiguration_ *out = new(string) **out = **in } - if in.KeyVaultId != nil { - in, out := &in.KeyVaultId, &out.KeyVaultId + if in.KeyVaultId != nil { + in, out := &in.KeyVaultId, &out.KeyVaultId + *out = new(string) + **out = **in + } + if in.NegotiateClientCertificate != nil { + in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate + *out = new(bool) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration_STATUS. +func (in *HostnameConfiguration_STATUS) DeepCopy() *HostnameConfiguration_STATUS { + if in == nil { + return nil + } + out := new(HostnameConfiguration_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultContractCreateProperties) DeepCopyInto(out *KeyVaultContractCreateProperties) { + *out = *in + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.IdentityClientIdFromConfig != nil { + in, out := &in.IdentityClientIdFromConfig, &out.IdentityClientIdFromConfig + *out = new(genruntime.ConfigMapReference) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.SecretIdentifier != nil { + in, out := &in.SecretIdentifier, &out.SecretIdentifier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultContractCreateProperties. +func (in *KeyVaultContractCreateProperties) DeepCopy() *KeyVaultContractCreateProperties { + if in == nil { + return nil + } + out := new(KeyVaultContractCreateProperties) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultContractProperties_STATUS) DeepCopyInto(out *KeyVaultContractProperties_STATUS) { + *out = *in + if in.IdentityClientId != nil { + in, out := &in.IdentityClientId, &out.IdentityClientId + *out = new(string) + **out = **in + } + if in.LastStatus != nil { + in, out := &in.LastStatus, &out.LastStatus + *out = new(KeyVaultLastAccessStatusContractProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.SecretIdentifier != nil { + in, out := &in.SecretIdentifier, &out.SecretIdentifier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultContractProperties_STATUS. +func (in *KeyVaultContractProperties_STATUS) DeepCopy() *KeyVaultContractProperties_STATUS { + if in == nil { + return nil + } + out := new(KeyVaultContractProperties_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultLastAccessStatusContractProperties_STATUS) DeepCopyInto(out *KeyVaultLastAccessStatusContractProperties_STATUS) { + *out = *in + if in.Code != nil { + in, out := &in.Code, &out.Code *out = new(string) **out = **in } - if in.NegotiateClientCertificate != nil { - in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate - *out = new(bool) + if in.Message != nil { + in, out := &in.Message, &out.Message + *out = new(string) **out = **in } if in.PropertyBag != nil { @@ -682,23 +1349,82 @@ func (in *HostnameConfiguration_STATUS) DeepCopyInto(out *HostnameConfiguration_ (*out)[key] = val } } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.TimeStampUtc != nil { + in, out := &in.TimeStampUtc, &out.TimeStampUtc *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnameConfiguration_STATUS. -func (in *HostnameConfiguration_STATUS) DeepCopy() *HostnameConfiguration_STATUS { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultLastAccessStatusContractProperties_STATUS. +func (in *KeyVaultLastAccessStatusContractProperties_STATUS) DeepCopy() *KeyVaultLastAccessStatusContractProperties_STATUS { if in == nil { return nil } - out := new(HostnameConfiguration_STATUS) + out := new(KeyVaultLastAccessStatusContractProperties_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamedValue) DeepCopyInto(out *NamedValue) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamedValue. +func (in *NamedValue) DeepCopy() *NamedValue { + if in == nil { + return nil + } + out := new(NamedValue) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NamedValue) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamedValueList) DeepCopyInto(out *NamedValueList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]NamedValue, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamedValueList. +func (in *NamedValueList) DeepCopy() *NamedValueList { + if in == nil { + return nil + } + out := new(NamedValueList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NamedValueList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateLinkServiceConnectionState_STATUS) DeepCopyInto(out *PrivateLinkServiceConnectionState_STATUS) { *out = *in @@ -834,24 +1560,306 @@ func (in *ServiceList) DeepCopyInto(out *ServiceList) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceList. -func (in *ServiceList) DeepCopy() *ServiceList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceList. +func (in *ServiceList) DeepCopy() *ServiceList { + if in == nil { + return nil + } + out := new(ServiceList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ServiceList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Backend_STATUS) DeepCopyInto(out *Service_Backend_STATUS) { + *out = *in + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]conditions.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Credentials != nil { + in, out := &in.Credentials, &out.Credentials + *out = new(BackendCredentialsContract_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(BackendProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.Proxy != nil { + in, out := &in.Proxy, &out.Proxy + *out = new(BackendProxyContract_STATUS) + (*in).DeepCopyInto(*out) + } + if in.ResourceId != nil { + in, out := &in.ResourceId, &out.ResourceId + *out = new(string) + **out = **in + } + if in.Title != nil { + in, out := &in.Title, &out.Title + *out = new(string) + **out = **in + } + if in.Tls != nil { + in, out := &in.Tls, &out.Tls + *out = new(BackendTlsProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Backend_STATUS. +func (in *Service_Backend_STATUS) DeepCopy() *Service_Backend_STATUS { + if in == nil { + return nil + } + out := new(Service_Backend_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Backend_Spec) DeepCopyInto(out *Service_Backend_Spec) { + *out = *in + if in.Credentials != nil { + in, out := &in.Credentials, &out.Credentials + *out = new(BackendCredentialsContract) + (*in).DeepCopyInto(*out) + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(BackendProperties) + (*in).DeepCopyInto(*out) + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.Proxy != nil { + in, out := &in.Proxy, &out.Proxy + *out = new(BackendProxyContract) + (*in).DeepCopyInto(*out) + } + if in.ResourceReference != nil { + in, out := &in.ResourceReference, &out.ResourceReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.Title != nil { + in, out := &in.Title, &out.Title + *out = new(string) + **out = **in + } + if in.Tls != nil { + in, out := &in.Tls, &out.Tls + *out = new(BackendTlsProperties) + (*in).DeepCopyInto(*out) + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Backend_Spec. +func (in *Service_Backend_Spec) DeepCopy() *Service_Backend_Spec { + if in == nil { + return nil + } + out := new(Service_Backend_Spec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_NamedValue_STATUS) DeepCopyInto(out *Service_NamedValue_STATUS) { + *out = *in + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]conditions.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.KeyVault != nil { + in, out := &in.KeyVault, &out.KeyVault + *out = new(KeyVaultContractProperties_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_NamedValue_STATUS. +func (in *Service_NamedValue_STATUS) DeepCopy() *Service_NamedValue_STATUS { + if in == nil { + return nil + } + out := new(Service_NamedValue_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_NamedValue_Spec) DeepCopyInto(out *Service_NamedValue_Spec) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.KeyVault != nil { + in, out := &in.KeyVault, &out.KeyVault + *out = new(KeyVaultContractCreateProperties) + (*in).DeepCopyInto(*out) + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_NamedValue_Spec. +func (in *Service_NamedValue_Spec) DeepCopy() *Service_NamedValue_Spec { if in == nil { return nil } - out := new(ServiceList) + out := new(Service_NamedValue_Spec) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ServiceList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Service_STATUS) DeepCopyInto(out *Service_STATUS) { *out = *in @@ -1235,6 +2243,226 @@ func (in *Service_Spec) DeepCopy() *Service_Spec { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Subscription_STATUS) DeepCopyInto(out *Service_Subscription_STATUS) { + *out = *in + if in.AllowTracing != nil { + in, out := &in.AllowTracing, &out.AllowTracing + *out = new(bool) + **out = **in + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]conditions.Condition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CreatedDate != nil { + in, out := &in.CreatedDate, &out.CreatedDate + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.EndDate != nil { + in, out := &in.EndDate, &out.EndDate + *out = new(string) + **out = **in + } + if in.ExpirationDate != nil { + in, out := &in.ExpirationDate, &out.ExpirationDate + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NotificationDate != nil { + in, out := &in.NotificationDate, &out.NotificationDate + *out = new(string) + **out = **in + } + if in.OwnerId != nil { + in, out := &in.OwnerId, &out.OwnerId + *out = new(string) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.StartDate != nil { + in, out := &in.StartDate, &out.StartDate + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } + if in.StateComment != nil { + in, out := &in.StateComment, &out.StateComment + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Subscription_STATUS. +func (in *Service_Subscription_STATUS) DeepCopy() *Service_Subscription_STATUS { + if in == nil { + return nil + } + out := new(Service_Subscription_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service_Subscription_Spec) DeepCopyInto(out *Service_Subscription_Spec) { + *out = *in + if in.AllowTracing != nil { + in, out := &in.AllowTracing, &out.AllowTracing + *out = new(bool) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.OwnerReference != nil { + in, out := &in.OwnerReference, &out.OwnerReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.PrimaryKey != nil { + in, out := &in.PrimaryKey, &out.PrimaryKey + *out = new(genruntime.SecretReference) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.SecondaryKey != nil { + in, out := &in.SecondaryKey, &out.SecondaryKey + *out = new(genruntime.SecretReference) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_Subscription_Spec. +func (in *Service_Subscription_Spec) DeepCopy() *Service_Subscription_Spec { + if in == nil { + return nil + } + out := new(Service_Subscription_Spec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Subscription) DeepCopyInto(out *Subscription) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subscription. +func (in *Subscription) DeepCopy() *Subscription { + if in == nil { + return nil + } + out := new(Subscription) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Subscription) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionList) DeepCopyInto(out *SubscriptionList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Subscription, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionList. +func (in *SubscriptionList) DeepCopy() *SubscriptionList { + if in == nil { + return nil + } + out := new(SubscriptionList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SubscriptionList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SystemData_STATUS) DeepCopyInto(out *SystemData_STATUS) { *out = *in @@ -1405,3 +2633,67 @@ func (in *VirtualNetworkConfiguration_STATUS) DeepCopy() *VirtualNetworkConfigur in.DeepCopyInto(out) return out } + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *X509CertificateName) DeepCopyInto(out *X509CertificateName) { + *out = *in + if in.IssuerCertificateThumbprint != nil { + in, out := &in.IssuerCertificateThumbprint, &out.IssuerCertificateThumbprint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new X509CertificateName. +func (in *X509CertificateName) DeepCopy() *X509CertificateName { + if in == nil { + return nil + } + out := new(X509CertificateName) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *X509CertificateName_STATUS) DeepCopyInto(out *X509CertificateName_STATUS) { + *out = *in + if in.IssuerCertificateThumbprint != nil { + in, out := &in.IssuerCertificateThumbprint, &out.IssuerCertificateThumbprint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new X509CertificateName_STATUS. +func (in *X509CertificateName_STATUS) DeepCopy() *X509CertificateName_STATUS { + if in == nil { + return nil + } + out := new(X509CertificateName_STATUS) + in.DeepCopyInto(out) + return out +} diff --git a/v2/api/apimanagement/versions_matrix.md b/v2/api/apimanagement/versions_matrix.md index de37307fd41..e049ba89291 100644 --- a/v2/api/apimanagement/versions_matrix.md +++ b/v2/api/apimanagement/versions_matrix.md @@ -26,6 +26,23 @@ | ApiVersionConstraint | v1api20220801 | | ApiVersionConstraint_STATUS | v1api20220801 | | ArmIdWrapper_STATUS | v1api20220801 | +| Backend | v1api20220801 | +| BackendAuthorizationHeaderCredentials | v1api20220801 | +| BackendAuthorizationHeaderCredentials_STATUS | v1api20220801 | +| BackendContractProperties | v1api20220801 | +| BackendContractProperties_Protocol | v1api20220801 | +| BackendContractProperties_Protocol_STATUS | v1api20220801 | +| BackendContractProperties_STATUS | v1api20220801 | +| BackendCredentialsContract | v1api20220801 | +| BackendCredentialsContract_STATUS | v1api20220801 | +| BackendProperties | v1api20220801 | +| BackendProperties_STATUS | v1api20220801 | +| BackendProxyContract | v1api20220801 | +| BackendProxyContract_STATUS | v1api20220801 | +| BackendServiceFabricClusterProperties | v1api20220801 | +| BackendServiceFabricClusterProperties_STATUS | v1api20220801 | +| BackendTlsProperties | v1api20220801 | +| BackendTlsProperties_STATUS | v1api20220801 | | CertificateConfiguration | v1api20220801 | | CertificateConfiguration_STATUS | v1api20220801 | | CertificateConfiguration_StoreName | v1api20220801 | @@ -40,13 +57,30 @@ | HostnameConfiguration_STATUS | v1api20220801 | | HostnameConfiguration_Type | v1api20220801 | | HostnameConfiguration_Type_STATUS | v1api20220801 | +| KeyVaultContractCreateProperties | v1api20220801 | +| KeyVaultContractProperties_STATUS | v1api20220801 | +| KeyVaultLastAccessStatusContractProperties_STATUS | v1api20220801 | +| NamedValue | v1api20220801 | +| NamedValueContractProperties_STATUS | v1api20220801 | +| NamedValueCreateContractProperties | v1api20220801 | | PrivateEndpointConnectionWrapperProperties_STATUS | v1api20220801 | | PrivateEndpointServiceConnectionStatus_STATUS | v1api20220801 | | PrivateLinkServiceConnectionState_STATUS | v1api20220801 | | RemotePrivateEndpointConnectionWrapper_STATUS | v1api20220801 | | Service | v1api20220801 | +| Service_Backend_STATUS | v1api20220801 | +| Service_Backend_Spec | v1api20220801 | +| Service_NamedValue_STATUS | v1api20220801 | +| Service_NamedValue_Spec | v1api20220801 | | Service_STATUS | v1api20220801 | | Service_Spec | v1api20220801 | +| Service_Subscription_STATUS | v1api20220801 | +| Service_Subscription_Spec | v1api20220801 | +| Subscription | v1api20220801 | +| SubscriptionContractProperties_STATUS | v1api20220801 | +| SubscriptionContractProperties_State_STATUS | v1api20220801 | +| SubscriptionCreateParameterProperties | v1api20220801 | +| SubscriptionCreateParameterProperties_State | v1api20220801 | | SystemData_CreatedByType_STATUS | v1api20220801 | | SystemData_LastModifiedByType_STATUS | v1api20220801 | | SystemData_STATUS | v1api20220801 | @@ -54,3 +88,5 @@ | UserIdentityProperties_STATUS | v1api20220801 | | VirtualNetworkConfiguration | v1api20220801 | | VirtualNetworkConfiguration_STATUS | v1api20220801 | +| X509CertificateName | v1api20220801 | +| X509CertificateName_STATUS | v1api20220801 | diff --git a/v2/azure-arm.yaml b/v2/azure-arm.yaml index b4cf01635b2..552ab623b99 100644 --- a/v2/azure-arm.yaml +++ b/v2/azure-arm.yaml @@ -693,12 +693,19 @@ objectModelConfiguration: AdditionalLocation: PublicIpAddressId: $armReference: true - Service: - $export: true - $supportedFrom: v2.4.0 ApiManagementServiceProperties: PublicIpAddressId: $armReference: true + BackendContractProperties: + ResourceId: + $armReference: true + # This is an array and fails + # BackendCredentialsContract: + # Certificate: + # $importConfigMapMode: optional + BackendProxyContract: + Password: + $isSecret: true CertificateInformation: Expiry: $importConfigMapMode: optional @@ -714,6 +721,29 @@ objectModelConfiguration: $isSecret: true IdentityClientId: $importConfigMapMode: optional + KeyVaultContractCreateProperties: + IdentityClientId: + $importConfigMapMode: optional + Service: + $export: true + $supportedFrom: v2.4.0 + Service_Backend: + $exportAs: Backend + $supportedFrom: v2.4.0 + Service_NamedValue: + $exportAs: NamedValue + $supportedFrom: v2.4.0 + # TODO: This type generates 2 keys if there is none supplied. + Service_Subscription: + $exportAs: Subscription + $supportedFrom: v2.4.0 + SubscriptionCreateParameterProperties: + PrimaryKey: + $isSecret: true + SecondaryKey: + $isSecret: true + OwnerId: + $armReference: true VirtualNetworkConfiguration: SubnetResourceId: $armReference: true diff --git a/v2/internal/controllers/controller_resources_gen.go b/v2/internal/controllers/controller_resources_gen.go index 12aa8a6af1f..82fb8956e65 100644 --- a/v2/internal/controllers/controller_resources_gen.go +++ b/v2/internal/controllers/controller_resources_gen.go @@ -231,6 +231,36 @@ import ( // getKnownStorageTypes returns the list of storage types which can be reconciled. func getKnownStorageTypes() []*registration.StorageType { var result []*registration.StorageType + result = append(result, ®istration.StorageType{ + Obj: new(apimanagement_v20220801s.Backend), + Indexes: []registration.Index{ + { + Key: ".spec.proxy.password", + Func: indexApimanagementBackendPassword, + }, + }, + Watches: []registration.Watch{ + { + Type: &v1.Secret{}, + MakeEventHandler: watchSecretsFactory([]string{".spec.proxy.password"}, &apimanagement_v20220801s.BackendList{}), + }, + }, + }) + result = append(result, ®istration.StorageType{ + Obj: new(apimanagement_v20220801s.NamedValue), + Indexes: []registration.Index{ + { + Key: ".spec.keyVault.identityClientIdFromConfig", + Func: indexApimanagementNamedValueIdentityClientIdFromConfig, + }, + }, + Watches: []registration.Watch{ + { + Type: &v1.ConfigMap{}, + MakeEventHandler: watchConfigMapsFactory([]string{".spec.keyVault.identityClientIdFromConfig"}, &apimanagement_v20220801s.NamedValueList{}), + }, + }, + }) result = append(result, ®istration.StorageType{ Obj: new(apimanagement_v20220801s.Service), Indexes: []registration.Index{ @@ -282,6 +312,25 @@ func getKnownStorageTypes() []*registration.StorageType { }, }, }) + result = append(result, ®istration.StorageType{ + Obj: new(apimanagement_v20220801s.Subscription), + Indexes: []registration.Index{ + { + Key: ".spec.primaryKey", + Func: indexApimanagementSubscriptionPrimaryKey, + }, + { + Key: ".spec.secondaryKey", + Func: indexApimanagementSubscriptionSecondaryKey, + }, + }, + Watches: []registration.Watch{ + { + Type: &v1.Secret{}, + MakeEventHandler: watchSecretsFactory([]string{".spec.primaryKey", ".spec.secondaryKey"}, &apimanagement_v20220801s.SubscriptionList{}), + }, + }, + }) result = append(result, ®istration.StorageType{Obj: new(appconfiguration_v20220501s.ConfigurationStore)}) result = append(result, ®istration.StorageType{ Obj: new(authorization_v20200801ps.RoleAssignment), @@ -938,8 +987,18 @@ func getKnownStorageTypes() []*registration.StorageType { // getKnownTypes returns the list of all types. func getKnownTypes() []client.Object { var result []client.Object - result = append(result, new(apimanagement_v20220801.Service)) - result = append(result, new(apimanagement_v20220801s.Service)) + result = append( + result, + new(apimanagement_v20220801.Backend), + new(apimanagement_v20220801.NamedValue), + new(apimanagement_v20220801.Service), + new(apimanagement_v20220801.Subscription)) + result = append( + result, + new(apimanagement_v20220801s.Backend), + new(apimanagement_v20220801s.NamedValue), + new(apimanagement_v20220801s.Service), + new(apimanagement_v20220801s.Subscription)) result = append(result, new(appconfiguration_v1beta20220501.ConfigurationStore)) result = append(result, new(appconfiguration_v1beta20220501s.ConfigurationStore)) result = append(result, new(appconfiguration_v20220501.ConfigurationStore)) @@ -1839,7 +1898,10 @@ func createScheme() *runtime.Scheme { // getResourceExtensions returns a list of resource extensions func getResourceExtensions() []genruntime.ResourceExtension { var result []genruntime.ResourceExtension + result = append(result, &apimanagement_customizations.BackendExtension{}) + result = append(result, &apimanagement_customizations.NamedValueExtension{}) result = append(result, &apimanagement_customizations.ServiceExtension{}) + result = append(result, &apimanagement_customizations.SubscriptionExtension{}) result = append(result, &appconfiguration_customizations.ConfigurationStoreExtension{}) result = append(result, &authorization_customizations.RoleAssignmentExtension{}) result = append(result, &batch_customizations.BatchAccountExtension{}) @@ -2007,6 +2069,36 @@ func getResourceExtensions() []genruntime.ResourceExtension { return result } +// indexApimanagementBackendPassword an index function for apimanagement_v20220801s.Backend .spec.proxy.password +func indexApimanagementBackendPassword(rawObj client.Object) []string { + obj, ok := rawObj.(*apimanagement_v20220801s.Backend) + if !ok { + return nil + } + if obj.Spec.Proxy == nil { + return nil + } + if obj.Spec.Proxy.Password == nil { + return nil + } + return obj.Spec.Proxy.Password.Index() +} + +// indexApimanagementNamedValueIdentityClientIdFromConfig an index function for apimanagement_v20220801s.NamedValue .spec.keyVault.identityClientIdFromConfig +func indexApimanagementNamedValueIdentityClientIdFromConfig(rawObj client.Object) []string { + obj, ok := rawObj.(*apimanagement_v20220801s.NamedValue) + if !ok { + return nil + } + if obj.Spec.KeyVault == nil { + return nil + } + if obj.Spec.KeyVault.IdentityClientIdFromConfig == nil { + return nil + } + return obj.Spec.KeyVault.IdentityClientIdFromConfig.Index() +} + // indexApimanagementServiceCertificatesCertificatePassword an index function for apimanagement_v20220801s.Service .spec.certificates.certificatePassword func indexApimanagementServiceCertificatesCertificatePassword(rawObj client.Object) []string { obj, ok := rawObj.(*apimanagement_v20220801s.Service) @@ -2169,6 +2261,30 @@ func indexApimanagementServiceHostnameConfigurationsThumbprintFromConfig(rawObj return result } +// indexApimanagementSubscriptionPrimaryKey an index function for apimanagement_v20220801s.Subscription .spec.primaryKey +func indexApimanagementSubscriptionPrimaryKey(rawObj client.Object) []string { + obj, ok := rawObj.(*apimanagement_v20220801s.Subscription) + if !ok { + return nil + } + if obj.Spec.PrimaryKey == nil { + return nil + } + return obj.Spec.PrimaryKey.Index() +} + +// indexApimanagementSubscriptionSecondaryKey an index function for apimanagement_v20220801s.Subscription .spec.secondaryKey +func indexApimanagementSubscriptionSecondaryKey(rawObj client.Object) []string { + obj, ok := rawObj.(*apimanagement_v20220801s.Subscription) + if !ok { + return nil + } + if obj.Spec.SecondaryKey == nil { + return nil + } + return obj.Spec.SecondaryKey.Index() +} + // indexAuthorizationRoleAssignmentPrincipalIdFromConfig an index function for authorization_v20200801ps.RoleAssignment .spec.principalIdFromConfig func indexAuthorizationRoleAssignmentPrincipalIdFromConfig(rawObj client.Object) []string { obj, ok := rawObj.(*authorization_v20200801ps.RoleAssignment) diff --git a/v2/internal/controllers/crd_apimanagement_20220801_test.go b/v2/internal/controllers/crd_apimanagement_20220801_test.go index d4bb29b63ee..6a6a4d4ebf7 100644 --- a/v2/internal/controllers/crd_apimanagement_20220801_test.go +++ b/v2/internal/controllers/crd_apimanagement_20220801_test.go @@ -9,6 +9,7 @@ import ( "testing" . "github.com/onsi/gomega" + "sigs.k8s.io/controller-runtime/pkg/client" apim "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801" "github.com/Azure/azure-service-operator/v2/internal/testcommon" @@ -24,14 +25,17 @@ func Test_ApiManagement_20220801_CRUD(t *testing.T) { tc := globalTestContext.ForTest(t) - rg := tc.CreateTestResourceGroupAndWait() + // We don't want to delete the resource group as APIM takes a long time to provision + rg := tc.NewTestResourceGroup() + tc.CreateResourceAndWaitWithoutCleanup(rg) sku := apim.ApiManagementServiceSkuProperties{ Capacity: to.Ptr(1), Name: to.Ptr(apim.ApiManagementServiceSkuProperties_Name_Developer), } - // Create an APIM instance + // Create an APIM instance. APIM has a soft delete feature; if you find that you + // hit this problem add the restore back in to resurrect it service := apim.Service{ ObjectMeta: tc.MakeObjectMetaWithName(tc.Namer.GenerateName("apim")), Spec: apim.Service_Spec{ @@ -40,12 +44,13 @@ func Test_ApiManagement_20220801_CRUD(t *testing.T) { PublisherEmail: to.Ptr("ASO@testing.com"), PublisherName: to.Ptr("ASOTesting"), Sku: &sku, + // Restore: to.Ptr(true), }, } - tc.CreateResourceAndWait(&service) - - tc.Expect(service.Status.Id).ToNot(BeNil()) + // TODO: When you are debugging, you can use this to create the APIM service once and not delete it + tc.CreateResourceAndWaitWithoutCleanup(&service) + // tc.CreateResourceAndWait(&service) tc.Expect(service.Status.Id).ToNot(BeNil()) @@ -55,4 +60,92 @@ func Test_ApiManagement_20220801_CRUD(t *testing.T) { service.Spec.Tags = map[string]string{"scratchcard": "lanyard"} tc.PatchResourceAndWait(old, &service) tc.Expect(service.Status.Tags).To(HaveKey("scratchcard")) + + // Run sub-tests + tc.RunParallelSubtests( + testcommon.Subtest{ + Name: "APIM Subscription CRUD", + Test: func(tc *testcommon.KubePerTestContext) { + APIM_Subscription_CRUD(tc, &service) + }, + }, + testcommon.Subtest{ + Name: "APIM Backend CRUD", + Test: func(tc *testcommon.KubePerTestContext) { + APIM_Backend_CRUD(tc, &service) + }, + }, + testcommon.Subtest{ + Name: "APIM Named Value CRUD", + Test: func(tc *testcommon.KubePerTestContext) { + APIM_NamedValue_CRUD(tc, &service) + }, + }, + ) +} + +func APIM_Subscription_CRUD(tc *testcommon.KubePerTestContext, service client.Object) { + // Put this subscription on all APIs + subscription := apim.Subscription{ + ObjectMeta: tc.MakeObjectMetaWithName(tc.Namer.GenerateName("sub")), + Spec: apim.Service_Subscription_Spec{ + DisplayName: to.Ptr("test_subscription"), + Scope: to.Ptr("/apis"), + Owner: testcommon.AsOwner(service), + }, + } + + tc.T.Log("creating apim subscription") + tc.CreateResourceAndWait(&subscription) + defer tc.DeleteResourceAndWait(&subscription) + + tc.Expect(subscription.Status).ToNot(BeNil()) + + tc.T.Log("cleaning up subscription") +} + +func APIM_Backend_CRUD(tc *testcommon.KubePerTestContext, service client.Object) { + + // Add a simple backend + backend := apim.Backend{ + ObjectMeta: tc.MakeObjectMetaWithName(tc.Namer.GenerateName("backend")), + Spec: apim.Service_Backend_Spec{ + AzureName: "test_backend", + Description: to.Ptr("A Decsription about the backend"), + Protocol: to.Ptr(apim.BackendContractProperties_Protocol_Http), + Url: to.Ptr("https://www.bing.com"), + Owner: testcommon.AsOwner(service), + }, + } + + tc.T.Log("creating apim backend") + tc.CreateResourceAndWait(&backend) + defer tc.DeleteResourceAndWait(&backend) + + tc.Expect(backend.Status).ToNot(BeNil()) + + tc.T.Log("cleaning up backend") +} + +func APIM_NamedValue_CRUD(tc *testcommon.KubePerTestContext, service client.Object) { + + // Add a simple backend + namedValue := apim.NamedValue{ + ObjectMeta: tc.MakeObjectMetaWithName(tc.Namer.GenerateName("namedvalue")), + Spec: apim.Service_NamedValue_Spec{ + AzureName: "test_namedvalue", + DisplayName: to.Ptr("My_Key"), + Value: to.Ptr("It's value"), + Secret: to.Ptr(false), + Owner: testcommon.AsOwner(service), + }, + } + + tc.T.Log("creating apim namedValue") + tc.CreateResourceAndWait(&namedValue) + defer tc.DeleteResourceAndWait(&namedValue) + + tc.Expect(namedValue.Status).ToNot(BeNil()) + + tc.T.Log("cleaning up namedValue") } diff --git a/v2/internal/controllers/recordings/Test_ApiManagement_20220801_CRUD.yaml b/v2/internal/controllers/recordings/Test_ApiManagement_20220801_CRUD.yaml index 705a1f70b89..bc2b2111ffd 100644 --- a/v2/internal/controllers/recordings/Test_ApiManagement_20220801_CRUD.yaml +++ b/v2/internal/controllers/recordings/Test_ApiManagement_20220801_CRUD.yaml @@ -80,7 +80,7 @@ interactions: url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm?api-version=2022-08-01 method: PUT response: - body: '{"etag":"AAAAAABLnPw=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotest-apim-sczlzm.azure-api.net","gatewayRegionalUrl":"https://asotest-apim-sczlzm-westus2-01.regional.azure-api.net","portalUrl":"https://asotest-apim-sczlzm.portal.azure-api.net","developerPortalUrl":"https://asotest-apim-sczlzm.developer.azure-api.net","managementApiUrl":"https://asotest-apim-sczlzm.management.azure-api.net","scmUrl":"https://asotest-apim-sczlzm.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotest-apim-sczlzm.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["40.64.71.62"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["40.64.71.62"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm","name":"asotest-apim-sczlzm","type":"Microsoft.ApiManagement/service","location":"West + body: '{"etag":"AAAAAABLujk=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotest-apim-sczlzm.azure-api.net","gatewayRegionalUrl":"https://asotest-apim-sczlzm-westus2-01.regional.azure-api.net","portalUrl":"https://asotest-apim-sczlzm.portal.azure-api.net","developerPortalUrl":"https://asotest-apim-sczlzm.developer.azure-api.net","managementApiUrl":"https://asotest-apim-sczlzm.management.azure-api.net","scmUrl":"https://asotest-apim-sczlzm.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotest-apim-sczlzm.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["51.143.121.123"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["51.143.121.123"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm","name":"asotest-apim-sczlzm","type":"Microsoft.ApiManagement/service","location":"West US 2","tags":{}}' headers: Cache-Control: @@ -88,7 +88,7 @@ interactions: Content-Type: - application/json; charset=utf-8 Etag: - - '"AAAAAABLnPw="' + - '"AAAAAABLujk="' Expires: - "-1" Pragma: @@ -101,8 +101,6 @@ interactions: - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23999" status: 200 OK code: 200 duration: "" @@ -117,7 +115,7 @@ interactions: url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm?api-version=2022-08-01 method: GET response: - body: '{"etag":"AAAAAABLnPw=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotest-apim-sczlzm.azure-api.net","gatewayRegionalUrl":"https://asotest-apim-sczlzm-westus2-01.regional.azure-api.net","portalUrl":"https://asotest-apim-sczlzm.portal.azure-api.net","developerPortalUrl":"https://asotest-apim-sczlzm.developer.azure-api.net","managementApiUrl":"https://asotest-apim-sczlzm.management.azure-api.net","scmUrl":"https://asotest-apim-sczlzm.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotest-apim-sczlzm.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["40.64.71.62"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["40.64.71.62"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm","name":"asotest-apim-sczlzm","type":"Microsoft.ApiManagement/service","location":"West + body: '{"etag":"AAAAAABLujk=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotest-apim-sczlzm.azure-api.net","gatewayRegionalUrl":"https://asotest-apim-sczlzm-westus2-01.regional.azure-api.net","portalUrl":"https://asotest-apim-sczlzm.portal.azure-api.net","developerPortalUrl":"https://asotest-apim-sczlzm.developer.azure-api.net","managementApiUrl":"https://asotest-apim-sczlzm.management.azure-api.net","scmUrl":"https://asotest-apim-sczlzm.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotest-apim-sczlzm.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["51.143.121.123"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["51.143.121.123"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm","name":"asotest-apim-sczlzm","type":"Microsoft.ApiManagement/service","location":"West US 2","tags":{}}' headers: Cache-Control: @@ -125,7 +123,7 @@ interactions: Content-Type: - application/json; charset=utf-8 Etag: - - '"AAAAAABLnPw="' + - '"AAAAAABLujk="' Expires: - "-1" Pragma: @@ -156,7 +154,7 @@ interactions: url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm?api-version=2022-08-01 method: PUT response: - body: '{"etag":"AAAAAABLo7k=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotest-apim-sczlzm.azure-api.net","gatewayRegionalUrl":"https://asotest-apim-sczlzm-westus2-01.regional.azure-api.net","portalUrl":"https://asotest-apim-sczlzm.portal.azure-api.net","developerPortalUrl":"https://asotest-apim-sczlzm.developer.azure-api.net","managementApiUrl":"https://asotest-apim-sczlzm.management.azure-api.net","scmUrl":"https://asotest-apim-sczlzm.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotest-apim-sczlzm.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["40.64.71.62"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["40.64.71.62"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm","name":"asotest-apim-sczlzm","type":"Microsoft.ApiManagement/service","location":"West + body: '{"etag":"AAAAAABLujo=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotest-apim-sczlzm.azure-api.net","gatewayRegionalUrl":"https://asotest-apim-sczlzm-westus2-01.regional.azure-api.net","portalUrl":"https://asotest-apim-sczlzm.portal.azure-api.net","developerPortalUrl":"https://asotest-apim-sczlzm.developer.azure-api.net","managementApiUrl":"https://asotest-apim-sczlzm.management.azure-api.net","scmUrl":"https://asotest-apim-sczlzm.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotest-apim-sczlzm.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["51.143.121.123"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["51.143.121.123"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm","name":"asotest-apim-sczlzm","type":"Microsoft.ApiManagement/service","location":"West US 2","tags":{"scratchcard":"lanyard"}}' headers: Cache-Control: @@ -164,7 +162,7 @@ interactions: Content-Type: - application/json; charset=utf-8 Etag: - - '"AAAAAABLo7k="' + - '"AAAAAABLujo="' Expires: - "-1" Pragma: @@ -177,8 +175,6 @@ interactions: - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23998" status: 200 OK code: 200 duration: "" @@ -193,7 +189,7 @@ interactions: url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm?api-version=2022-08-01 method: GET response: - body: '{"etag":"AAAAAABLo7k=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotest-apim-sczlzm.azure-api.net","gatewayRegionalUrl":"https://asotest-apim-sczlzm-westus2-01.regional.azure-api.net","portalUrl":"https://asotest-apim-sczlzm.portal.azure-api.net","developerPortalUrl":"https://asotest-apim-sczlzm.developer.azure-api.net","managementApiUrl":"https://asotest-apim-sczlzm.management.azure-api.net","scmUrl":"https://asotest-apim-sczlzm.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotest-apim-sczlzm.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["40.64.71.62"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["40.64.71.62"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm","name":"asotest-apim-sczlzm","type":"Microsoft.ApiManagement/service","location":"West + body: '{"etag":"AAAAAABLujo=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotest-apim-sczlzm.azure-api.net","gatewayRegionalUrl":"https://asotest-apim-sczlzm-westus2-01.regional.azure-api.net","portalUrl":"https://asotest-apim-sczlzm.portal.azure-api.net","developerPortalUrl":"https://asotest-apim-sczlzm.developer.azure-api.net","managementApiUrl":"https://asotest-apim-sczlzm.management.azure-api.net","scmUrl":"https://asotest-apim-sczlzm.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotest-apim-sczlzm.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["51.143.121.123"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["51.143.121.123"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm","name":"asotest-apim-sczlzm","type":"Microsoft.ApiManagement/service","location":"West US 2","tags":{"scratchcard":"lanyard"}}' headers: Cache-Control: @@ -201,7 +197,7 @@ interactions: Content-Type: - application/json; charset=utf-8 Etag: - - '"AAAAAABLo7k="' + - '"AAAAAABLujo="' Expires: - "-1" Pragma: @@ -218,45 +214,63 @@ interactions: code: 200 duration: "" - request: - body: "" + body: '{"name":"test_backend","properties":{"description":"A Decsription about + the backend","protocol":"http","url":"https://www.bing.com"}}' form: {} headers: Accept: - application/json + Content-Length: + - "133" + Content-Type: + - application/json Test-Request-Attempt: - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh?api-version=2020-06-01 - method: DELETE + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/backends/test_backend?api-version=2022-08-01 + method: PUT response: - body: "" + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/backends/test_backend\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/backends\",\r\n \"name\": \"test_backend\",\r\n + \ \"properties\": {\r\n \"title\": null,\r\n \"description\": \"A Decsription + about the backend\",\r\n \"url\": \"https://www.bing.com\",\r\n \"protocol\": + \"http\"\r\n }\r\n}" headers: Cache-Control: - no-cache Content-Length: - - "0" + - "426" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAADJA="' Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 201 Created + code: 201 duration: "" - request: - body: "" + body: '{"name":"test_namedvalue","properties":{"displayName":"My_Key","secret":false,"value":"It''s + value"}}' form: {} headers: + Accept: + - application/json + Content-Length: + - "100" + Content-Type: + - application/json Test-Request-Attempt: - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ - method: GET + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/namedValues/test_namedvalue?api-version=2022-08-01 + method: PUT response: body: "" headers: @@ -267,11 +281,11 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129595078549&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=Qv8Bbt8S7FtFUM4on7QH1Yz47-Ia2Rt3Xzh_zMuqFhHttmLOwFYbpTOIhcXQIs6xOTNbeoSdfzllWTC-j4jpYRBWCRwiYx5dRInRk8_tHqa7mB49oGKlxjFc9JdL9bsFFcONarFXilc6PE2ydnS2NgIPYCrxWDiNLqjvu9PPEplWetBwZKom1s-vz44MW8G4T8-l2dd-x84Y8galpBNG6whWE0dvv20N5vmAu_tsWLZVRWyUk77-n3FhRddAgMSsrJUrbW3kOuYnZk70NaeHh-puUFTUNUlQOiu1W9Hmnur6Aohw3ul-cnw1BISQQGJDrgtZkSxO2M05sn5G5phkBw&h=_n9-MIv6tsD_OWyNHINjq624notDaS0h_9By4grsoxM + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/namedValues/test_namedvalue?api-version=2022-08-01&asyncId=651eb8e9463461104891cda1&asyncCode=201 Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains X-Content-Type-Options: @@ -280,313 +294,287 @@ interactions: code: 202 duration: "" - request: - body: "" + body: '{"name":"asotest-sub-nccflz","properties":{"displayName":"test_subscription","scope":"/apis"}}' form: {} headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ - method: GET - response: - body: "" - headers: - Cache-Control: - - no-cache + Accept: + - application/json Content-Length: - - "0" - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129748675866&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=nAH_qF0kLuEUZ45M5cC6WOjX5MCZarLLYXOdwqW97wdBUca7KIMS-UzbWOL8o8YoD3dfAcc_JM3cfESPO4pENmextd7g8CcHaUEXUsZXpDX8WNOpmWS_DtvDH92LEo-RD4iqj_n_DyBYbLxLUpGTjuBidfYsf3rebWdvy4IWFtFHrjHdU4tkHLNss82Um9pz4EHr4_F-sfxCemzK44aSodxiI72XREjF-ZaByvb7KXEnKKsonMlG3eeD-2kNroYS7RlewTe4dvzL1FQwCQnJpejkgfsXDBlx8uV3bXRCmw9Dc2wrjKnh3uSzgpBiXu8QmaHA80FnQZfmDDAPkWuRjQ&h=3hGHU89Osx-uK7CJ6_7UgOh4L7tchE9j-tSlhUlThrI - Pragma: - - no-cache - Retry-After: - - "15" - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: + - "94" + Content-Type: + - application/json Test-Request-Attempt: - - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ - method: GET - response: - body: "" - headers: - Cache-Control: - - no-cache - Content-Length: - "0" - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129901799621&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=eJs6PU2S6nccceLu0OnRzBsr_1Yi0vSUeaHVKkWk65oBJVq0nOVxCQhtpEgqbuoW9FapvYl6VE1XWO7Iq5_671yagGbv73ti1mzgthXZND44puR6wYY85DVjYsL2Na-eQdyrNIyrKOAdp1OM-qML0LUl1rUvEtyQnftydbLLUCNsh_ydrjD0NqoqmAg5dzC9gsZvHzKzrInFQl8GXFhdzzz1tK8Fl2Mq3_-q65a83UkCCS8Elz_R4ZQOOPe9rSLnWNBO0opRqSwoQBGCQ_tZMHI-_PsUIa3dd7doMC7Ae4YnauHyQiCL2CxV5_ePXp9Z5VCe_Ke34Tf9pLoCpDhEkg&h=5UFZq3YEcceIYVWzCjxztiMJnDDiK-2xZeEq4o90o_I - Pragma: - - no-cache - Retry-After: - - "15" - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "3" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ - method: GET + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/subscriptions/asotest-sub-nccflz?api-version=2022-08-01 + method: PUT response: - body: "" + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/subscriptions/asotest-sub-nccflz\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/subscriptions\",\r\n \"name\": + \"asotest-sub-nccflz\",\r\n \"properties\": {\r\n \"scope\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/apis\",\r\n + \ \"displayName\": \"test_subscription\",\r\n \"state\": \"active\",\r\n + \ \"createdDate\": \"2001-02-03T04:05:06Z\",\r\n \"startDate\": null,\r\n + \ \"expirationDate\": null,\r\n \"endDate\": null,\r\n \"notificationDate\": + null,\r\n \"primaryKey\": \"b9201622b86e44b797605231d7e2b5b3\",\r\n \"secondaryKey\": + \"6c75c9613a224661b9f11aa29ab79df6\",\r\n \"stateComment\": null,\r\n \"allowTracing\": + false\r\n }\r\n}" headers: Cache-Control: - no-cache Content-Length: - - "0" + - "871" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAADJU="' Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319130054923359&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=pFCx32SNZgqI8xedwRyCz5ybkcacGOjnEnLKFQp6yMmVc1rqYf1XY8W4SZWHmUyL6YLvQqACAcu8MQm6mvvAN8a4U2SfPSWx8x44rYV2U2g1sqb7TQ27iuGbXxdH59o5jXnpU_PBOMrQMoooZDuvhZ4RGCdCChgIegBRXJEIlJxjlLpx__d9XJoZlPJc9FH1gZ8HD7-OS_nEtgIXHJvfGPWbL5H8FAbICdo2eF33cn3b5mbfZg7-Nlr-Jy9L9EVLWch-8OPD4iYd4lrQByQDU1zD4cldLDaKU7AmvhkjhweYkSLgKQRFJ3tSN6UHZKYIPvFej6Fg1uWmzKtv2unZeQ&h=jEYgfRQv6drD7K6Ei_PhMOW0q0MCnDv3dFFAIu5Zs-o Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 201 Created + code: 201 duration: "" - request: body: "" form: {} headers: Test-Request-Attempt: - - "4" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ - method: GET - response: - body: "" - headers: - Cache-Control: - - no-cache - Content-Length: - "0" - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319130207890842&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=e9zz5v4tRyHwRV323xaDitd3mrgZfNlcN_uGAmPcy845KJAjTx_6b0UGCrOfosxo0X7ZM_NsK_XcxDqRpIBqjOnd6yVTAfn5wRkMts8HSsLNz5jtyMvgAXYN7hW5nrMfQLY9_ChunO9G2t-71NuiUE0CBbsn2jkcEwuYS1OHcXbV7cenCN7HEDpiNZwUPAnbPRW8eQvMzOegRUzc9xC3xr1q-C0v17vY8U6Jk_uNA3Hgaoz4iDQX3qzopChAHw-FFQeRlDWmDLtnSD6DQNq7sm7uiVx_0ikYP5WVxLafknudJKRe1a2RsxQcs9W5AlFfAsTIv59FaSNJUXS-o15oNg&h=VudqtJEoTlCF4tr6Uqq68OY3ock1kHQmK33Y9a4xWQg - Pragma: - - no-cache - Retry-After: - - "15" - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "5" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/backends/test_backend?api-version=2022-08-01 method: GET response: - body: "" + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/backends/test_backend\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/backends\",\r\n \"name\": \"test_backend\",\r\n + \ \"properties\": {\r\n \"title\": null,\r\n \"description\": \"A Decsription + about the backend\",\r\n \"url\": \"https://www.bing.com\",\r\n \"protocol\": + \"http\"\r\n }\r\n}" headers: Cache-Control: - no-cache - Content-Length: - - "0" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAADJA="' Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319130361014624&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=lBCfxDr8APVosaM-PLIGf9lkOaDfLLdrGOHtDusjGRUidM1MZvnZueKpYeIUT9teKqsLjFpnEXzpAktJx6CP-DIUY-XLHZ4LCyH5HegFSKDeQFdr8FVTl3fDl2iAMJQrkqgsdrfEKjC6qAOQhmmqlhlvYl_rCO0tpqvp1bacNq21KdiYC9RyOgJYg7A8fFd5yJUFkXkZ003cnjK9fGqYzTRp9P5wxy0x22viA40l688tPu6QIUQ-ojNKxIeRVpaM91tb0auaPw_yhJeqE5Ve9FHMKWVtDnQ-AU0y_hTwcY1JZV-wC7xA5LvRPTUjR4_1nXHWYWVaGPZp9Wy8eudMTw&h=dGdPW1FdniAB3L4Ljo8BfJN_T3vv1PNi3C_rwyZMXkQ Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 200 OK + code: 200 duration: "" - request: body: "" form: {} headers: Test-Request-Attempt: - - "6" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/namedValues/test_namedvalue?api-version=2022-08-01&asyncId=651eb8e9463461104891cda1&asyncCode=201 method: GET response: - body: "" + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/namedValues/test_namedvalue\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/namedValues\",\r\n \"name\": + \"test_namedvalue\",\r\n \"properties\": {\r\n \"displayName\": \"My_Key\",\r\n + \ \"value\": \"It's value\",\r\n \"tags\": null,\r\n \"secret\": false\r\n + \ }\r\n}" headers: Cache-Control: - no-cache Content-Length: - - "0" + - "401" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAADJM="' Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319130514138316&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=Hqm-lRF7l8Rl5KpK6uRp54Hj3b5NBk4xwjNwlc2kuxuUqvRFjxvRIQNnk-kdlXzMYpgrjx83Rr_hSoYcipdXhEVm3Ty2Qnip4F-KBLfhn6Rpaa1cXMq45wn2E0skOUboaqA4dqE_j13K_NUA4joBrqhXrkQfVRS6aLZYWOQttIUiIJ5ljRUbXffwUaWYPoGVbnb9ySLLZpIvz9jsfpncLs3iKUE1RuAXl-PnSx8xbO31S1oUcuUhHTfBUWSZCIKhhY8p_qoaWr1-3wAquuZgzfrl03N4JhHi_dPqa8Dn8O7bWDVO2FXQJQrlCBP5Uh3OpoJWWIxPYt_dsIQuEhBjcQ&h=507vfqRw6zp4wRCcjO_u17qfMINIaFcwtlsgRgmza80 Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 201 Created + code: 201 duration: "" - request: body: "" form: {} headers: Test-Request-Attempt: - - "7" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/subscriptions/asotest-sub-nccflz?api-version=2022-08-01 method: GET response: - body: "" + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/subscriptions/asotest-sub-nccflz\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/subscriptions\",\r\n \"name\": + \"asotest-sub-nccflz\",\r\n \"properties\": {\r\n \"scope\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/apis\",\r\n + \ \"displayName\": \"test_subscription\",\r\n \"state\": \"active\",\r\n + \ \"createdDate\": \"2001-02-03T04:05:06Z\",\r\n \"startDate\": null,\r\n + \ \"expirationDate\": null,\r\n \"endDate\": null,\r\n \"notificationDate\": + null,\r\n \"stateComment\": null,\r\n \"allowTracing\": false\r\n }\r\n}" headers: Cache-Control: - no-cache - Content-Length: - - "0" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAADJU="' Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319130667425045&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=CLu1J7t2zy94qY8Hqs_nZEB4WAzmgPpYLI6Qqqierj5UdyQ3Jxt1qnJrzv1MALPCtyhSCvChm1G6S79wNncW005eO4YDiXsNzz3prKPK7l27FzV75Gic2BCAterQnefst4beSx69B6D9RYa8_MQhGs4eanBiwuyxmgi9kf8qrj3tQGXp_m2nbZY9RQJ7-DPXMt-cV62qnfQdcRJPcMqOZZkvt3xxl8USSBvuPtCm0wV3Bathp1V2y4JwbxJiIHrMNEwE73QRtKZSGxLL07RXE1gTz-aYMo1_eHIrCufIlh-DrKXP2hvKz8VRUqkh1Jcb4jA3Vf2trwPMIEXpTb0www&h=qkizZYvqCFyCQDzAScNJ_C82Z1cyfl4YLv6h4Mb_Zkk Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 200 OK + code: 200 duration: "" - request: body: "" form: {} headers: + Accept: + - application/json Test-Request-Attempt: - - "8" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/backends/test_backend?api-version=2022-08-01 method: GET response: - body: "" + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/backends/test_backend\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/backends\",\r\n \"name\": \"test_backend\",\r\n + \ \"properties\": {\r\n \"title\": null,\r\n \"description\": \"A Decsription + about the backend\",\r\n \"url\": \"https://www.bing.com\",\r\n \"protocol\": + \"http\"\r\n }\r\n}" headers: Cache-Control: - no-cache - Content-Length: - - "0" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAADJA="' Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319130820548656&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=JPGCrb6qh7moa7VRtscsPAxpRsaI9hGN57KFBctlj4d21sRNKPBGjl4Vrt42H9hmW-Yt5Bu2BptoiihaDy-3g-BpSiA27G8UnUsTc4Chku60PSVonlBdYSHnduDnOLI2AXfO9r61KxtSI6ndvAiNrCquvetql88O6OrSk7ra5iFTyn2FHaC1q6yV2tA90OF0nptIi6VMrFoCyGby0jYnK-cmTw6---TT6sSEux3Dgm_GHVvAPKTDFZQ1rtzhCRSH_FZL8ZAPbGDvElhUq2KZEmr1KMxEypmiC3DE8B9FScc2_rjorZFxlSnLU8z-P0h3c6ZpHeOWinFJ8YAGkn3JBg&h=kUnDRUjZQMiew8hbExx69CkBcr-sq1Tp3n1UBCT7nmw Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 200 OK + code: 200 duration: "" - request: body: "" form: {} headers: + Accept: + - application/json Test-Request-Attempt: - - "9" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/namedValues/test_namedvalue?api-version=2022-08-01 method: GET response: - body: "" + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/namedValues/test_namedvalue\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/namedValues\",\r\n \"name\": + \"test_namedvalue\",\r\n \"properties\": {\r\n \"displayName\": \"My_Key\",\r\n + \ \"value\": \"It's value\",\r\n \"tags\": null,\r\n \"secret\": false\r\n + \ }\r\n}" headers: Cache-Control: - no-cache - Content-Length: - - "0" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAADJM="' Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319130974297363&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DgfIERN6zufLbBfi5M9wl6Whg0wSJpvJiRUWGqVhzOOyMUA6y_HqUDpYh97Ob9sNljrFtMr30S3xrxXVppCM3DNsJ1YSGPp6D_tLszPChh8gOFpf6CrQUwj_D_FH8816AkAEum6g_z52r8wx8amCSidTOqIfjchygy6XB1WXjB_G82xUVZiylm65sJaPzVK5EuBKLlGd7wv7uO1V6UpCDg3PnBBrMC--1qoIVURd7sfSBFF1jAOY4LqchR1VEdFz3CPEOuE2sXBB3ltTuU4BAK4N_E1Q98XmkcOsTL7nK7mvKIMZ9I7mBkCzAAJdPLrVdkvXAlT8G7AdPH52BUlBMg&h=gsoIDLftBIw6dnsTpIJV2kRppAol9-PoDb0SX42XLBA Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 200 OK + code: 200 duration: "" - request: body: "" form: {} headers: + Accept: + - application/json Test-Request-Attempt: - - "10" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/subscriptions/asotest-sub-nccflz?api-version=2022-08-01 method: GET response: - body: "" + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/subscriptions/asotest-sub-nccflz\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/subscriptions\",\r\n \"name\": + \"asotest-sub-nccflz\",\r\n \"properties\": {\r\n \"scope\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/apis\",\r\n + \ \"displayName\": \"test_subscription\",\r\n \"state\": \"active\",\r\n + \ \"createdDate\": \"2001-02-03T04:05:06Z\",\r\n \"startDate\": null,\r\n + \ \"expirationDate\": null,\r\n \"endDate\": null,\r\n \"notificationDate\": + null,\r\n \"stateComment\": null,\r\n \"allowTracing\": false\r\n }\r\n}" headers: Cache-Control: - no-cache - Content-Length: - - "0" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAADJU="' Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319131127421120&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=btsE2HS-vdJYz3Bu8K-vr3IJI4TeTcufgy3ireudFGmD-T8w4ngfkyTmxvihbN7doJ-KtOvD6aWfhdwkmCwffaNfdQavfJhVSL0c2XBvIzY0GXExMUAPmAkKwy8OvMG07iCcYVXW8T1p_eAkNTGjYT42Tl5xnyIb2z46J01DmBC_rUpuJ77df23AYzVCv-piwhgZFRNPor-mKPXB42MY3eWtt51VP2TkhMa8tnDw7h16sPl7j5Qs2knEL2GQsH-7ybDFoDpfIgExKR_700H0rkzdbvvZmKIh2M2-v1OGfBZzwJZbeIDV-crg9CMwWu8zK96BC6JNCDEsPYOeDgGjAQ&h=vTy5kuJn_r5BpTG8FDpJ21yPZ8lSMZikV0E6m3G4Rlg Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 200 OK + code: 200 duration: "" - request: body: "" form: {} headers: + Accept: + - application/json Test-Request-Attempt: - - "11" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ - method: GET + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/subscriptions/asotest-sub-nccflz?api-version=2022-08-01 + method: DELETE response: body: "" headers: @@ -596,27 +584,27 @@ interactions: - "0" Expires: - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319131280544879&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AYUkQQ1jciGYO-EuaR_Xmc3cZhYOm0g2tPeRS0BQ7YOYARP4Wg4WZ-OfJi2NiUHCtaehmcPH_HaETpGW4DDr-x4OQLoHnEpnmjocyvtrlgtfMdx2j39z3zyGucUasaPGwaEtY7peDVpw1OL0PunoMYR8O1W79ALvKp7rrnbUkfO-aZRe0874mrMEjdSeQt8Gzpk64LizgDXhSWwK-qVjbKwnneqQ7nKVYOOQmyQLK7zkX7bxplwBLZQORgGNtIS996xp5MgZshvRhpQk4xZbU7C1UDAM8AlF1Btaoz5df65UreMDpDYdzVB3WeM34FALtR-gUuffFT0yN96OBmqryw&h=1gLJ-iGxukKIBBud8ACudlpT_5hl9t7DXgUYh9-7JwM Pragma: - no-cache - Retry-After: - - "15" + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - status: 202 Accepted - code: 202 + status: 200 OK + code: 200 duration: "" - request: body: "" form: {} headers: + Accept: + - application/json Test-Request-Attempt: - - "12" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRQV09LVUgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319129441798500&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ofnklslakbNCIN3qiFR2rpUvp5JVGZbsWGQLGmpFmuA9eRRqWpkRO8gFnLpjHtGoCFJcHYnfcuirc5DJfIQidS7OWfiPIVgr9DziktcFTbtPCenEFEzHxjZtduILXmOWz_N0N0BXfSsPotPhszII4QGV6fU3Bj2Ez8kWjrVux-IllAeTvw84Wqzoe7Yu8Or04PqBdRsIr3jPTZYcQrh6nTB1EOUXoU3t_t1Bn5Tlc6PyJAR5xJTOMg4Rb2zQxtGk-gRZR4scFokx36R0qf0WBzWqx46e8ujoi-ZZVwwhjUVu1JVnbucor5ebuATKneYPAOgeGmlkohyzQ_ItycXYvg&h=KGiklNQWOugTZtp2iNMCHRlaJsjmvTcgMiyOrr9TSmQ - method: GET + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/namedValues/test_namedvalue?api-version=2022-08-01 + method: DELETE response: body: "" headers: @@ -628,6 +616,8 @@ interactions: - "-1" Pragma: - no-cache + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains X-Content-Type-Options: @@ -643,28 +633,25 @@ interactions: - application/json Test-Request-Attempt: - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm?api-version=2022-08-01 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-pwokuh/providers/Microsoft.ApiManagement/service/asotest-apim-sczlzm/backends/test_backend?api-version=2022-08-01 method: DELETE response: - body: '{"error":{"code":"ResourceGroupNotFound","message":"Resource group ''asotest-rg-pwokuh'' - could not be found."}}' + body: "" headers: Cache-Control: - no-cache Content-Length: - - "109" - Content-Type: - - application/json; charset=utf-8 + - "0" Expires: - "-1" Pragma: - no-cache + Server: + - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - X-Ms-Failure-Cause: - - gateway - status: 404 Not Found - code: 404 + status: 200 OK + code: 200 duration: "" diff --git a/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Apimanagement_v1api20220801_CreationAndDeletion.yaml b/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Apimanagement_v1api20220801_CreationAndDeletion.yaml index 0a710bc8158..07e279ea8dd 100644 --- a/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Apimanagement_v1api20220801_CreationAndDeletion.yaml +++ b/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Apimanagement_v1api20220801_CreationAndDeletion.yaml @@ -20,6 +20,8 @@ interactions: headers: Cache-Control: - no-cache + Content-Length: + - "276" Content-Type: - application/json; charset=utf-8 Expires: @@ -28,12 +30,10 @@ interactions: - no-cache Strict-Transport-Security: - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding X-Content-Type-Options: - nosniff - status: 200 OK - code: 200 + status: 201 Created + code: 201 duration: "" - request: body: "" @@ -66,7 +66,7 @@ interactions: code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: '{"location":"westcentralus","name":"asotestrupsri","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' form: {} headers: Accept: @@ -77,447 +77,968 @@ interactions: - application/json Test-Request-Attempt: - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri?api-version=2022-08-01 method: PUT response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"etag":"AAAAAAAgqXQ=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Activating","targetProvisioningState":"Activating","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotestrupsri.azure-api.net","gatewayRegionalUrl":null,"portalUrl":null,"developerPortalUrl":null,"managementApiUrl":null,"scmUrl":null,"hostnameConfigurations":[{"type":"Proxy","hostName":"asotestrupsri.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":null,"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":null,"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":null,"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"undetermined"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri","name":"asotestrupsri","type":"Microsoft.ApiManagement/service","location":"West + Central US","tags":{}}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache Content-Length: - - "176" + - "1795" Content-Type: - application/json; charset=utf-8 + Etag: + - '"AAAAAAAgqXQ="' Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23999" - status: 409 Conflict - code: 409 + status: 201 Created + code: 201 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache Content-Type: - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: Test-Request-Attempt: - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23998" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23997" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "3" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23996" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "4" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23995" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "5" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23994" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "6" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23993" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "7" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23992" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "8" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23991" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "9" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23990" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - "10" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: '{"status":"InProgress"}' headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - - application/json; charset=utf-8 + - application/json Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse Pragma: - no-cache + Retry-After: + - "60" Server: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23989" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" + Test-Request-Attempt: + - "11" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache Content-Type: - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: Test-Request-Attempt: - - "11" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 + - "12" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "13" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "14" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "15" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "16" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "17" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "18" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "19" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "20" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"InProgress"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "21" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/operationresults/d2VzdGNlbnRyYWx1czphc290ZXN0cnVwc3JpX0FjdF9iNGYxMjhhNg==?api-version=2022-08-01&asyncResponse + method: GET + response: + body: '{"status":"Succeeded"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri?api-version=2022-08-01 + method: GET + response: + body: '{"etag":"AAAAAAAgqZE=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotestrupsri.azure-api.net","gatewayRegionalUrl":"https://asotestrupsri-westcentralus-01.regional.azure-api.net","portalUrl":"https://asotestrupsri.portal.azure-api.net","developerPortalUrl":"https://asotestrupsri.developer.azure-api.net","managementApiUrl":"https://asotestrupsri.management.azure-api.net","scmUrl":"https://asotestrupsri.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotestrupsri.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["4.255.186.134"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["4.255.186.134"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri","name":"asotestrupsri","type":"Microsoft.ApiManagement/service","location":"West + Central US","tags":{}}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAgqZE="' + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri?api-version=2022-08-01 + method: GET + response: + body: '{"etag":"AAAAAAAgqZE=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotestrupsri.azure-api.net","gatewayRegionalUrl":"https://asotestrupsri-westcentralus-01.regional.azure-api.net","portalUrl":"https://asotestrupsri.portal.azure-api.net","developerPortalUrl":"https://asotestrupsri.developer.azure-api.net","managementApiUrl":"https://asotestrupsri.management.azure-api.net","scmUrl":"https://asotestrupsri.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotestrupsri.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["4.255.186.134"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["4.255.186.134"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri","name":"asotestrupsri","type":"Microsoft.ApiManagement/service","location":"West + Central US","tags":{}}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAgqZE="' + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: '{"name":"asotestcbcchw","properties":{"description":"Sample backend","protocol":"http","url":"http://www.contoso.com"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "119" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/backends/asotestcbcchw?api-version=2022-08-01 + method: PUT + response: + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/backends/asotestcbcchw\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/backends\",\r\n \"name\": \"asotestcbcchw\",\r\n + \ \"properties\": {\r\n \"title\": null,\r\n \"description\": \"Sample + backend\",\r\n \"url\": \"http://www.contoso.com\",\r\n \"protocol\": + \"http\"\r\n }\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "407" + Content-Type: + - application/json; charset=utf-8 + Etag: + - '"AAAAAAAACXU="' + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 201 Created + code: 201 + duration: "" +- request: + body: '{"name":"asotestdhimtd","properties":{"displayName":"Sample subscription","scope":"/apis"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "91" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/subscriptions/asotestdhimtd?api-version=2022-08-01 method: PUT response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/subscriptions/asotestdhimtd\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/subscriptions\",\r\n \"name\": + \"asotestdhimtd\",\r\n \"properties\": {\r\n \"scope\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/apis\",\r\n + \ \"displayName\": \"Sample subscription\",\r\n \"state\": \"active\",\r\n + \ \"createdDate\": \"2001-02-03T04:05:06Z\",\r\n \"startDate\": null,\r\n + \ \"expirationDate\": null,\r\n \"endDate\": null,\r\n \"notificationDate\": + null,\r\n \"primaryKey\": \"6163b9406a9345ae86dd94af1a9d3fa9\",\r\n \"secondaryKey\": + \"412c6d295b8948ed8fe3dbf01d39c7da\",\r\n \"stateComment\": null,\r\n \"allowTracing\": + false\r\n }\r\n}" headers: Cache-Control: - no-cache Content-Length: - - "176" + - "851" Content-Type: - application/json; charset=utf-8 + Etag: + - '"AAAAAAAACXM="' Expires: - "-1" Pragma: @@ -528,37 +1049,35 @@ interactions: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23994" - status: 409 Conflict - code: 409 + status: 201 Created + code: 201 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: '{"name":"asotestbhkvks","properties":{"displayName":"My_Key","secret":false,"value":"It''s + value"}}' form: {} headers: Accept: - application/json Content-Length: - - "170" + - "98" Content-Type: - application/json Test-Request-Attempt: - - "12" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/namedValues/asotestbhkvks?api-version=2022-08-01 method: PUT response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: "" headers: Cache-Control: - no-cache Content-Length: - - "176" - Content-Type: - - application/json; charset=utf-8 + - "0" Expires: - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/namedValues/asotestbhkvks?api-version=2022-08-01&asyncId=651d72a24634610f6cbd75f5&asyncCode=201 Pragma: - no-cache Server: @@ -567,35 +1086,32 @@ interactions: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23993" - status: 409 Conflict - code: 409 + status: 202 Accepted + code: 202 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - - "13" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/subscriptions/asotestdhimtd?api-version=2022-08-01 + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/subscriptions/asotestdhimtd\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/subscriptions\",\r\n \"name\": + \"asotestdhimtd\",\r\n \"properties\": {\r\n \"scope\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/apis\",\r\n + \ \"displayName\": \"Sample subscription\",\r\n \"state\": \"active\",\r\n + \ \"createdDate\": \"2001-02-03T04:05:06Z\",\r\n \"startDate\": null,\r\n + \ \"expirationDate\": null,\r\n \"endDate\": null,\r\n \"notificationDate\": + null,\r\n \"stateComment\": null,\r\n \"allowTracing\": false\r\n }\r\n}" headers: Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - application/json; charset=utf-8 + Etag: + - '"AAAAAAAACXM="' Expires: - "-1" Pragma: @@ -604,37 +1120,36 @@ interactions: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23992" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - - "14" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/namedValues/asotestbhkvks?api-version=2022-08-01&asyncId=651d72a24634610f6cbd75f5&asyncCode=201 + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/namedValues/asotestbhkvks\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/namedValues\",\r\n \"name\": + \"asotestbhkvks\",\r\n \"properties\": {\r\n \"displayName\": \"My_Key\",\r\n + \ \"value\": \"It's value\",\r\n \"tags\": null,\r\n \"secret\": false\r\n + \ }\r\n}" headers: Cache-Control: - no-cache Content-Length: - - "176" + - "391" Content-Type: - application/json; charset=utf-8 + Etag: + - '"AAAAAAAACXg="' Expires: - "-1" Pragma: @@ -645,35 +1160,30 @@ interactions: - max-age=31536000; includeSubDomains X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23991" - status: 409 Conflict - code: 409 + status: 201 Created + code: 201 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: - Accept: - - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - - "15" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/backends/asotestcbcchw?api-version=2022-08-01 + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/backends/asotestcbcchw\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/backends\",\r\n \"name\": \"asotestcbcchw\",\r\n + \ \"properties\": {\r\n \"title\": null,\r\n \"description\": \"Sample + backend\",\r\n \"url\": \"http://www.contoso.com\",\r\n \"protocol\": + \"http\"\r\n }\r\n}" headers: Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - application/json; charset=utf-8 + Etag: + - '"AAAAAAAACXU="' Expires: - "-1" Pragma: @@ -682,37 +1192,38 @@ interactions: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23990" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: Accept: - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - - "16" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/subscriptions/asotestdhimtd?api-version=2022-08-01 + method: GET response: - body: '{"error":{"code":"ServiceLocked","message":"The API Service asotestcbcchw - is transitioning at this time. Please try the request again later.","details":null,"innerError":null}}' + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/subscriptions/asotestdhimtd\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/subscriptions\",\r\n \"name\": + \"asotestdhimtd\",\r\n \"properties\": {\r\n \"scope\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/apis\",\r\n + \ \"displayName\": \"Sample subscription\",\r\n \"state\": \"active\",\r\n + \ \"createdDate\": \"2001-02-03T04:05:06Z\",\r\n \"startDate\": null,\r\n + \ \"expirationDate\": null,\r\n \"endDate\": null,\r\n \"notificationDate\": + null,\r\n \"stateComment\": null,\r\n \"allowTracing\": false\r\n }\r\n}" headers: Cache-Control: - no-cache - Content-Length: - - "176" Content-Type: - application/json; charset=utf-8 + Etag: + - '"AAAAAAAACXM="' Expires: - "-1" Pragma: @@ -721,37 +1232,36 @@ interactions: - Microsoft-HTTPAPI/2.0 Strict-Transport-Security: - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23994" - status: 409 Conflict - code: 409 + status: 200 OK + code: 200 duration: "" - request: - body: '{"location":"westcentralus","name":"asotestcbcchw","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting"},"sku":{"capacity":1,"name":"Developer"}}' + body: "" form: {} headers: Accept: - application/json - Content-Length: - - "170" - Content-Type: - - application/json Test-Request-Attempt: - - "17" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 - method: PUT + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/namedValues/asotestbhkvks?api-version=2022-08-01 + method: GET response: - body: '{"etag":"AAAAAAAe15I=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotestcbcchw.azure-api.net","gatewayRegionalUrl":"https://asotestcbcchw-westcentralus-01.regional.azure-api.net","portalUrl":"https://asotestcbcchw.portal.azure-api.net","developerPortalUrl":"https://asotestcbcchw.developer.azure-api.net","managementApiUrl":"https://asotestcbcchw.management.azure-api.net","scmUrl":"https://asotestcbcchw.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotestcbcchw.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["20.69.45.26"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["20.69.45.26"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw","name":"asotestcbcchw","type":"Microsoft.ApiManagement/service","location":"West - Central US","tags":{}}' + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/namedValues/asotestbhkvks\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/namedValues\",\r\n \"name\": + \"asotestbhkvks\",\r\n \"properties\": {\r\n \"displayName\": \"My_Key\",\r\n + \ \"value\": \"It's value\",\r\n \"tags\": null,\r\n \"secret\": false\r\n + \ }\r\n}" headers: Cache-Control: - no-cache Content-Type: - application/json; charset=utf-8 Etag: - - '"AAAAAAAe15I="' + - '"AAAAAAAACXg="' Expires: - "-1" Pragma: @@ -764,8 +1274,6 @@ interactions: - Accept-Encoding X-Content-Type-Options: - nosniff - X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests: - - "23993" status: 200 OK code: 200 duration: "" @@ -776,19 +1284,22 @@ interactions: Accept: - application/json Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/backends/asotestcbcchw?api-version=2022-08-01 method: GET response: - body: '{"etag":"AAAAAAAe15I=","properties":{"publisherEmail":"ASO@testing.com","publisherName":"ASOTesting","notificationSenderEmail":"apimgmt-noreply@mail.windowsazure.com","provisioningState":"Succeeded","targetProvisioningState":"","createdAtUtc":"2001-02-03T04:05:06Z","gatewayUrl":"https://asotestcbcchw.azure-api.net","gatewayRegionalUrl":"https://asotestcbcchw-westcentralus-01.regional.azure-api.net","portalUrl":"https://asotestcbcchw.portal.azure-api.net","developerPortalUrl":"https://asotestcbcchw.developer.azure-api.net","managementApiUrl":"https://asotestcbcchw.management.azure-api.net","scmUrl":"https://asotestcbcchw.scm.azure-api.net","hostnameConfigurations":[{"type":"Proxy","hostName":"asotestcbcchw.azure-api.net","encodedCertificate":null,"keyVaultId":null,"certificatePassword":null,"negotiateClientCertificate":false,"certificate":null,"defaultSslBinding":true,"identityClientId":null,"certificateSource":"BuiltIn","certificateStatus":null}],"publicIPAddresses":["20.69.45.26"],"privateIPAddresses":null,"additionalLocations":null,"virtualNetworkConfiguration":null,"customProperties":{"Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30":"False","Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2":"False"},"virtualNetworkType":"None","certificates":null,"disableGateway":false,"natGatewayState":"Disabled","outboundPublicIPAddresses":["20.69.45.26"],"apiVersionConstraint":{"minApiVersion":null},"publicIpAddressId":null,"publicNetworkAccess":"Enabled","privateEndpointConnections":null,"platformVersion":"stv2"},"sku":{"name":"Developer","capacity":1},"identity":null,"zones":null,"systemData":{"createdBy":"32329496-f577-4a3e-9103-429eb74063a6","createdByType":"Application","createdAt":"2001-02-03T04:05:06Z","lastModifiedBy":"32329496-f577-4a3e-9103-429eb74063a6","lastModifiedByType":"Application","lastModifiedAt":"2001-02-03T04:05:06Z"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw","name":"asotestcbcchw","type":"Microsoft.ApiManagement/service","location":"West - Central US","tags":{}}' + body: "{\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/backends/asotestcbcchw\",\r\n + \ \"type\": \"Microsoft.ApiManagement/service/backends\",\r\n \"name\": \"asotestcbcchw\",\r\n + \ \"properties\": {\r\n \"title\": null,\r\n \"description\": \"Sample + backend\",\r\n \"url\": \"http://www.contoso.com\",\r\n \"protocol\": + \"http\"\r\n }\r\n}" headers: Cache-Control: - no-cache Content-Type: - application/json; charset=utf-8 Etag: - - '"AAAAAAAe15I="' + - '"AAAAAAAACXU="' Expires: - "-1" Pragma: @@ -824,7 +1335,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM Pragma: - no-cache Retry-After: @@ -842,7 +1353,7 @@ interactions: headers: Test-Request-Attempt: - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -854,7 +1365,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394268261484&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=W4PRiLCaZT2qkp0WfZinGP58ZHswerxZ9UbaVYTZcAUA8J2jeOECkSVXKWwe60aRL_nPNwNGF8IiAsz9kOw9-isM0Kz9EtkymGFRe1bYzyE8ozYYHuq9sdJLGNjcVogz1zNXBvTAXFIjHF0UiRt4r5Mq5mclzeZEXgV4gB5CL59flZR6__yTx8jslkItE4TMg4YlEdh0t7Wm_P0etGrWFHHUCT4UiUNWlcstjXT2hKLgsHAsDjicY9azNRJ6B2r39GDTOcQI_pdaLhqCXskPEg3Ndsz8GDTHlvxQV3H1c569gp7OaBR837cVUMT9Oq8j_tJwfXCxLMvEP27myvsjcA&h=ReaYdxtNx1ub9HkJ4SarCElpUIcsVygaSN-fNAi30o4 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255295272586&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=GSBD8RucDbS63WGPB9N3SsmYHNCWTKCWB4KrfJEWDVB7ADKm7lxK88csf3SgKC0QvmmUMeLPn36qhn3WQ3Ja8N5ABJOs60SmSdVFZmHtneqapoaXMLj-31S2wfg1UA79qYerLvcPqaiIqvRhb2tobmXsdSnhjBBwfe2EdQPkyXOvq7GWeeey_bmo307mciLYyZrAjKy0Se1rvThqwI9Kd3-PAde97Own6k8n5VIHLcHOc-4dRbMyJFlcgfTekS8nGIEUFaxnMaUWgMj6eUA-DLExAAR2o63kHAGN-Gs9z3TfIHjwB4pyE1Vtx0fwXT3kbhZQ5PpX2a_bzQLdM9NyTg&h=qyuLx7GXquOoSgj2CY9nyDcczNm9AdfmGCQEqB_MF9E Pragma: - no-cache Retry-After: @@ -872,7 +1383,7 @@ interactions: headers: Test-Request-Attempt: - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -884,7 +1395,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394421513853&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=JgrkKRtNgr8T8zTxT0i7OIyRUF1EfPkrmzvS7Q8nvInXlP6lX8Yd9ZDakXh-g7Op6534AVvjyTaPtqSyqmzWVsxWbR101Sk44ye63-G6uy18muygsIDdPF5kbzxGT6lSA9JjlyOr5Qr8ohdzETHuhERQMGkDNppapNe8Oi2w0yenoD28QyyhCWH1DExUDaqkZ5c5VcS0HQXCKrZL0ysP-C8XGzAtK1xdLjFPvqsVcsz5wRs9otHkg7R6u-YUoYEzkazy-YswyYkfwadEFGanLeEEjhldBM_6iwA36zs304nowlVtNpfdfe3fljEZ2ajUgkKzPXqS1BP0Ox3fomE_hw&h=f5SQmizqk1vNZM53-2Dh3QVuV6ygC_UNCE5i8XcnD_4 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255448398268&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=g9ZK4RuvKjSxF0hUUIK5P7vzdfk_MiuafeIztcc-XV3Jzg0JWXx3VO11n0duA2sLaA9KYhJYG-rG9a7G_jgz8mYN2gO4Z7XbUyJ1uJOEbDTZJMrc6wE5vTk4UESuaHLDI5HDodgWX9527eyDze2xrfbz9HChrJsn3itc15khzcZofG9c0STjTxPM33EBQry9O2FBo5g6oi_VVUaTcAokZIu1TI2fpL1chOeFB4LKKIJV5XpVeNjbnW2_r2eDFQ0k0C-WnYBk--RK9MS1w2t6z64cJQ50SgeHxKXhxXRXDMTSfr_Ax4ogb4pVh5S-tIztTLtf9LhlyQacT2FmXeYfrA&h=l09pFHGs5PT486uqQF_iMQ_0PqWING2KvA7PnqcpLFM Pragma: - no-cache Retry-After: @@ -902,7 +1413,7 @@ interactions: headers: Test-Request-Attempt: - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -914,7 +1425,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394574639480&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=bMPlwuGWSGnRRYf_u7scJpKFqDt9Da_oY0GSk35oVsR8OqzeC0ddo-qXehhF8AJ1SqAjieV-UWN5KB5gJzbTdLCSCF4re9587JRS6r_NiicC2kTAJHangcBoc6MrE81DW6-Rh6KyGvDBv9UzzLlN8EXCSny5HFXBGohY6f_GJ7EY7ou_NrVn8Q3DE5vOdqu25r9oU0odO_BtwH8ivExcEnG7hDfNxtysHfr0MMV3e6iHOUuEoeyPmf7cuqm7dmVIbxmvndE6on9Nh-amSBUk4SiO60gExCOqYETQNKbz-JkmvjIXlfso6gWvUjwGF_fz6DL_OeSbYliEwRCB4VExVA&h=pAcOHsrnpDwCQf4ukgH5moF30enouu6GXwzYTB4keSU + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255601523907&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=Kfv7Uj74DwPLq8KHnTNSrerVGu2Z4edz5Pv1CukRpFB8nN-qjZI_9qD99ZNn1san4jtnVKIzDVYa11O8EH9F4aetN7tz_5Zv2CbN3pET8ZUkV1DEDPsOqpIyy0gnwX5wwKvXc-TwcU63bHJgd2v7izpnhABsgunTALfSFS6L6tOiSRKKAXX35Z5tddCJM7DMRxhOu8saWQdgLqL73DRGXdwrcb2tNm-mq17fuuuA-lIeLPqfYYB1zKfX7eUClAKRQBAMUTov1F98hL2Lkl5dacWizu7n1iNyLi1zqzTDuSRAbS587BKwxpLGgmCVXJmaP2jFZxGZx9SqtOhAhV8Igg&h=0BHGclMlcgl5KooZjPz4aztnDUd7arZ4lR8vV3LJ1YA Pragma: - no-cache Retry-After: @@ -932,7 +1443,7 @@ interactions: headers: Test-Request-Attempt: - "3" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -944,7 +1455,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394727765127&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=XMswSEESAjLfOHkp1a-vSE87ekZHD824C8rwPaJDM_EpBMgVvBYI9p14gXGxkISMzzP_NsysE7NK5WwgYUldP9A0Y1K4whj-sZB51oQrXVlaKcspqgMKif_0wjLkHptuAHEHS7Dr7XOo0G8UU8-6jaChOl9nypHWmL5GmA1QOg_pXb1sxns6Vf6gG8sR8mMIXYCWfQ31bSz37FLWDbCHyC_ta3UknDe7WD9WVJSTBWUHjXHFcZhqoYKxuWJN0KiGagrES4lVxNFCRY4dk9niFMEANSJF-FqA386dddXtMpS7-H8XZ41cd0TlwnMuTbkM4RJiDZE2cZ9JskTukESmHw&h=V-6MsInji8_kTu8cIjbzqVztRppsRKiOcf_BPDy-lRI + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255754805819&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=p-6DOyT0qWMHd_FnsoTjh8_LRVlTNNXtXvf1SGM0tIF8M-NbXhdQlRKd9uqdZiO23us1Sl46fLxhucddjp-DxwrEQh5AVE5iq4ijGfbSYWircXG2h3kNleql5OaipsOJdFarv0AP-MT2jVb2R-6LfgZLEYq6SJY1EduDwFWZlo8oUY8gHz0rqr6VPflmtQDE4Vj5RbgXYAsLtX_ou1URUHSM91P5imcUpZEJSea-S5fRm6Qai-TogaJIsial2Me_wNcXNMkbuYmBUlA_gWtxvmG7hJl7eAvRgdUsrUEEutHDPnfg-bs65_LHiMTIWPACjIk0eNTcqPgNePWwqKI37A&h=LO0Fxu87syRddTp9Gcjgts2S2B9sHa9jNeh321tLX4E Pragma: - no-cache Retry-After: @@ -962,7 +1473,7 @@ interactions: headers: Test-Request-Attempt: - "4" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -974,7 +1485,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394881515809&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ZpzGaYgCLJ1GhcoBuWMzHJKoDVzMvp80gBi30ngGPeWqDs0HIfGuy4Rlhzz7sRIzQR_1mRNbWCJe2gBlLKW_AgOvpJepHwsTqzq6Rpaq7mqjyCh1qpKHhgDeiPWz19NcDMx0MYXy8cMzOQu-DG8msZuDRRmTT5ioKUlgqYqZTkBkFP7FX6IvDxYnG7mLk8J8uBWe2ib1vNeQVX4Ps9ftT2nTOH9h0608DoJUdOD_A3vSrnRgkxoZTWbYylyJ8ZCVinh1vY83FBYXS79iMxubfEIwFfzg3nRTZKTUZ1MsbfJRuYob-XOzleMA0qOCBcyteGdVeTzT8KxBCiSbicEhAw&h=fMWEANJ-GFBGeQKKak_M0esqfN3iCvTnv958ypVz-sg + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255907932121&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=PDi4z9sAAYgRP5kibXo42uPWmon89MnIsHz-c2rh0nlS16vD7592JUsPlPbG1ruEmlYQsrCkTC9xswGgN8wdJt6Pj70PMuut5IGZ7OJ20wJIy9GtLB-_j5fyjeEN1XF-nWrOBY8MFkZJ_mVkLe4wJ9jQSOzN0BLDPARMUa8Wt3jloHB1Oy_NYXLXVZg192sCEWlWd70K0fJxKovSaS7O9sT0UUBKZis65Wcuji2g9jHt0U-DWQP3Zso8k7hfzbE7C4VGinXsVELYljv6HUnaNUGUhAMmD3L5Pedn0CxuWIzgxr3JsqpQ3F9ditPzpS81l1F2Aw4DpD717RsA6gIeww&h=DBlZZBJKwrvlmE_IlRv0hzbbOEDJ8k5dqFdJCFi_4qE Pragma: - no-cache Retry-After: @@ -992,7 +1503,7 @@ interactions: headers: Test-Request-Attempt: - "5" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -1004,7 +1515,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319395034954089&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=IBSgKlO6dA9XfToAfmhb9P3jnqTlAmu8-F3iGt5Nn3a93Hr8TCqYatLQqq_DfFJpZ1bxlvUyzwwxYv6kIfbAJ5S7KTlmhrxwIYMc9kzrI2kgBvxqUEL2Dq7q22NNrippIfJH3uKuofusmt0FxZB6J7oNM5qkOvu0gJ1ev1sTOS1iOfVPG2GW-M1kylHR2Nor8t2a2SwXLL65hSdN6kCsmh4Xpb0FjUR1DCWg6UFTNsF-gUJwWRQJSSrnlNQd4MtjB0wBhdOB-WZ7uPSN9BW68bdlaVEqNuwKmHmTjdd0kGtl0W7SAn2VKI1n6yFGoBqKlgr_1fYvlranWAKmOqYlUQ&h=v8TwTCd-BcL70jZG3SNRZOC5Us3KofL_XYsMyzaVgOE + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320256061213381&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=XjLbRh8d95RmDNpUdkpGJpplMCKSJFta_ChYMXsH3IJy-s3DtbjRls8EgZP2Ke3qGLGg8ypW8ISMuKgJzer11xEoiI08ya1eCF2sLRNV-Q0wNSoGN1K7ckoJeV4iRCmop-S-wIjDaMkZPa000fYZecESZ2NkQIZz-Nw-3biCQcEw8yeke2yH7C7lIlVxN1amtDJaDtfG-1jADniUnv4U1TfENTBUxDGgKJObBK5GMb4E2yqg_GAbu3OxBk6dTmtbRqMKnTlYWH5uipHMBJU5C0tGqSIUgxHB3CROth11Qgk48XQnHJEkaUSTVgxtbGVTYRs4o9Ar9QEDkn2Ckco8NA&h=JuyD7IXyJQKoYvsA9uvbs2WJ8L9GlIYW6nzjaz8obQg Pragma: - no-cache Retry-After: @@ -1022,7 +1533,7 @@ interactions: headers: Test-Request-Attempt: - "6" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -1034,7 +1545,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319395188080106&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=TPFCeaVQfKmffVFGjDpenxOo59iFF0lNzGUmD7sA5jV8pKFqc_L6QBqEW1SsErpFabRR9SAPdBERYYtz97WFuNzt-HQaQxiqEshaUpE38l-8uvMO7OlsJERkCW9pUPdrBcyoNru9opnhuKGXSWTmniL2VT5RWc1V1k5Z40f69y3LMMybRe1i3tpEcfwZ6U5k68QZnEy23PFGMrMkMBekNz3mf5H2FX-ESPUdAfrKscYV4UQpdiXdeBXzhjyAUSI9vuGe4umZEz6kjuX2lnTQGfl9G0-gfMqwtg-cmmCaqDDR02YhFiqcx6ztRJBrfPcRHRy8OdsKCvmQ9Zg-Iy6k5Q&h=Ll6wkT43JxtSeoNspftBGow_oq8b_Lj1alhjqVRNbY8 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320256214339024&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=Au_zf5j7KUFQexBMq1sW3KUIrycZXtGyuFw2nLKD8MTvnRU4oJocwE4ClZpE5b1n-0HGZE9BkwU1in2s7VDhOeXTqQNgEuuuhYaIzpG0aWy2-iCcKYLoVevqHOVOZZYS_1bGAsRrHBDbLgntkqrJJBHBniWcdfQ1YDXPRG77GGJx1qw6LKU3e1vVPauShfON1_QmiPGlLoAsFCqcD5mAEIqkVmKzaruZqtnKKBKK36TJegc48oJDvJXuLWgQSZ6TGaHI8zso_byfvSCMlvwE7fZseUoZ6AE9ZYTkrI6uWX9YXdxgA6ZNPmoZ0-JlOOt5bf-c6_YTSgsZPo_O3E7feA&h=RTJT9JAWsK55299NDa1ForDpew5ZRXiaYRAF6IQVxZM Pragma: - no-cache Retry-After: @@ -1052,7 +1563,7 @@ interactions: headers: Test-Request-Attempt: - "7" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -1064,7 +1575,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319395341205288&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=PM3bAQmAEfXj8Kv82FnWCNYoLbqoJCEnRpj9lb_cHpscodbItqPiHGtNzfqD3vkazoUjHhNVCuqs_x6Efsa3Y4_wdc7O8ZqgY2NJGW8wqOJqT3ACAAZk0owPeiAqSZnvuOJQwYOgkBWgCVWlZzlqehIoUG7yiMzuWcfXVaM5ihqmE3K74KdOWrgR4_LrOTJxUUgpP4bKh6G_OHKiBCHjgNWRuouJd5j6KensISgE75GFHTMke3R_sJgRTVA4aFAlA7I9O-PNNm-9MQUU1v1frvw7lmwaXySTKfOLGrdLZzJhK80DMvrhfeitdo9PXD7ze6TDVv4e-8H_20hxmdxZlA&h=6f8GCCoR5LIIgFp7baDKekWmdLGwJTLOVb31mwSmlMQ + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320256367465105&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=cuntu3KHkhEOp7Nv5uqSh8inFiHuMwuDqQgJyIXwXbKY8S6CkqrRButgqekJf2n5L0fHtnZM0mwXV63lGK0Zl4Hv_xfhPyPEMQrpJlXPFrxgAHA7Ru2iq58cJ_8sQL9ktjb1hLROJM1uyfFd_gmB9z4kDpeoXrIUt_RAP6EejEAg58dzcEa3b9FMJCQQ7BWNR0T4IOvo2y4Ph80hafdl8us8F0KERmUSHlNBVe3BdQvN_5-NmjswMlVis9YgnLUbknU8VUyJEY54Gs864DfCIJGwYUgNsj0yKEClqIJWqbE4p2eQ8pyhOH4PZwwMARNeydjNEd5ExaUKm3EkubrPEg&h=tUBzEsWFMx4RAfrRr9T-ReY8gX0u7VqZzy36oHm9Q0Y Pragma: - no-cache Retry-After: @@ -1082,7 +1593,7 @@ interactions: headers: Test-Request-Attempt: - "8" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -1094,7 +1605,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319395494643380&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=ki14ASEmvEv_nJjl9h7LoT9dbhoQObTyHhjOBcsX7nyZ2ouguZjwOY9CWUocCFWNbDbJ6IG7aP5Cn3F0Xvsb7B19p24oDMweqErjtjqQqWJS8jCZkIxFG5w14LDUmYgnmj0TlL57BrzfYRUXQVeDhwYbjI5f53U2FTtCjwg0lq794v5x1IocLB-9TCsam021n2hKbgya9kL5M7VnONxnoKQQPnJU55JhWC46Btth3DOiuD6WvvTT0PTFB8KDmCUZX_jsYHtgaNi0BnxuaZFqil-pVchEZAmQ1B7aFTLJ5Em7ygNINHOyrCGE9Psm7kTZtBuCWrdXYExbKGB8XUjkqQ&h=XCtZQ2GI7nBrZIToPb4hv63uuBl9gppFqnVHsdVxLF8 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320256520590757&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=JR_wO3cDUrh5lABCm3frWIPzoERZhOxAKyHKqnk5s2Us1bc6bSqdDuR2ckeZgry4Q8vm1IvbtoyMUpS2sCWEhMBtgpnjsVYeFi4iZJ6FK9CBsJ634o5IF5RmIlXGrSG3iliD6m-vnzYlGEWtOiBlS9ZfEcVnJK-W1wjm9H4GGRxTHT6LTShUs8bjdLwe1x0RABpR8l4QAfpR94_0O6tHFr7tZw7jlMEamaWov9fmA6gHbDfg3fGDlRJscfeps38NMgYpDcVgCX3-C9fRRDZxN_iO3UexOk_Q9Rg0OBs0s1Zuae4FFFpPSXUpjg9lR5CxKvRg0g9wo6dsMa-yZAK8mw&h=IARYzC0cKeuuwAatD_x9aZ7RbsTThpaQtYLeN2f2GsA Pragma: - no-cache Retry-After: @@ -1112,7 +1623,7 @@ interactions: headers: Test-Request-Attempt: - "9" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -1124,7 +1635,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319395648081455&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=VGjUPZI6JJQrmdDalzkKhb2o-dAGuY5GytvUxyezV9ZtsZXpCfIDSKgCGcCigGQ6MQw2Dw4BgPKduykqTqR0_MkRAkmc51bx69wCuFegj1ZeWHzDiupAq_sHKr2Br51uYCrKqJsbacixr_bC96qk3f85XKRqLE4mfHUKppV4yt-ytjaW-mwd1W_5AFfUwufZsBdPerLA75JEutbdFL2iudrl66wE2XJntY0dulehB0VUbkpvJ2-MUq3PUrF7VmqK-AeJlI4vk85wIpBmE6LUA3mSnh3SJP2HCnB8aAKuYDa_kS7d5MVpKn_wq0r-znEvxWTgIdMuu_n0NCikCjL7NA&h=wlvJYCjhLB61EeLgV-puibjbjSA04ghE3AiqfnTFl14 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320256673716009&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=X9y7JZNintT3zyrJ6vISUKyF_I6nHK8wmELwJpe_6doAsx3T6zGAeiy8xIgFZYJnVArkJU74wETtq7Q0tVyX53KWEoFNCivxFwg-ZXGpxZp64KnG2oG2G7l3NNEPWU3wj23XSMdmfJfDNzbEgHiVuA20jmlObJhzWU70uEDYpsLfvVK8AULllwfxw51Z73PHt4xUOjnn_anrFxm6AzSdApJ50pqdGhHbGuqc8XHRObMV5urpxYfhYRRrFYGEAXtipPSFr9yH0VkLzGpeUXapp8F899MYfCllkrCtuSZdPJMecwdUvp13Ftz1U1dLeFfLuHFs6c8EDoLw1dd72eWw1g&h=3geK6O0t7NdWC5Ci9a5bhcobYJ1W8hegOHuza7J99V4 Pragma: - no-cache Retry-After: @@ -1142,7 +1653,7 @@ interactions: headers: Test-Request-Attempt: - "10" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -1154,7 +1665,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319395801362916&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=h77-xrMyiM2hz9HX1rtEeLSQy1xn-J0gc8oiheiK_1RnmjgqTH9xHm5CB48wXiVI2vz1s0EIQyqdnxj-_-RwJWXMuA2zbxqjFU_o_Q_mnDZHul8YE3c-pnUBIfZeQ10MoqWesjDsaIKIanQdEarniv926myQgkO--vV5ifVUFAWLLRrn388hCksrNIVZlHuLYsxcGZi-Sq8u44vR-PiUta234gu7pOVszED3Wo-lCXR-FWEeoVCab4lQLU2YlrFup1NB89HkkkR93KKcX75BfvQUSX8YSuVwOXB4GcYRy29vSSNKeoXbP7KLqwUQbrpWbfbd2aVTUfCkA6oCW0wiyQ&h=8L0ozj4TalCN3I526s3srWpNEKkSZI95V_QMc9LqbTs + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320256826841842&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=Lna-JKK41Y0a8PEaFFEQeDMAZOdlqq1ECXxd-3PxHazVQMFOg_ppt3qG2r7gSPIZnb-WRmzgMCI1QWA6U7Zx7-TmwdKqQbfV9PD3CyRu7upGBfhYCE6cnOsX5eljQGm5xwsWKKbJnTwW0I0dXsmmJnaMY05auIa6B_pgGf7axQSJvOe8EsCNFwF2Vhs50ssQhOof5QSPElaBm_xya0XtOR17a7yWWsXwYuDbrqDgtg3kFgL5HXOJXKeWCoNFPGMPUEXalGFWoTI26Tj9EOmZlnajnq7-Nf7j4owlqW_u8LtBBpo9q2w0mlJeX89-lu4U0IKhWEGY42rRqUr-F2pi0A&h=3QFbr32BDyfXOXHqs725Ob_tHxnu-ltLbBsQVkYtqu0 Pragma: - no-cache Retry-After: @@ -1172,7 +1683,7 @@ interactions: headers: Test-Request-Attempt: - "11" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -1184,7 +1695,7 @@ interactions: Expires: - "-1" Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319395954488173&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=NmRivI_jDUS_0DLNbLwU8Y4d1vf5b4fIe7Wbt5GnNwWYH6KKY8wqGjESEv0WlcPAiY3BsNYJwj7EDpfqbhlXYF6_1Y1r4W5XANp1-aLHWjy_v7qVKV9L3zGzBu1kXWBsgAMzHO2lMg9DR5x-bQO1eC0XE1_LKjDwGamz4GTbfGhj3p5MDt13OZ9ecEK3iYhFIPuD8H23a32rbl4xxjJRaYTI6ju1z2w6mqlZJmMF4hhwIhzrlipCqNQjJ25P-W7slxoT9lWBtzNSFHAdD1DO9PA0vgYETWTn9E9CFqRfGCp4-shH13vsmY4um_8nylaV0KtX2FoIIqQ6hf6uBVXuig&h=ZcNQabMQSdw3O5uSTtjMt1lcVdrvFBZ7MHq_ljx3dm8 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320256980124463&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=Md6zwcL76BUZ8FpIHscys-V7gA9QabNRKgCcL6UMQ400ISUBGbPigoQwmF05ZcBVcS3hCI8H2VBWj6E9X8r5YGzkFs84llpj35En7Yy1VRpI-XtJkK7jU8n1Hq1KwjK6RgL1XnesXRLSZXmApEuTnL5dSHraDJwjqkABE8oL7xc-80Wok68rC9VgGNXOCN-c5OI_DdFfp7kG_N3GNLUQRrqd-ZV6RpMDrkPvuDWNdiW59ZDodVpm5o6uIOYV-lzk7jO85kEVjf_RmM7D3hit8x8_EUcP29Uamvlsy0R2NhpBeYo1HqpzFE0bGYZ7pukl17BLYIZ9GFA5S2BnqWgsuA&h=WD4dZRcSSY1XnH1XqXRt9RgzFoPrr7jyMbhrLse-S4k Pragma: - no-cache Retry-After: @@ -1202,7 +1713,97 @@ interactions: headers: Test-Request-Attempt: - "12" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638319394114949715&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=DnoMr-7ATlUCGf3KmyhXdX-SjsLwUg9eBgGqJB0UcBvPFMdwxvYcTyJOTLtnKNIxuUS7pB4Zl0ALzW2y6wloWkVTU9sxJfd8QSw-fG4871HYnw__FYEcn-b_g2b0LgjEWY1iQNs9YP1XYzSnCj8bePNWEUgQRhx8pl1gt94qjEtFOjqrWW_lxTdjdBb0RU-alFH12jj9Zj6Gf5_YPBnruI8kJGEvj_Oa3b_XI5lOA9b7RLOyjiLrx5ce-ynGmHYVCJy_wAKMsyBM4jXGnLDwQsYILCDLKfRifiPCo8I7l-daituyfHRDSPjlCpyx9glcW_-bY9rYbzup679WkAgBAg&h=IAwiJtBEodYkkD-Gq_s6tAvkq_KznwNBUKAKSUy2Rqg + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320257133249241&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=oTWkjBwxfm1jGCECwdHBqMiPQL3q-bVwW4ICcR2x87Ozw9US45tqaI4rH_0y14QJ0tSZNDOJyFaQ-Tx34jByoSq23T6iZHNKoLR1eilF3oIsQhcEQWc6T5ZZcsvIEU1776zTs9bGqTN_jDdgpgVN0gTqKyRbMYZ453yfdxK4NpfHqIH-nEXZlGFMcKl2yBops95uckFec9cbvHPmp_2hMGw3sAisMUfTpSlN4h3CwrR-qsoIBUfoeGcB6oUWq6TeeI-NJwJvWHwldu0QxjXw0wXjJeSZ-O4MgYqr7lwe-DggC24dyIlPJvb9z6CYUCbAUlcOuM1de3LLEH44r_J8UA&h=WAqu4b_rFspXqGp4mJNkfmNK6JlntvastAVwn3HivMc + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "13" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320257286218742&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=WWoX2VoJprqJ6zygsBbckFWnh6tRgH7fR0bwhNxEq-bCyHRK1LeCzIaJTtiAQTIESnTKatsZEpWCp0cNDtu3pjYQUlQw5ByuzJt7hZYDBIowgRZwFDs26XFrRND3_Gjn7pRP6f6mBP-0po1e_w-tE3fUuHRKhRxylmvns9BcvshMYB-BAfEGb_ibup5zFMy3TmAAI1FkuVV0Gu7D1zvQh1Dvn8w10pEq04Ma0Yi4hWPy6KrLfRBth0Tl_7lK2bD5c6Z41VfIbag5q102fsjzExWkI0O4c-JAgCbC3PNjbKL85Hj-sq6O68w8csgA5nEiCeRFP4bTd4XJvKEPjb6Icw&h=kefHj-o_bNpVRZGXSCBMR2mlSoNbr8T6Nm2si0-xMyQ + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "14" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320257439344356&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=OJXO_UOP8zBOL0vCIfULRyP8GkwoWMN3EzJAJkmEhrICDHdi0gc1Z3hTI64koDuFRV-tLLSV6YI2NVLjdjdUpROCuxZBQizILwHifnezu9fPTDgCVxlpuht4Aeouont8wDrrcl5uMTN8pNFOAiofEep31tXM5qB2H8bgKsm2Z-XDDPVnvK-d4gR7MyBL16Md1smRRMztXE34NwPQpGFL1r_3xHUNGLbXM5o0LeXKffy2R-hVX_IKGicpBJ7HdohmMsAT79zCaXg-foHBHH_p0PgzfJMuLe1ceSaYhayd89Zb84xvSj5wbGryVYpynMuY2i6r5xI1GuFuNXsW4loDsg&h=pg1xYBa2csjzUUKRn3zD2tDW_ieKXZ_ce3SQV_ls9sE + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "15" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROTlhaR1ItV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638320255141990981&c=MIIHHjCCBgagAwIBAgITfwHPkDeMFREo3srnmQAEAc-QNzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMwODAyMTQxMTEyWhcNMjQwNzI3MTQxMTEyWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKitd-rzzV3Jpc3YK1S1KKsqeYzKrh4i8pFWP9gLw89VlCaB62w-zpHA-lwk5eUIBJ8DmUVN_5GN3fhBC66i_54fnxRwkxGGH_mth4r-Yz34khtX6VK_-4Md9Sq5mtTG0LPoIxGRtzVAvZEQOo-1rctARs4DYwTtef2iMKuLkeY9c6WEqV32b_HKhJa2AYtLV86N4Vz4NbJEU1xGyfpge2zzYHdDR70WCS81xhjl3sTbt6WeRx9xGS6QQsrTK2g4B2fGFmeB5KScCIdpApMEUKO1_PgV9sSZxFzHK1owPQiumJwWAagaJm2aNP7LdUiTEF0eBIA309r204KL4-kK2HkCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQ0OhiKnZOSPxrLWG3-btZSrlAOyDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBABSP4ZDyin7llkeZjLnLnduUX1uOkBJxhEHka8Ayx4WAiovVTkkiJgPVuZ-vlWUCbHyh6Pn4hPsE4BXCFkmg_9-edk6GL21aBvGRzZcAi7ydNt28n5JvhiYXfaKAyeH_syBvfWVYKwGbKirZQ_mf99jkUTJGwWqfqLEEwESl6Q5uYLxdclkdd2cc_LdIyeF1OgjtS1q6LRhZb4mrtErtVbH9oSTMAjRet4T4hjGNKwvxpiRsqmCsvszKZwOVQePpd8DJXGOhf45jXeVErnUunQDjOy2Ew7n_SO2ZRmDI27adEZJO8D7jeoDnpyX6pAWsLwqUnDCIGeX5RfiDIexaExY&s=AwS7KPP26PCtpJsb0FjBxAj2p6odwwjCd9p33sHZKWhwHB5ufFoSubY9d4kJF1kDq93y2yUGnlB8Pq6wp9CKvSH5v7TotZSOw_rebYWBuAAZ6Y1RDx7gLaT2TmOUa0N5lCOr4wbuGnWHM8peoVkNoQHZTODatykaDt-RTWm1ahrbOp5BKz-dZoRlRRzbf_mq43o8N8wgXUpnuklyUxRXV_CP6tJ6ynPZnQG8OstsYpi4adXUXnt4uV9nxkecPCORk5bOjQLBjFgQ3pFlBXHofyCXd5YYHpUHP94UwxYYTQqC4Zh1QjgL_kDo4JnVg7KeYAKDpQ2FaQAMFWxXyqF55g&h=xGm5wqzjXkkT5IEcGfZ_FTph1aM8OzPUiQ3TTqN_7uM method: GET response: body: "" @@ -1230,7 +1831,7 @@ interactions: - application/json Test-Request-Attempt: - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestcbcchw?api-version=2022-08-01 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri?api-version=2022-08-01 method: DELETE response: body: '{"error":{"code":"ResourceGroupNotFound","message":"Resource group ''asotest-rg-nnxzgr'' @@ -1255,3 +1856,105 @@ interactions: status: 404 Not Found code: 404 duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/backends/asotestcbcchw?api-version=2022-08-01 + method: DELETE + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.ApiManagement/service/asotestrupsri'' + under resource group ''asotest-rg-nnxzgr'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "234" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/namedValues/asotestbhkvks?api-version=2022-08-01 + method: DELETE + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.ApiManagement/service/asotestrupsri'' + under resource group ''asotest-rg-nnxzgr'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "234" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nnxzgr/providers/Microsoft.ApiManagement/service/asotestrupsri/subscriptions/asotestdhimtd?api-version=2022-08-01 + method: DELETE + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.ApiManagement/service/asotestrupsri'' + under resource group ''asotest-rg-nnxzgr'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "234" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" diff --git a/v2/samples/apimanagement/v1api20220801/v1api20220801_backend.yaml b/v2/samples/apimanagement/v1api20220801/v1api20220801_backend.yaml new file mode 100644 index 00000000000..ea136b61aba --- /dev/null +++ b/v2/samples/apimanagement/v1api20220801/v1api20220801_backend.yaml @@ -0,0 +1,11 @@ +apiVersion: apimanagement.azure.com/v1api20220801 +kind: Backend +metadata: + name: sampleapimbackend + namespace: default +spec: + description: Sample backend + protocol: http + url: http://www.contoso.com + owner: + name: sampleapimservice diff --git a/v2/samples/apimanagement/v1api20220801/v1api20220801_namedvalue.yaml b/v2/samples/apimanagement/v1api20220801/v1api20220801_namedvalue.yaml new file mode 100644 index 00000000000..6e9a0ecf1bc --- /dev/null +++ b/v2/samples/apimanagement/v1api20220801/v1api20220801_namedvalue.yaml @@ -0,0 +1,11 @@ +apiVersion: apimanagement.azure.com/v1api20220801 +kind: NamedValue +metadata: + name: samplenamedvalue + namespace: default +spec: + displayName: My_Key + value: It's value + secret: false + owner: + name: sampleapimservice diff --git a/v2/samples/apimanagement/v1api20220801/v1api20220801_subscription.yaml b/v2/samples/apimanagement/v1api20220801/v1api20220801_subscription.yaml new file mode 100644 index 00000000000..69a38b4b4fd --- /dev/null +++ b/v2/samples/apimanagement/v1api20220801/v1api20220801_subscription.yaml @@ -0,0 +1,10 @@ +apiVersion: apimanagement.azure.com/v1api20220801 +kind: Subscription +metadata: + name: sampleapimsubscription + namespace: default +spec: + displayName: Sample subscription + scope: /apis + owner: + name: sampleapimservice