diff --git a/docs/hugo/content/reference/_index.md b/docs/hugo/content/reference/_index.md index bfa30d13109..204632b2256 100644 --- a/docs/hugo/content/reference/_index.md +++ b/docs/hugo/content/reference/_index.md @@ -576,6 +576,18 @@ These resource(s) are available for use in the current release of ASO. Different |----------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------|---------------|----------------|-------------------------------------------------------------------------------------------------------------------------------------| | [Workspace](https://azure.github.io/azure-service-operator/reference/operationalinsights/v1api20210601/#operationalinsights.azure.com/v1api20210601.Workspace) | 2021-06-01 | v1api20210601 | v2.0.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/operationalinsights/v1api/v1api20210601_workspace.yaml) | +## RedHatOpenShift + +To install the CRDs for these resources, your ASO configuration must include `redhatopenshift.azure.com/*` as a one of the configured CRD patterns. See [CRD Management in ASO](https://azure.github.io/azure-service-operator/guide/crd-management/) for details on doing this for both [Helm](https://azure.github.io/azure-service-operator/guide/crd-management/#helm) and [YAML](https://azure.github.io/azure-service-operator/guide/crd-management/#yaml) based installations. + +### Next Release + +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 | +|------------------|-------------|---------------|----------------|----------------------------------------------------------------------------------------------------------------------------------------| +| OpenShiftCluster | 2023-11-22 | v1api20231122 | v2.9.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/redhatopenshift/v1api/v1api20231122_openshiftcluster.yaml) | + ## Resources To install the CRDs for these resources, your ASO configuration must include `resources.azure.com/*` as a one of the configured CRD patterns. See [CRD Management in ASO](https://azure.github.io/azure-service-operator/guide/crd-management/) for details on doing this for both [Helm](https://azure.github.io/azure-service-operator/guide/crd-management/#helm) and [YAML](https://azure.github.io/azure-service-operator/guide/crd-management/#yaml) based installations. diff --git a/docs/hugo/content/reference/redhatopenshift/_index.md b/docs/hugo/content/reference/redhatopenshift/_index.md new file mode 100644 index 00000000000..eeea90ebe47 --- /dev/null +++ b/docs/hugo/content/reference/redhatopenshift/_index.md @@ -0,0 +1,15 @@ +--- +title: RedHatOpenShift Supported Resources +linktitle: RedHatOpenShift +no_list: true +--- +To install the CRDs for these resources, your ASO configuration must include `redhatopenshift.azure.com/*` as a one of the configured CRD patterns. See [CRD Management in ASO](https://azure.github.io/azure-service-operator/guide/crd-management/) for details on doing this for both [Helm](https://azure.github.io/azure-service-operator/guide/crd-management/#helm) and [YAML](https://azure.github.io/azure-service-operator/guide/crd-management/#yaml) based installations. + +### Next Release + +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 | +|------------------|-------------|---------------|----------------|----------------------------------------------------------------------------------------------------------------------------------------| +| OpenShiftCluster | 2023-11-22 | v1api20231122 | v2.9.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/redhatopenshift/v1api/v1api20231122_openshiftcluster.yaml) | + diff --git a/v2/api/redhatopenshift/customizations/open_shift_cluster_extension_types_gen.go b/v2/api/redhatopenshift/customizations/open_shift_cluster_extension_types_gen.go new file mode 100644 index 00000000000..2e488e38c0e --- /dev/null +++ b/v2/api/redhatopenshift/customizations/open_shift_cluster_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 ( + v20231122 "github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122" + storage "github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122/storage" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" +) + +type OpenShiftClusterExtension struct { +} + +// GetExtendedResources Returns the KubernetesResource slice for Resource versions +func (extension *OpenShiftClusterExtension) GetExtendedResources() []genruntime.KubernetesResource { + return []genruntime.KubernetesResource{ + &v20231122.OpenShiftCluster{}, + &storage.OpenShiftCluster{}} +} diff --git a/v2/api/redhatopenshift/customizations/structure.txt b/v2/api/redhatopenshift/customizations/structure.txt new file mode 100644 index 00000000000..edcfc717d38 --- /dev/null +++ b/v2/api/redhatopenshift/customizations/structure.txt @@ -0,0 +1,4 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +github.com/Azure/azure-service-operator/v2/api/redhatopenshift/customizations +----------------------------------------------------------------------------- +OpenShiftClusterExtension: Object (0 properties) diff --git a/v2/api/redhatopenshift/v1api20231122/doc.go b/v2/api/redhatopenshift/v1api20231122/doc.go new file mode 100644 index 00000000000..b6630c59654 --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/doc.go @@ -0,0 +1,10 @@ +/* +Copyright (c) Microsoft Corporation. +Licensed under the MIT license. +*/ + +// Code generated by azure-service-operator-codegen. DO NOT EDIT. + +// Package v1api20231122 contains API Schema definitions for the redhatopenshift v1api20231122 API group +// +groupName=redhatopenshift.azure.com +package v1api20231122 diff --git a/v2/api/redhatopenshift/v1api20231122/groupversion_info_gen.go b/v2/api/redhatopenshift/v1api20231122/groupversion_info_gen.go new file mode 100644 index 00000000000..950b0a89721 --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/groupversion_info_gen.go @@ -0,0 +1,32 @@ +/* +Copyright (c) Microsoft Corporation. +Licensed under the MIT license. +*/ + +// Code generated by azure-service-operator-codegen. DO NOT EDIT. + +// Package v1api20231122 contains API Schema definitions for the redhatopenshift v1api20231122 API group +// +kubebuilder:object:generate=true +// All object properties are optional by default, this will be overridden when needed: +// +kubebuilder:validation:Optional +// +groupName=redhatopenshift.azure.com +// +versionName=v1api20231122 +package v1api20231122 + +import ( + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/scheme" +) + +var ( + // GroupVersion is group version used to register these objects + GroupVersion = schema.GroupVersion{Group: "redhatopenshift.azure.com", Version: "v1api20231122"} + + // SchemeBuilder is used to add go types to the GroupVersionKind scheme + SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} + + // AddToScheme adds the types in this group-version to the given scheme. + AddToScheme = SchemeBuilder.AddToScheme + + localSchemeBuilder = SchemeBuilder.SchemeBuilder +) diff --git a/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_spec_arm_types_gen.go b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_spec_arm_types_gen.go new file mode 100644 index 00000000000..eca9629de8c --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_spec_arm_types_gen.go @@ -0,0 +1,164 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20231122 + +import "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + +type OpenShiftCluster_Spec_ARM struct { + // Location: The geo-location where the resource lives + Location *string `json:"location,omitempty"` + Name string `json:"name,omitempty"` + + // Properties: The cluster properties. + Properties *OpenShiftClusterProperties_ARM `json:"properties,omitempty"` + + // Tags: Resource tags. + Tags map[string]string `json:"tags,omitempty"` +} + +var _ genruntime.ARMResourceSpec = &OpenShiftCluster_Spec_ARM{} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-11-22" +func (cluster OpenShiftCluster_Spec_ARM) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetName returns the Name of the resource +func (cluster *OpenShiftCluster_Spec_ARM) GetName() string { + return cluster.Name +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.RedHatOpenShift/openShiftClusters" +func (cluster *OpenShiftCluster_Spec_ARM) GetType() string { + return "Microsoft.RedHatOpenShift/openShiftClusters" +} + +// OpenShiftClusterProperties represents an OpenShift cluster's properties. +type OpenShiftClusterProperties_ARM struct { + // ApiserverProfile: The cluster API server profile. + ApiserverProfile *APIServerProfile_ARM `json:"apiserverProfile,omitempty"` + + // ClusterProfile: The cluster profile. + ClusterProfile *ClusterProfile_ARM `json:"clusterProfile,omitempty"` + + // IngressProfiles: The cluster ingress profiles. + IngressProfiles []IngressProfile_ARM `json:"ingressProfiles,omitempty"` + + // MasterProfile: The cluster master profile. + MasterProfile *MasterProfile_ARM `json:"masterProfile,omitempty"` + + // NetworkProfile: The cluster network profile. + NetworkProfile *NetworkProfile_ARM `json:"networkProfile,omitempty"` + + // ServicePrincipalProfile: The cluster service principal profile. + ServicePrincipalProfile *ServicePrincipalProfile_ARM `json:"servicePrincipalProfile,omitempty"` + + // WorkerProfiles: The cluster worker profiles. + WorkerProfiles []WorkerProfile_ARM `json:"workerProfiles,omitempty"` +} + +// APIServerProfile represents an API server profile. +type APIServerProfile_ARM struct { + // Visibility: API server visibility. + Visibility *Visibility `json:"visibility,omitempty"` +} + +// ClusterProfile represents a cluster profile. +type ClusterProfile_ARM struct { + // Domain: The domain for the cluster. + Domain *string `json:"domain,omitempty"` + + // FipsValidatedModules: If FIPS validated crypto modules are used + FipsValidatedModules *FipsValidatedModules `json:"fipsValidatedModules,omitempty"` + + // PullSecret: The pull secret for the cluster. + PullSecret *string `json:"pullSecret,omitempty"` + + // ResourceGroupId: The ID of the cluster resource group. + ResourceGroupId *string `json:"resourceGroupId,omitempty"` + + // Version: The version of the cluster. + Version *string `json:"version,omitempty"` +} + +// IngressProfile represents an ingress profile. +type IngressProfile_ARM struct { + // Name: The ingress profile name. + Name *string `json:"name,omitempty"` + + // Visibility: Ingress visibility. + Visibility *Visibility `json:"visibility,omitempty"` +} + +// MasterProfile represents a master profile. +type MasterProfile_ARM struct { + DiskEncryptionSetId *string `json:"diskEncryptionSetId,omitempty"` + + // EncryptionAtHost: Whether master virtual machines are encrypted at host. + EncryptionAtHost *EncryptionAtHost `json:"encryptionAtHost,omitempty"` + SubnetId *string `json:"subnetId,omitempty"` + + // VmSize: The size of the master VMs. + VmSize *string `json:"vmSize,omitempty"` +} + +// NetworkProfile represents a network profile. +type NetworkProfile_ARM struct { + // LoadBalancerProfile: The cluster load balancer profile. + LoadBalancerProfile *LoadBalancerProfile_ARM `json:"loadBalancerProfile,omitempty"` + + // OutboundType: The OutboundType used for egress traffic. + OutboundType *OutboundType `json:"outboundType,omitempty"` + + // PodCidr: The CIDR used for OpenShift/Kubernetes Pods. + PodCidr *string `json:"podCidr,omitempty"` + + // PreconfiguredNSG: Specifies whether subnets are pre-attached with an NSG + PreconfiguredNSG *PreconfiguredNSG `json:"preconfiguredNSG,omitempty"` + + // ServiceCidr: The CIDR used for OpenShift/Kubernetes Services. + ServiceCidr *string `json:"serviceCidr,omitempty"` +} + +// ServicePrincipalProfile represents a service principal profile. +type ServicePrincipalProfile_ARM struct { + // ClientId: The client ID used for the cluster. + ClientId *string `json:"clientId,omitempty" optionalConfigMapPair:"ClientId"` + + // ClientSecret: The client secret used for the cluster. + ClientSecret *string `json:"clientSecret,omitempty"` +} + +// WorkerProfile represents a worker profile. +type WorkerProfile_ARM struct { + // Count: The number of worker VMs. + Count *int `json:"count,omitempty"` + DiskEncryptionSetId *string `json:"diskEncryptionSetId,omitempty"` + + // DiskSizeGB: The disk size of the worker VMs. + DiskSizeGB *int `json:"diskSizeGB,omitempty"` + + // EncryptionAtHost: Whether master virtual machines are encrypted at host. + EncryptionAtHost *EncryptionAtHost `json:"encryptionAtHost,omitempty"` + + // Name: The worker profile name. + Name *string `json:"name,omitempty"` + SubnetId *string `json:"subnetId,omitempty"` + + // VmSize: The size of the worker VMs. + VmSize *string `json:"vmSize,omitempty"` +} + +// LoadBalancerProfile represents the profile of the cluster public load balancer. +type LoadBalancerProfile_ARM struct { + // ManagedOutboundIps: The desired managed outbound IPs for the cluster public load balancer. + ManagedOutboundIps *ManagedOutboundIPs_ARM `json:"managedOutboundIps,omitempty"` +} + +// ManagedOutboundIPs represents the desired managed outbound IPs for the cluster public load balancer. +type ManagedOutboundIPs_ARM struct { + // Count: Count represents the desired number of IPv4 outbound IPs created and managed by Azure for the cluster public load + // balancer. Allowed values are in the range of 1 - 20. The default value is 1. + Count *int `json:"count,omitempty"` +} diff --git a/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_spec_arm_types_gen_test.go b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_spec_arm_types_gen_test.go new file mode 100644 index 00000000000..10629e95ec5 --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_spec_arm_types_gen_test.go @@ -0,0 +1,740 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20231122 + +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_APIServerProfile_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 APIServerProfile_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForAPIServerProfile_ARM, APIServerProfile_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForAPIServerProfile_ARM runs a test to see if a specific instance of APIServerProfile_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForAPIServerProfile_ARM(subject APIServerProfile_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual APIServerProfile_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 APIServerProfile_ARM instances for property testing - lazily instantiated by +// APIServerProfile_ARMGenerator() +var apiServerProfile_ARMGenerator gopter.Gen + +// APIServerProfile_ARMGenerator returns a generator of APIServerProfile_ARM instances for property testing. +func APIServerProfile_ARMGenerator() gopter.Gen { + if apiServerProfile_ARMGenerator != nil { + return apiServerProfile_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForAPIServerProfile_ARM(generators) + apiServerProfile_ARMGenerator = gen.Struct(reflect.TypeOf(APIServerProfile_ARM{}), generators) + + return apiServerProfile_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForAPIServerProfile_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAPIServerProfile_ARM(gens map[string]gopter.Gen) { + gens["Visibility"] = gen.PtrOf(gen.OneConstOf(Visibility_Private, Visibility_Public)) +} + +func Test_ClusterProfile_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 ClusterProfile_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForClusterProfile_ARM, ClusterProfile_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForClusterProfile_ARM runs a test to see if a specific instance of ClusterProfile_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForClusterProfile_ARM(subject ClusterProfile_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ClusterProfile_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 ClusterProfile_ARM instances for property testing - lazily instantiated by ClusterProfile_ARMGenerator() +var clusterProfile_ARMGenerator gopter.Gen + +// ClusterProfile_ARMGenerator returns a generator of ClusterProfile_ARM instances for property testing. +func ClusterProfile_ARMGenerator() gopter.Gen { + if clusterProfile_ARMGenerator != nil { + return clusterProfile_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForClusterProfile_ARM(generators) + clusterProfile_ARMGenerator = gen.Struct(reflect.TypeOf(ClusterProfile_ARM{}), generators) + + return clusterProfile_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForClusterProfile_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForClusterProfile_ARM(gens map[string]gopter.Gen) { + gens["Domain"] = gen.PtrOf(gen.AlphaString()) + gens["FipsValidatedModules"] = gen.PtrOf(gen.OneConstOf(FipsValidatedModules_Disabled, FipsValidatedModules_Enabled)) + gens["PullSecret"] = gen.PtrOf(gen.AlphaString()) + gens["ResourceGroupId"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_IngressProfile_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 IngressProfile_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForIngressProfile_ARM, IngressProfile_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForIngressProfile_ARM runs a test to see if a specific instance of IngressProfile_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForIngressProfile_ARM(subject IngressProfile_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual IngressProfile_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 IngressProfile_ARM instances for property testing - lazily instantiated by IngressProfile_ARMGenerator() +var ingressProfile_ARMGenerator gopter.Gen + +// IngressProfile_ARMGenerator returns a generator of IngressProfile_ARM instances for property testing. +func IngressProfile_ARMGenerator() gopter.Gen { + if ingressProfile_ARMGenerator != nil { + return ingressProfile_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForIngressProfile_ARM(generators) + ingressProfile_ARMGenerator = gen.Struct(reflect.TypeOf(IngressProfile_ARM{}), generators) + + return ingressProfile_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForIngressProfile_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForIngressProfile_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.OneConstOf(Visibility_Private, Visibility_Public)) +} + +func Test_LoadBalancerProfile_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 LoadBalancerProfile_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForLoadBalancerProfile_ARM, LoadBalancerProfile_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForLoadBalancerProfile_ARM runs a test to see if a specific instance of LoadBalancerProfile_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForLoadBalancerProfile_ARM(subject LoadBalancerProfile_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual LoadBalancerProfile_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 LoadBalancerProfile_ARM instances for property testing - lazily instantiated by +// LoadBalancerProfile_ARMGenerator() +var loadBalancerProfile_ARMGenerator gopter.Gen + +// LoadBalancerProfile_ARMGenerator returns a generator of LoadBalancerProfile_ARM instances for property testing. +func LoadBalancerProfile_ARMGenerator() gopter.Gen { + if loadBalancerProfile_ARMGenerator != nil { + return loadBalancerProfile_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForLoadBalancerProfile_ARM(generators) + loadBalancerProfile_ARMGenerator = gen.Struct(reflect.TypeOf(LoadBalancerProfile_ARM{}), generators) + + return loadBalancerProfile_ARMGenerator +} + +// AddRelatedPropertyGeneratorsForLoadBalancerProfile_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForLoadBalancerProfile_ARM(gens map[string]gopter.Gen) { + gens["ManagedOutboundIps"] = gen.PtrOf(ManagedOutboundIPs_ARMGenerator()) +} + +func Test_ManagedOutboundIPs_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 ManagedOutboundIPs_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForManagedOutboundIPs_ARM, ManagedOutboundIPs_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForManagedOutboundIPs_ARM runs a test to see if a specific instance of ManagedOutboundIPs_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForManagedOutboundIPs_ARM(subject ManagedOutboundIPs_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ManagedOutboundIPs_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 ManagedOutboundIPs_ARM instances for property testing - lazily instantiated by +// ManagedOutboundIPs_ARMGenerator() +var managedOutboundIPs_ARMGenerator gopter.Gen + +// ManagedOutboundIPs_ARMGenerator returns a generator of ManagedOutboundIPs_ARM instances for property testing. +func ManagedOutboundIPs_ARMGenerator() gopter.Gen { + if managedOutboundIPs_ARMGenerator != nil { + return managedOutboundIPs_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForManagedOutboundIPs_ARM(generators) + managedOutboundIPs_ARMGenerator = gen.Struct(reflect.TypeOf(ManagedOutboundIPs_ARM{}), generators) + + return managedOutboundIPs_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForManagedOutboundIPs_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForManagedOutboundIPs_ARM(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) +} + +func Test_MasterProfile_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 MasterProfile_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMasterProfile_ARM, MasterProfile_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMasterProfile_ARM runs a test to see if a specific instance of MasterProfile_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForMasterProfile_ARM(subject MasterProfile_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MasterProfile_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 MasterProfile_ARM instances for property testing - lazily instantiated by MasterProfile_ARMGenerator() +var masterProfile_ARMGenerator gopter.Gen + +// MasterProfile_ARMGenerator returns a generator of MasterProfile_ARM instances for property testing. +func MasterProfile_ARMGenerator() gopter.Gen { + if masterProfile_ARMGenerator != nil { + return masterProfile_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMasterProfile_ARM(generators) + masterProfile_ARMGenerator = gen.Struct(reflect.TypeOf(MasterProfile_ARM{}), generators) + + return masterProfile_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForMasterProfile_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMasterProfile_ARM(gens map[string]gopter.Gen) { + gens["DiskEncryptionSetId"] = gen.PtrOf(gen.AlphaString()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.OneConstOf(EncryptionAtHost_Disabled, EncryptionAtHost_Enabled)) + gens["SubnetId"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_NetworkProfile_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 NetworkProfile_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetworkProfile_ARM, NetworkProfile_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetworkProfile_ARM runs a test to see if a specific instance of NetworkProfile_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForNetworkProfile_ARM(subject NetworkProfile_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NetworkProfile_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 NetworkProfile_ARM instances for property testing - lazily instantiated by NetworkProfile_ARMGenerator() +var networkProfile_ARMGenerator gopter.Gen + +// NetworkProfile_ARMGenerator returns a generator of NetworkProfile_ARM instances for property testing. +// We first initialize networkProfile_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 NetworkProfile_ARMGenerator() gopter.Gen { + if networkProfile_ARMGenerator != nil { + return networkProfile_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile_ARM(generators) + networkProfile_ARMGenerator = gen.Struct(reflect.TypeOf(NetworkProfile_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile_ARM(generators) + AddRelatedPropertyGeneratorsForNetworkProfile_ARM(generators) + networkProfile_ARMGenerator = gen.Struct(reflect.TypeOf(NetworkProfile_ARM{}), generators) + + return networkProfile_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForNetworkProfile_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetworkProfile_ARM(gens map[string]gopter.Gen) { + gens["OutboundType"] = gen.PtrOf(gen.OneConstOf(OutboundType_Loadbalancer, OutboundType_UserDefinedRouting)) + gens["PodCidr"] = gen.PtrOf(gen.AlphaString()) + gens["PreconfiguredNSG"] = gen.PtrOf(gen.OneConstOf(PreconfiguredNSG_Disabled, PreconfiguredNSG_Enabled)) + gens["ServiceCidr"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForNetworkProfile_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNetworkProfile_ARM(gens map[string]gopter.Gen) { + gens["LoadBalancerProfile"] = gen.PtrOf(LoadBalancerProfile_ARMGenerator()) +} + +func Test_OpenShiftClusterProperties_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 OpenShiftClusterProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftClusterProperties_ARM, OpenShiftClusterProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftClusterProperties_ARM runs a test to see if a specific instance of OpenShiftClusterProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftClusterProperties_ARM(subject OpenShiftClusterProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftClusterProperties_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 OpenShiftClusterProperties_ARM instances for property testing - lazily instantiated by +// OpenShiftClusterProperties_ARMGenerator() +var openShiftClusterProperties_ARMGenerator gopter.Gen + +// OpenShiftClusterProperties_ARMGenerator returns a generator of OpenShiftClusterProperties_ARM instances for property testing. +func OpenShiftClusterProperties_ARMGenerator() gopter.Gen { + if openShiftClusterProperties_ARMGenerator != nil { + return openShiftClusterProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForOpenShiftClusterProperties_ARM(generators) + openShiftClusterProperties_ARMGenerator = gen.Struct(reflect.TypeOf(OpenShiftClusterProperties_ARM{}), generators) + + return openShiftClusterProperties_ARMGenerator +} + +// AddRelatedPropertyGeneratorsForOpenShiftClusterProperties_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftClusterProperties_ARM(gens map[string]gopter.Gen) { + gens["ApiserverProfile"] = gen.PtrOf(APIServerProfile_ARMGenerator()) + gens["ClusterProfile"] = gen.PtrOf(ClusterProfile_ARMGenerator()) + gens["IngressProfiles"] = gen.SliceOf(IngressProfile_ARMGenerator()) + gens["MasterProfile"] = gen.PtrOf(MasterProfile_ARMGenerator()) + gens["NetworkProfile"] = gen.PtrOf(NetworkProfile_ARMGenerator()) + gens["ServicePrincipalProfile"] = gen.PtrOf(ServicePrincipalProfile_ARMGenerator()) + gens["WorkerProfiles"] = gen.SliceOf(WorkerProfile_ARMGenerator()) +} + +func Test_OpenShiftCluster_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 OpenShiftCluster_Spec_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftCluster_Spec_ARM, OpenShiftCluster_Spec_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftCluster_Spec_ARM runs a test to see if a specific instance of OpenShiftCluster_Spec_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftCluster_Spec_ARM(subject OpenShiftCluster_Spec_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftCluster_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 OpenShiftCluster_Spec_ARM instances for property testing - lazily instantiated by +// OpenShiftCluster_Spec_ARMGenerator() +var openShiftCluster_Spec_ARMGenerator gopter.Gen + +// OpenShiftCluster_Spec_ARMGenerator returns a generator of OpenShiftCluster_Spec_ARM instances for property testing. +// We first initialize openShiftCluster_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 OpenShiftCluster_Spec_ARMGenerator() gopter.Gen { + if openShiftCluster_Spec_ARMGenerator != nil { + return openShiftCluster_Spec_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec_ARM(generators) + openShiftCluster_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_Spec_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec_ARM(generators) + AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec_ARM(generators) + openShiftCluster_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_Spec_ARM{}), generators) + + return openShiftCluster_Spec_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec_ARM(gens map[string]gopter.Gen) { + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.AlphaString() + gens["Tags"] = gen.MapOf( + gen.AlphaString(), + gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(OpenShiftClusterProperties_ARMGenerator()) +} + +func Test_ServicePrincipalProfile_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 ServicePrincipalProfile_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForServicePrincipalProfile_ARM, ServicePrincipalProfile_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForServicePrincipalProfile_ARM runs a test to see if a specific instance of ServicePrincipalProfile_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForServicePrincipalProfile_ARM(subject ServicePrincipalProfile_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ServicePrincipalProfile_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 ServicePrincipalProfile_ARM instances for property testing - lazily instantiated by +// ServicePrincipalProfile_ARMGenerator() +var servicePrincipalProfile_ARMGenerator gopter.Gen + +// ServicePrincipalProfile_ARMGenerator returns a generator of ServicePrincipalProfile_ARM instances for property testing. +func ServicePrincipalProfile_ARMGenerator() gopter.Gen { + if servicePrincipalProfile_ARMGenerator != nil { + return servicePrincipalProfile_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServicePrincipalProfile_ARM(generators) + servicePrincipalProfile_ARMGenerator = gen.Struct(reflect.TypeOf(ServicePrincipalProfile_ARM{}), generators) + + return servicePrincipalProfile_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForServicePrincipalProfile_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForServicePrincipalProfile_ARM(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) + gens["ClientSecret"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_WorkerProfile_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 WorkerProfile_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForWorkerProfile_ARM, WorkerProfile_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForWorkerProfile_ARM runs a test to see if a specific instance of WorkerProfile_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForWorkerProfile_ARM(subject WorkerProfile_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual WorkerProfile_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 WorkerProfile_ARM instances for property testing - lazily instantiated by WorkerProfile_ARMGenerator() +var workerProfile_ARMGenerator gopter.Gen + +// WorkerProfile_ARMGenerator returns a generator of WorkerProfile_ARM instances for property testing. +func WorkerProfile_ARMGenerator() gopter.Gen { + if workerProfile_ARMGenerator != nil { + return workerProfile_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForWorkerProfile_ARM(generators) + workerProfile_ARMGenerator = gen.Struct(reflect.TypeOf(WorkerProfile_ARM{}), generators) + + return workerProfile_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForWorkerProfile_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForWorkerProfile_ARM(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) + gens["DiskEncryptionSetId"] = gen.PtrOf(gen.AlphaString()) + gens["DiskSizeGB"] = gen.PtrOf(gen.Int()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.OneConstOf(EncryptionAtHost_Disabled, EncryptionAtHost_Enabled)) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["SubnetId"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_status_arm_types_gen.go b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_status_arm_types_gen.go new file mode 100644 index 00000000000..911fb440f0b --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_status_arm_types_gen.go @@ -0,0 +1,247 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20231122 + +// OpenShiftCluster represents an Azure Red Hat OpenShift cluster. +type OpenShiftCluster_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"` + + // Location: The geo-location where the resource lives + Location *string `json:"location,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // Properties: The cluster properties. + Properties *OpenShiftClusterProperties_STATUS_ARM `json:"properties,omitempty"` + + // SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData_STATUS_ARM `json:"systemData,omitempty"` + + // Tags: Resource tags. + Tags map[string]string `json:"tags,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +// OpenShiftClusterProperties represents an OpenShift cluster's properties. +type OpenShiftClusterProperties_STATUS_ARM struct { + // ApiserverProfile: The cluster API server profile. + ApiserverProfile *APIServerProfile_STATUS_ARM `json:"apiserverProfile,omitempty"` + + // ClusterProfile: The cluster profile. + ClusterProfile *ClusterProfile_STATUS_ARM `json:"clusterProfile,omitempty"` + + // ConsoleProfile: The console profile. + ConsoleProfile *ConsoleProfile_STATUS_ARM `json:"consoleProfile,omitempty"` + + // IngressProfiles: The cluster ingress profiles. + IngressProfiles []IngressProfile_STATUS_ARM `json:"ingressProfiles,omitempty"` + + // MasterProfile: The cluster master profile. + MasterProfile *MasterProfile_STATUS_ARM `json:"masterProfile,omitempty"` + + // NetworkProfile: The cluster network profile. + NetworkProfile *NetworkProfile_STATUS_ARM `json:"networkProfile,omitempty"` + + // ProvisioningState: The cluster provisioning state. + ProvisioningState *ProvisioningState_STATUS `json:"provisioningState,omitempty"` + + // ServicePrincipalProfile: The cluster service principal profile. + ServicePrincipalProfile *ServicePrincipalProfile_STATUS_ARM `json:"servicePrincipalProfile,omitempty"` + + // WorkerProfiles: The cluster worker profiles. + WorkerProfiles []WorkerProfile_STATUS_ARM `json:"workerProfiles,omitempty"` + + // WorkerProfilesStatus: The cluster worker profiles status. + WorkerProfilesStatus []WorkerProfile_STATUS_ARM `json:"workerProfilesStatus,omitempty"` +} + +// Metadata pertaining to creation and last modification of the resource. +type SystemData_STATUS_ARM struct { + // CreatedAt: The timestamp of resource creation (UTC). + CreatedAt *string `json:"createdAt,omitempty"` + + // CreatedBy: The identity that created the resource. + CreatedBy *string `json:"createdBy,omitempty"` + + // CreatedByType: The type of identity that created the resource. + CreatedByType *SystemData_CreatedByType_STATUS `json:"createdByType,omitempty"` + + // LastModifiedAt: The timestamp of resource last modification (UTC) + LastModifiedAt *string `json:"lastModifiedAt,omitempty"` + + // LastModifiedBy: The identity that last modified the resource. + LastModifiedBy *string `json:"lastModifiedBy,omitempty"` + + // LastModifiedByType: The type of identity that last modified the resource. + LastModifiedByType *SystemData_LastModifiedByType_STATUS `json:"lastModifiedByType,omitempty"` +} + +// APIServerProfile represents an API server profile. +type APIServerProfile_STATUS_ARM struct { + // Ip: The IP of the cluster API server. + Ip *string `json:"ip,omitempty"` + + // Url: The URL to access the cluster API server. + Url *string `json:"url,omitempty"` + + // Visibility: API server visibility. + Visibility *Visibility_STATUS `json:"visibility,omitempty"` +} + +// ClusterProfile represents a cluster profile. +type ClusterProfile_STATUS_ARM struct { + // Domain: The domain for the cluster. + Domain *string `json:"domain,omitempty"` + + // FipsValidatedModules: If FIPS validated crypto modules are used + FipsValidatedModules *FipsValidatedModules_STATUS `json:"fipsValidatedModules,omitempty"` + + // ResourceGroupId: The ID of the cluster resource group. + ResourceGroupId *string `json:"resourceGroupId,omitempty"` + + // Version: The version of the cluster. + Version *string `json:"version,omitempty"` +} + +// ConsoleProfile represents a console profile. +type ConsoleProfile_STATUS_ARM struct { + // Url: The URL to access the cluster console. + Url *string `json:"url,omitempty"` +} + +// IngressProfile represents an ingress profile. +type IngressProfile_STATUS_ARM struct { + // Ip: The IP of the ingress. + Ip *string `json:"ip,omitempty"` + + // Name: The ingress profile name. + Name *string `json:"name,omitempty"` + + // Visibility: Ingress visibility. + Visibility *Visibility_STATUS `json:"visibility,omitempty"` +} + +// MasterProfile represents a master profile. +type MasterProfile_STATUS_ARM struct { + // DiskEncryptionSetId: The resource ID of an associated DiskEncryptionSet, if applicable. + DiskEncryptionSetId *string `json:"diskEncryptionSetId,omitempty"` + + // EncryptionAtHost: Whether master virtual machines are encrypted at host. + EncryptionAtHost *EncryptionAtHost_STATUS `json:"encryptionAtHost,omitempty"` + + // SubnetId: The Azure resource ID of the master subnet. + SubnetId *string `json:"subnetId,omitempty"` + + // VmSize: The size of the master VMs. + VmSize *string `json:"vmSize,omitempty"` +} + +// NetworkProfile represents a network profile. +type NetworkProfile_STATUS_ARM struct { + // LoadBalancerProfile: The cluster load balancer profile. + LoadBalancerProfile *LoadBalancerProfile_STATUS_ARM `json:"loadBalancerProfile,omitempty"` + + // OutboundType: The OutboundType used for egress traffic. + OutboundType *OutboundType_STATUS `json:"outboundType,omitempty"` + + // PodCidr: The CIDR used for OpenShift/Kubernetes Pods. + PodCidr *string `json:"podCidr,omitempty"` + + // PreconfiguredNSG: Specifies whether subnets are pre-attached with an NSG + PreconfiguredNSG *PreconfiguredNSG_STATUS `json:"preconfiguredNSG,omitempty"` + + // ServiceCidr: The CIDR used for OpenShift/Kubernetes Services. + ServiceCidr *string `json:"serviceCidr,omitempty"` +} + +// ServicePrincipalProfile represents a service principal profile. +type ServicePrincipalProfile_STATUS_ARM struct { + // ClientId: The client ID used for the cluster. + ClientId *string `json:"clientId,omitempty"` +} + +type SystemData_CreatedByType_STATUS string + +const ( + SystemData_CreatedByType_STATUS_Application = SystemData_CreatedByType_STATUS("Application") + SystemData_CreatedByType_STATUS_Key = SystemData_CreatedByType_STATUS("Key") + SystemData_CreatedByType_STATUS_ManagedIdentity = SystemData_CreatedByType_STATUS("ManagedIdentity") + SystemData_CreatedByType_STATUS_User = SystemData_CreatedByType_STATUS("User") +) + +// Mapping from string to SystemData_CreatedByType_STATUS +var systemData_CreatedByType_STATUS_Values = map[string]SystemData_CreatedByType_STATUS{ + "application": SystemData_CreatedByType_STATUS_Application, + "key": SystemData_CreatedByType_STATUS_Key, + "managedidentity": SystemData_CreatedByType_STATUS_ManagedIdentity, + "user": SystemData_CreatedByType_STATUS_User, +} + +type SystemData_LastModifiedByType_STATUS string + +const ( + SystemData_LastModifiedByType_STATUS_Application = SystemData_LastModifiedByType_STATUS("Application") + SystemData_LastModifiedByType_STATUS_Key = SystemData_LastModifiedByType_STATUS("Key") + SystemData_LastModifiedByType_STATUS_ManagedIdentity = SystemData_LastModifiedByType_STATUS("ManagedIdentity") + SystemData_LastModifiedByType_STATUS_User = SystemData_LastModifiedByType_STATUS("User") +) + +// Mapping from string to SystemData_LastModifiedByType_STATUS +var systemData_LastModifiedByType_STATUS_Values = map[string]SystemData_LastModifiedByType_STATUS{ + "application": SystemData_LastModifiedByType_STATUS_Application, + "key": SystemData_LastModifiedByType_STATUS_Key, + "managedidentity": SystemData_LastModifiedByType_STATUS_ManagedIdentity, + "user": SystemData_LastModifiedByType_STATUS_User, +} + +// WorkerProfile represents a worker profile. +type WorkerProfile_STATUS_ARM struct { + // Count: The number of worker VMs. + Count *int `json:"count,omitempty"` + + // DiskEncryptionSetId: The resource ID of an associated DiskEncryptionSet, if applicable. + DiskEncryptionSetId *string `json:"diskEncryptionSetId,omitempty"` + + // DiskSizeGB: The disk size of the worker VMs. + DiskSizeGB *int `json:"diskSizeGB,omitempty"` + + // EncryptionAtHost: Whether master virtual machines are encrypted at host. + EncryptionAtHost *EncryptionAtHost_STATUS `json:"encryptionAtHost,omitempty"` + + // Name: The worker profile name. + Name *string `json:"name,omitempty"` + + // SubnetId: The Azure resource ID of the worker subnet. + SubnetId *string `json:"subnetId,omitempty"` + + // VmSize: The size of the worker VMs. + VmSize *string `json:"vmSize,omitempty"` +} + +// LoadBalancerProfile represents the profile of the cluster public load balancer. +type LoadBalancerProfile_STATUS_ARM struct { + // EffectiveOutboundIps: The list of effective outbound IP addresses of the public load balancer. + EffectiveOutboundIps []EffectiveOutboundIP_STATUS_ARM `json:"effectiveOutboundIps,omitempty"` + + // ManagedOutboundIps: The desired managed outbound IPs for the cluster public load balancer. + ManagedOutboundIps *ManagedOutboundIPs_STATUS_ARM `json:"managedOutboundIps,omitempty"` +} + +// EffectiveOutboundIP represents an effective outbound IP resource of the cluster public load balancer. +type EffectiveOutboundIP_STATUS_ARM struct { + // Id: The fully qualified Azure resource id of an IP address resource. + Id *string `json:"id,omitempty"` +} + +// ManagedOutboundIPs represents the desired managed outbound IPs for the cluster public load balancer. +type ManagedOutboundIPs_STATUS_ARM struct { + // Count: Count represents the desired number of IPv4 outbound IPs created and managed by Azure for the cluster public load + // balancer. Allowed values are in the range of 1 - 20. The default value is 1. + Count *int `json:"count,omitempty"` +} diff --git a/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_status_arm_types_gen_test.go b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_status_arm_types_gen_test.go new file mode 100644 index 00000000000..b2559d71a4a --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_status_arm_types_gen_test.go @@ -0,0 +1,969 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20231122 + +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_APIServerProfile_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 APIServerProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForAPIServerProfile_STATUS_ARM, APIServerProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForAPIServerProfile_STATUS_ARM runs a test to see if a specific instance of APIServerProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForAPIServerProfile_STATUS_ARM(subject APIServerProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual APIServerProfile_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 APIServerProfile_STATUS_ARM instances for property testing - lazily instantiated by +// APIServerProfile_STATUS_ARMGenerator() +var apiServerProfile_STATUS_ARMGenerator gopter.Gen + +// APIServerProfile_STATUS_ARMGenerator returns a generator of APIServerProfile_STATUS_ARM instances for property testing. +func APIServerProfile_STATUS_ARMGenerator() gopter.Gen { + if apiServerProfile_STATUS_ARMGenerator != nil { + return apiServerProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS_ARM(generators) + apiServerProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(APIServerProfile_STATUS_ARM{}), generators) + + return apiServerProfile_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Ip"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.OneConstOf(Visibility_STATUS_Private, Visibility_STATUS_Public)) +} + +func Test_ClusterProfile_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 ClusterProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForClusterProfile_STATUS_ARM, ClusterProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForClusterProfile_STATUS_ARM runs a test to see if a specific instance of ClusterProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForClusterProfile_STATUS_ARM(subject ClusterProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ClusterProfile_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 ClusterProfile_STATUS_ARM instances for property testing - lazily instantiated by +// ClusterProfile_STATUS_ARMGenerator() +var clusterProfile_STATUS_ARMGenerator gopter.Gen + +// ClusterProfile_STATUS_ARMGenerator returns a generator of ClusterProfile_STATUS_ARM instances for property testing. +func ClusterProfile_STATUS_ARMGenerator() gopter.Gen { + if clusterProfile_STATUS_ARMGenerator != nil { + return clusterProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForClusterProfile_STATUS_ARM(generators) + clusterProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(ClusterProfile_STATUS_ARM{}), generators) + + return clusterProfile_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForClusterProfile_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForClusterProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Domain"] = gen.PtrOf(gen.AlphaString()) + gens["FipsValidatedModules"] = gen.PtrOf(gen.OneConstOf(FipsValidatedModules_STATUS_Disabled, FipsValidatedModules_STATUS_Enabled)) + gens["ResourceGroupId"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_ConsoleProfile_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 ConsoleProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForConsoleProfile_STATUS_ARM, ConsoleProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForConsoleProfile_STATUS_ARM runs a test to see if a specific instance of ConsoleProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForConsoleProfile_STATUS_ARM(subject ConsoleProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ConsoleProfile_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 ConsoleProfile_STATUS_ARM instances for property testing - lazily instantiated by +// ConsoleProfile_STATUS_ARMGenerator() +var consoleProfile_STATUS_ARMGenerator gopter.Gen + +// ConsoleProfile_STATUS_ARMGenerator returns a generator of ConsoleProfile_STATUS_ARM instances for property testing. +func ConsoleProfile_STATUS_ARMGenerator() gopter.Gen { + if consoleProfile_STATUS_ARMGenerator != nil { + return consoleProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForConsoleProfile_STATUS_ARM(generators) + consoleProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(ConsoleProfile_STATUS_ARM{}), generators) + + return consoleProfile_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForConsoleProfile_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForConsoleProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_EffectiveOutboundIP_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 EffectiveOutboundIP_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForEffectiveOutboundIP_STATUS_ARM, EffectiveOutboundIP_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForEffectiveOutboundIP_STATUS_ARM runs a test to see if a specific instance of EffectiveOutboundIP_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForEffectiveOutboundIP_STATUS_ARM(subject EffectiveOutboundIP_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual EffectiveOutboundIP_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 EffectiveOutboundIP_STATUS_ARM instances for property testing - lazily instantiated by +// EffectiveOutboundIP_STATUS_ARMGenerator() +var effectiveOutboundIP_STATUS_ARMGenerator gopter.Gen + +// EffectiveOutboundIP_STATUS_ARMGenerator returns a generator of EffectiveOutboundIP_STATUS_ARM instances for property testing. +func EffectiveOutboundIP_STATUS_ARMGenerator() gopter.Gen { + if effectiveOutboundIP_STATUS_ARMGenerator != nil { + return effectiveOutboundIP_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS_ARM(generators) + effectiveOutboundIP_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(EffectiveOutboundIP_STATUS_ARM{}), generators) + + return effectiveOutboundIP_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_IngressProfile_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 IngressProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForIngressProfile_STATUS_ARM, IngressProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForIngressProfile_STATUS_ARM runs a test to see if a specific instance of IngressProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForIngressProfile_STATUS_ARM(subject IngressProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual IngressProfile_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 IngressProfile_STATUS_ARM instances for property testing - lazily instantiated by +// IngressProfile_STATUS_ARMGenerator() +var ingressProfile_STATUS_ARMGenerator gopter.Gen + +// IngressProfile_STATUS_ARMGenerator returns a generator of IngressProfile_STATUS_ARM instances for property testing. +func IngressProfile_STATUS_ARMGenerator() gopter.Gen { + if ingressProfile_STATUS_ARMGenerator != nil { + return ingressProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForIngressProfile_STATUS_ARM(generators) + ingressProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(IngressProfile_STATUS_ARM{}), generators) + + return ingressProfile_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForIngressProfile_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForIngressProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Ip"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.OneConstOf(Visibility_STATUS_Private, Visibility_STATUS_Public)) +} + +func Test_LoadBalancerProfile_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 LoadBalancerProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForLoadBalancerProfile_STATUS_ARM, LoadBalancerProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForLoadBalancerProfile_STATUS_ARM runs a test to see if a specific instance of LoadBalancerProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForLoadBalancerProfile_STATUS_ARM(subject LoadBalancerProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual LoadBalancerProfile_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 LoadBalancerProfile_STATUS_ARM instances for property testing - lazily instantiated by +// LoadBalancerProfile_STATUS_ARMGenerator() +var loadBalancerProfile_STATUS_ARMGenerator gopter.Gen + +// LoadBalancerProfile_STATUS_ARMGenerator returns a generator of LoadBalancerProfile_STATUS_ARM instances for property testing. +func LoadBalancerProfile_STATUS_ARMGenerator() gopter.Gen { + if loadBalancerProfile_STATUS_ARMGenerator != nil { + return loadBalancerProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS_ARM(generators) + loadBalancerProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(LoadBalancerProfile_STATUS_ARM{}), generators) + + return loadBalancerProfile_STATUS_ARMGenerator +} + +// AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["EffectiveOutboundIps"] = gen.SliceOf(EffectiveOutboundIP_STATUS_ARMGenerator()) + gens["ManagedOutboundIps"] = gen.PtrOf(ManagedOutboundIPs_STATUS_ARMGenerator()) +} + +func Test_ManagedOutboundIPs_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 ManagedOutboundIPs_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForManagedOutboundIPs_STATUS_ARM, ManagedOutboundIPs_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForManagedOutboundIPs_STATUS_ARM runs a test to see if a specific instance of ManagedOutboundIPs_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForManagedOutboundIPs_STATUS_ARM(subject ManagedOutboundIPs_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ManagedOutboundIPs_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 ManagedOutboundIPs_STATUS_ARM instances for property testing - lazily instantiated by +// ManagedOutboundIPs_STATUS_ARMGenerator() +var managedOutboundIPs_STATUS_ARMGenerator gopter.Gen + +// ManagedOutboundIPs_STATUS_ARMGenerator returns a generator of ManagedOutboundIPs_STATUS_ARM instances for property testing. +func ManagedOutboundIPs_STATUS_ARMGenerator() gopter.Gen { + if managedOutboundIPs_STATUS_ARMGenerator != nil { + return managedOutboundIPs_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS_ARM(generators) + managedOutboundIPs_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(ManagedOutboundIPs_STATUS_ARM{}), generators) + + return managedOutboundIPs_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) +} + +func Test_MasterProfile_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 MasterProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMasterProfile_STATUS_ARM, MasterProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMasterProfile_STATUS_ARM runs a test to see if a specific instance of MasterProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForMasterProfile_STATUS_ARM(subject MasterProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MasterProfile_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 MasterProfile_STATUS_ARM instances for property testing - lazily instantiated by +// MasterProfile_STATUS_ARMGenerator() +var masterProfile_STATUS_ARMGenerator gopter.Gen + +// MasterProfile_STATUS_ARMGenerator returns a generator of MasterProfile_STATUS_ARM instances for property testing. +func MasterProfile_STATUS_ARMGenerator() gopter.Gen { + if masterProfile_STATUS_ARMGenerator != nil { + return masterProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMasterProfile_STATUS_ARM(generators) + masterProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(MasterProfile_STATUS_ARM{}), generators) + + return masterProfile_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForMasterProfile_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMasterProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["DiskEncryptionSetId"] = gen.PtrOf(gen.AlphaString()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.OneConstOf(EncryptionAtHost_STATUS_Disabled, EncryptionAtHost_STATUS_Enabled)) + gens["SubnetId"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_NetworkProfile_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 NetworkProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetworkProfile_STATUS_ARM, NetworkProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetworkProfile_STATUS_ARM runs a test to see if a specific instance of NetworkProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForNetworkProfile_STATUS_ARM(subject NetworkProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NetworkProfile_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 NetworkProfile_STATUS_ARM instances for property testing - lazily instantiated by +// NetworkProfile_STATUS_ARMGenerator() +var networkProfile_STATUS_ARMGenerator gopter.Gen + +// NetworkProfile_STATUS_ARMGenerator returns a generator of NetworkProfile_STATUS_ARM instances for property testing. +// We first initialize networkProfile_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 NetworkProfile_STATUS_ARMGenerator() gopter.Gen { + if networkProfile_STATUS_ARMGenerator != nil { + return networkProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile_STATUS_ARM(generators) + networkProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(NetworkProfile_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForNetworkProfile_STATUS_ARM(generators) + networkProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(NetworkProfile_STATUS_ARM{}), generators) + + return networkProfile_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForNetworkProfile_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetworkProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["OutboundType"] = gen.PtrOf(gen.OneConstOf(OutboundType_STATUS_Loadbalancer, OutboundType_STATUS_UserDefinedRouting)) + gens["PodCidr"] = gen.PtrOf(gen.AlphaString()) + gens["PreconfiguredNSG"] = gen.PtrOf(gen.OneConstOf(PreconfiguredNSG_STATUS_Disabled, PreconfiguredNSG_STATUS_Enabled)) + gens["ServiceCidr"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForNetworkProfile_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNetworkProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["LoadBalancerProfile"] = gen.PtrOf(LoadBalancerProfile_STATUS_ARMGenerator()) +} + +func Test_OpenShiftClusterProperties_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 OpenShiftClusterProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftClusterProperties_STATUS_ARM, OpenShiftClusterProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftClusterProperties_STATUS_ARM runs a test to see if a specific instance of OpenShiftClusterProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftClusterProperties_STATUS_ARM(subject OpenShiftClusterProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftClusterProperties_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 OpenShiftClusterProperties_STATUS_ARM instances for property testing - lazily instantiated by +// OpenShiftClusterProperties_STATUS_ARMGenerator() +var openShiftClusterProperties_STATUS_ARMGenerator gopter.Gen + +// OpenShiftClusterProperties_STATUS_ARMGenerator returns a generator of OpenShiftClusterProperties_STATUS_ARM instances for property testing. +// We first initialize openShiftClusterProperties_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 OpenShiftClusterProperties_STATUS_ARMGenerator() gopter.Gen { + if openShiftClusterProperties_STATUS_ARMGenerator != nil { + return openShiftClusterProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftClusterProperties_STATUS_ARM(generators) + openShiftClusterProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(OpenShiftClusterProperties_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftClusterProperties_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForOpenShiftClusterProperties_STATUS_ARM(generators) + openShiftClusterProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(OpenShiftClusterProperties_STATUS_ARM{}), generators) + + return openShiftClusterProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForOpenShiftClusterProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForOpenShiftClusterProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ProvisioningState"] = gen.PtrOf(gen.OneConstOf( + ProvisioningState_STATUS_AdminUpdating, + ProvisioningState_STATUS_Canceled, + ProvisioningState_STATUS_Creating, + ProvisioningState_STATUS_Deleting, + ProvisioningState_STATUS_Failed, + ProvisioningState_STATUS_Succeeded, + ProvisioningState_STATUS_Updating)) +} + +// AddRelatedPropertyGeneratorsForOpenShiftClusterProperties_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftClusterProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ApiserverProfile"] = gen.PtrOf(APIServerProfile_STATUS_ARMGenerator()) + gens["ClusterProfile"] = gen.PtrOf(ClusterProfile_STATUS_ARMGenerator()) + gens["ConsoleProfile"] = gen.PtrOf(ConsoleProfile_STATUS_ARMGenerator()) + gens["IngressProfiles"] = gen.SliceOf(IngressProfile_STATUS_ARMGenerator()) + gens["MasterProfile"] = gen.PtrOf(MasterProfile_STATUS_ARMGenerator()) + gens["NetworkProfile"] = gen.PtrOf(NetworkProfile_STATUS_ARMGenerator()) + gens["ServicePrincipalProfile"] = gen.PtrOf(ServicePrincipalProfile_STATUS_ARMGenerator()) + gens["WorkerProfiles"] = gen.SliceOf(WorkerProfile_STATUS_ARMGenerator()) + gens["WorkerProfilesStatus"] = gen.SliceOf(WorkerProfile_STATUS_ARMGenerator()) +} + +func Test_OpenShiftCluster_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 OpenShiftCluster_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftCluster_STATUS_ARM, OpenShiftCluster_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftCluster_STATUS_ARM runs a test to see if a specific instance of OpenShiftCluster_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftCluster_STATUS_ARM(subject OpenShiftCluster_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftCluster_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 OpenShiftCluster_STATUS_ARM instances for property testing - lazily instantiated by +// OpenShiftCluster_STATUS_ARMGenerator() +var openShiftCluster_STATUS_ARMGenerator gopter.Gen + +// OpenShiftCluster_STATUS_ARMGenerator returns a generator of OpenShiftCluster_STATUS_ARM instances for property testing. +// We first initialize openShiftCluster_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 OpenShiftCluster_STATUS_ARMGenerator() gopter.Gen { + if openShiftCluster_STATUS_ARMGenerator != nil { + return openShiftCluster_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS_ARM(generators) + openShiftCluster_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS_ARM(generators) + openShiftCluster_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_STATUS_ARM{}), generators) + + return openShiftCluster_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Tags"] = gen.MapOf( + gen.AlphaString(), + gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(OpenShiftClusterProperties_STATUS_ARMGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUS_ARMGenerator()) +} + +func Test_ServicePrincipalProfile_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 ServicePrincipalProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForServicePrincipalProfile_STATUS_ARM, ServicePrincipalProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForServicePrincipalProfile_STATUS_ARM runs a test to see if a specific instance of ServicePrincipalProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForServicePrincipalProfile_STATUS_ARM(subject ServicePrincipalProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ServicePrincipalProfile_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 ServicePrincipalProfile_STATUS_ARM instances for property testing - lazily instantiated by +// ServicePrincipalProfile_STATUS_ARMGenerator() +var servicePrincipalProfile_STATUS_ARMGenerator gopter.Gen + +// ServicePrincipalProfile_STATUS_ARMGenerator returns a generator of ServicePrincipalProfile_STATUS_ARM instances for property testing. +func ServicePrincipalProfile_STATUS_ARMGenerator() gopter.Gen { + if servicePrincipalProfile_STATUS_ARMGenerator != nil { + return servicePrincipalProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS_ARM(generators) + servicePrincipalProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(ServicePrincipalProfile_STATUS_ARM{}), generators) + + return servicePrincipalProfile_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_SystemData_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 SystemData_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSystemData_STATUS_ARM, SystemData_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSystemData_STATUS_ARM runs a test to see if a specific instance of SystemData_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForSystemData_STATUS_ARM(subject SystemData_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual SystemData_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 SystemData_STATUS_ARM instances for property testing - lazily instantiated by +// SystemData_STATUS_ARMGenerator() +var systemData_STATUS_ARMGenerator gopter.Gen + +// SystemData_STATUS_ARMGenerator returns a generator of SystemData_STATUS_ARM instances for property testing. +func SystemData_STATUS_ARMGenerator() gopter.Gen { + if systemData_STATUS_ARMGenerator != nil { + return systemData_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSystemData_STATUS_ARM(generators) + systemData_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(SystemData_STATUS_ARM{}), generators) + + return systemData_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForSystemData_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSystemData_STATUS_ARM(gens map[string]gopter.Gen) { + gens["CreatedAt"] = gen.PtrOf(gen.AlphaString()) + gens["CreatedBy"] = gen.PtrOf(gen.AlphaString()) + gens["CreatedByType"] = gen.PtrOf(gen.OneConstOf( + SystemData_CreatedByType_STATUS_Application, + SystemData_CreatedByType_STATUS_Key, + SystemData_CreatedByType_STATUS_ManagedIdentity, + SystemData_CreatedByType_STATUS_User)) + gens["LastModifiedAt"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedBy"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedByType"] = gen.PtrOf(gen.OneConstOf( + SystemData_LastModifiedByType_STATUS_Application, + SystemData_LastModifiedByType_STATUS_Key, + SystemData_LastModifiedByType_STATUS_ManagedIdentity, + SystemData_LastModifiedByType_STATUS_User)) +} + +func Test_WorkerProfile_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 WorkerProfile_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForWorkerProfile_STATUS_ARM, WorkerProfile_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForWorkerProfile_STATUS_ARM runs a test to see if a specific instance of WorkerProfile_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForWorkerProfile_STATUS_ARM(subject WorkerProfile_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual WorkerProfile_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 WorkerProfile_STATUS_ARM instances for property testing - lazily instantiated by +// WorkerProfile_STATUS_ARMGenerator() +var workerProfile_STATUS_ARMGenerator gopter.Gen + +// WorkerProfile_STATUS_ARMGenerator returns a generator of WorkerProfile_STATUS_ARM instances for property testing. +func WorkerProfile_STATUS_ARMGenerator() gopter.Gen { + if workerProfile_STATUS_ARMGenerator != nil { + return workerProfile_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForWorkerProfile_STATUS_ARM(generators) + workerProfile_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(WorkerProfile_STATUS_ARM{}), generators) + + return workerProfile_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForWorkerProfile_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForWorkerProfile_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) + gens["DiskEncryptionSetId"] = gen.PtrOf(gen.AlphaString()) + gens["DiskSizeGB"] = gen.PtrOf(gen.Int()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.OneConstOf(EncryptionAtHost_STATUS_Disabled, EncryptionAtHost_STATUS_Enabled)) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["SubnetId"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_types_gen.go b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_types_gen.go new file mode 100644 index 00000000000..f1ff6dfb07a --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_types_gen.go @@ -0,0 +1,4633 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20231122 + +import ( + "fmt" + storage "github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122/storage" + "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/Azure/azure-service-operator/v2/pkg/genruntime/configmaps" + "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: /redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/openshiftclusters/stable/2023-11-22/redhatopenshift.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters/{resourceName} +type OpenShiftCluster struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec OpenShiftCluster_Spec `json:"spec,omitempty"` + Status OpenShiftCluster_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &OpenShiftCluster{} + +// GetConditions returns the conditions of the resource +func (cluster *OpenShiftCluster) GetConditions() conditions.Conditions { + return cluster.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (cluster *OpenShiftCluster) SetConditions(conditions conditions.Conditions) { + cluster.Status.Conditions = conditions +} + +var _ conversion.Convertible = &OpenShiftCluster{} + +// ConvertFrom populates our OpenShiftCluster from the provided hub OpenShiftCluster +func (cluster *OpenShiftCluster) ConvertFrom(hub conversion.Hub) error { + source, ok := hub.(*storage.OpenShiftCluster) + if !ok { + return fmt.Errorf("expected redhatopenshift/v1api20231122/storage/OpenShiftCluster but received %T instead", hub) + } + + return cluster.AssignProperties_From_OpenShiftCluster(source) +} + +// ConvertTo populates the provided hub OpenShiftCluster from our OpenShiftCluster +func (cluster *OpenShiftCluster) ConvertTo(hub conversion.Hub) error { + destination, ok := hub.(*storage.OpenShiftCluster) + if !ok { + return fmt.Errorf("expected redhatopenshift/v1api20231122/storage/OpenShiftCluster but received %T instead", hub) + } + + return cluster.AssignProperties_To_OpenShiftCluster(destination) +} + +// +kubebuilder:webhook:path=/mutate-redhatopenshift-azure-com-v1api20231122-openshiftcluster,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=redhatopenshift.azure.com,resources=openshiftclusters,verbs=create;update,versions=v1api20231122,name=default.v1api20231122.openshiftclusters.redhatopenshift.azure.com,admissionReviewVersions=v1 + +var _ admission.Defaulter = &OpenShiftCluster{} + +// Default applies defaults to the OpenShiftCluster resource +func (cluster *OpenShiftCluster) Default() { + cluster.defaultImpl() + var temp any = cluster + if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok { + runtimeDefaulter.CustomDefault() + } +} + +// defaultAzureName defaults the Azure name of the resource to the Kubernetes name +func (cluster *OpenShiftCluster) defaultAzureName() { + if cluster.Spec.AzureName == "" { + cluster.Spec.AzureName = cluster.Name + } +} + +// defaultImpl applies the code generated defaults to the OpenShiftCluster resource +func (cluster *OpenShiftCluster) defaultImpl() { cluster.defaultAzureName() } + +var _ genruntime.ImportableResource = &OpenShiftCluster{} + +// InitializeSpec initializes the spec for this resource from the given status +func (cluster *OpenShiftCluster) InitializeSpec(status genruntime.ConvertibleStatus) error { + if s, ok := status.(*OpenShiftCluster_STATUS); ok { + return cluster.Spec.Initialize_From_OpenShiftCluster_STATUS(s) + } + + return fmt.Errorf("expected Status of type OpenShiftCluster_STATUS but received %T instead", status) +} + +var _ genruntime.KubernetesResource = &OpenShiftCluster{} + +// AzureName returns the Azure name of the resource +func (cluster *OpenShiftCluster) AzureName() string { + return cluster.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-11-22" +func (cluster OpenShiftCluster) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (cluster *OpenShiftCluster) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (cluster *OpenShiftCluster) GetSpec() genruntime.ConvertibleSpec { + return &cluster.Spec +} + +// GetStatus returns the status of this resource +func (cluster *OpenShiftCluster) GetStatus() genruntime.ConvertibleStatus { + return &cluster.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (cluster *OpenShiftCluster) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationDelete, + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.RedHatOpenShift/openShiftClusters" +func (cluster *OpenShiftCluster) GetType() string { + return "Microsoft.RedHatOpenShift/openShiftClusters" +} + +// NewEmptyStatus returns a new empty (blank) status +func (cluster *OpenShiftCluster) NewEmptyStatus() genruntime.ConvertibleStatus { + return &OpenShiftCluster_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (cluster *OpenShiftCluster) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(cluster.Spec) + return cluster.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (cluster *OpenShiftCluster) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*OpenShiftCluster_STATUS); ok { + cluster.Status = *st + return nil + } + + // Convert status to required version + var st OpenShiftCluster_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + cluster.Status = st + return nil +} + +// +kubebuilder:webhook:path=/validate-redhatopenshift-azure-com-v1api20231122-openshiftcluster,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=redhatopenshift.azure.com,resources=openshiftclusters,verbs=create;update,versions=v1api20231122,name=validate.v1api20231122.openshiftclusters.redhatopenshift.azure.com,admissionReviewVersions=v1 + +var _ admission.Validator = &OpenShiftCluster{} + +// ValidateCreate validates the creation of the resource +func (cluster *OpenShiftCluster) ValidateCreate() (admission.Warnings, error) { + validations := cluster.createValidations() + var temp any = cluster + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.CreateValidations()...) + } + return genruntime.ValidateCreate(validations) +} + +// ValidateDelete validates the deletion of the resource +func (cluster *OpenShiftCluster) ValidateDelete() (admission.Warnings, error) { + validations := cluster.deleteValidations() + var temp any = cluster + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.DeleteValidations()...) + } + return genruntime.ValidateDelete(validations) +} + +// ValidateUpdate validates an update of the resource +func (cluster *OpenShiftCluster) ValidateUpdate(old runtime.Object) (admission.Warnings, error) { + validations := cluster.updateValidations() + var temp any = cluster + 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 (cluster *OpenShiftCluster) createValidations() []func() (admission.Warnings, error) { + return []func() (admission.Warnings, error){cluster.validateResourceReferences, cluster.validateOwnerReference, cluster.validateOptionalConfigMapReferences} +} + +// deleteValidations validates the deletion of the resource +func (cluster *OpenShiftCluster) deleteValidations() []func() (admission.Warnings, error) { + return nil +} + +// updateValidations validates the update of the resource +func (cluster *OpenShiftCluster) updateValidations() []func(old runtime.Object) (admission.Warnings, error) { + return []func(old runtime.Object) (admission.Warnings, error){ + func(old runtime.Object) (admission.Warnings, error) { + return cluster.validateResourceReferences() + }, + cluster.validateWriteOnceProperties, + func(old runtime.Object) (admission.Warnings, error) { + return cluster.validateOwnerReference() + }, + func(old runtime.Object) (admission.Warnings, error) { + return cluster.validateOptionalConfigMapReferences() + }, + } +} + +// validateOptionalConfigMapReferences validates all optional configmap reference pairs to ensure that at most 1 is set +func (cluster *OpenShiftCluster) validateOptionalConfigMapReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindOptionalConfigMapReferences(&cluster.Spec) + if err != nil { + return nil, err + } + return configmaps.ValidateOptionalReferences(refs) +} + +// validateOwnerReference validates the owner field +func (cluster *OpenShiftCluster) validateOwnerReference() (admission.Warnings, error) { + return genruntime.ValidateOwner(cluster) +} + +// validateResourceReferences validates all resource references +func (cluster *OpenShiftCluster) validateResourceReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindResourceReferences(&cluster.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateResourceReferences(refs) +} + +// validateWriteOnceProperties validates all WriteOnce properties +func (cluster *OpenShiftCluster) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) { + oldObj, ok := old.(*OpenShiftCluster) + if !ok { + return nil, nil + } + + return genruntime.ValidateWriteOnceProperties(oldObj, cluster) +} + +// AssignProperties_From_OpenShiftCluster populates our OpenShiftCluster from the provided source OpenShiftCluster +func (cluster *OpenShiftCluster) AssignProperties_From_OpenShiftCluster(source *storage.OpenShiftCluster) error { + + // ObjectMeta + cluster.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec OpenShiftCluster_Spec + err := spec.AssignProperties_From_OpenShiftCluster_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_OpenShiftCluster_Spec() to populate field Spec") + } + cluster.Spec = spec + + // Status + var status OpenShiftCluster_STATUS + err = status.AssignProperties_From_OpenShiftCluster_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_OpenShiftCluster_STATUS() to populate field Status") + } + cluster.Status = status + + // No error + return nil +} + +// AssignProperties_To_OpenShiftCluster populates the provided destination OpenShiftCluster from our OpenShiftCluster +func (cluster *OpenShiftCluster) AssignProperties_To_OpenShiftCluster(destination *storage.OpenShiftCluster) error { + + // ObjectMeta + destination.ObjectMeta = *cluster.ObjectMeta.DeepCopy() + + // Spec + var spec storage.OpenShiftCluster_Spec + err := cluster.Spec.AssignProperties_To_OpenShiftCluster_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_OpenShiftCluster_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status storage.OpenShiftCluster_STATUS + err = cluster.Status.AssignProperties_To_OpenShiftCluster_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_OpenShiftCluster_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 (cluster *OpenShiftCluster) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: cluster.Spec.OriginalVersion(), + Kind: "OpenShiftCluster", + } +} + +// +kubebuilder:object:root=true +// Generator information: +// - Generated from: /redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/openshiftclusters/stable/2023-11-22/redhatopenshift.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters/{resourceName} +type OpenShiftClusterList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []OpenShiftCluster `json:"items"` +} + +// +kubebuilder:validation:Enum={"2023-11-22"} +type APIVersion string + +const APIVersion_Value = APIVersion("2023-11-22") + +type OpenShiftCluster_Spec struct { + // ApiserverProfile: The cluster API server profile. + ApiserverProfile *APIServerProfile `json:"apiserverProfile,omitempty"` + + // 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"` + + // ClusterProfile: The cluster profile. + ClusterProfile *ClusterProfile `json:"clusterProfile,omitempty"` + + // IngressProfiles: The cluster ingress profiles. + IngressProfiles []IngressProfile `json:"ingressProfiles,omitempty"` + + // +kubebuilder:validation:Required + // Location: The geo-location where the resource lives + Location *string `json:"location,omitempty"` + + // MasterProfile: The cluster master profile. + MasterProfile *MasterProfile `json:"masterProfile,omitempty"` + + // NetworkProfile: The cluster network profile. + NetworkProfile *NetworkProfile `json:"networkProfile,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 resources.azure.com/ResourceGroup resource + Owner *genruntime.KnownResourceReference `group:"resources.azure.com" json:"owner,omitempty" kind:"ResourceGroup"` + + // ServicePrincipalProfile: The cluster service principal profile. + ServicePrincipalProfile *ServicePrincipalProfile `json:"servicePrincipalProfile,omitempty"` + + // Tags: Resource tags. + Tags map[string]string `json:"tags,omitempty"` + + // WorkerProfiles: The cluster worker profiles. + WorkerProfiles []WorkerProfile `json:"workerProfiles,omitempty"` +} + +var _ genruntime.ARMTransformer = &OpenShiftCluster_Spec{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (cluster *OpenShiftCluster_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if cluster == nil { + return nil, nil + } + result := &OpenShiftCluster_Spec_ARM{} + + // Set property "Location": + if cluster.Location != nil { + location := *cluster.Location + result.Location = &location + } + + // Set property "Name": + result.Name = resolved.Name + + // Set property "Properties": + if cluster.ApiserverProfile != nil || + cluster.ClusterProfile != nil || + cluster.IngressProfiles != nil || + cluster.MasterProfile != nil || + cluster.NetworkProfile != nil || + cluster.ServicePrincipalProfile != nil || + cluster.WorkerProfiles != nil { + result.Properties = &OpenShiftClusterProperties_ARM{} + } + if cluster.ApiserverProfile != nil { + apiserverProfile_ARM, err := (*cluster.ApiserverProfile).ConvertToARM(resolved) + if err != nil { + return nil, err + } + apiserverProfile := *apiserverProfile_ARM.(*APIServerProfile_ARM) + result.Properties.ApiserverProfile = &apiserverProfile + } + if cluster.ClusterProfile != nil { + clusterProfile_ARM, err := (*cluster.ClusterProfile).ConvertToARM(resolved) + if err != nil { + return nil, err + } + clusterProfile := *clusterProfile_ARM.(*ClusterProfile_ARM) + result.Properties.ClusterProfile = &clusterProfile + } + for _, item := range cluster.IngressProfiles { + item_ARM, err := item.ConvertToARM(resolved) + if err != nil { + return nil, err + } + result.Properties.IngressProfiles = append(result.Properties.IngressProfiles, *item_ARM.(*IngressProfile_ARM)) + } + if cluster.MasterProfile != nil { + masterProfile_ARM, err := (*cluster.MasterProfile).ConvertToARM(resolved) + if err != nil { + return nil, err + } + masterProfile := *masterProfile_ARM.(*MasterProfile_ARM) + result.Properties.MasterProfile = &masterProfile + } + if cluster.NetworkProfile != nil { + networkProfile_ARM, err := (*cluster.NetworkProfile).ConvertToARM(resolved) + if err != nil { + return nil, err + } + networkProfile := *networkProfile_ARM.(*NetworkProfile_ARM) + result.Properties.NetworkProfile = &networkProfile + } + if cluster.ServicePrincipalProfile != nil { + servicePrincipalProfile_ARM, err := (*cluster.ServicePrincipalProfile).ConvertToARM(resolved) + if err != nil { + return nil, err + } + servicePrincipalProfile := *servicePrincipalProfile_ARM.(*ServicePrincipalProfile_ARM) + result.Properties.ServicePrincipalProfile = &servicePrincipalProfile + } + for _, item := range cluster.WorkerProfiles { + item_ARM, err := item.ConvertToARM(resolved) + if err != nil { + return nil, err + } + result.Properties.WorkerProfiles = append(result.Properties.WorkerProfiles, *item_ARM.(*WorkerProfile_ARM)) + } + + // Set property "Tags": + if cluster.Tags != nil { + result.Tags = make(map[string]string, len(cluster.Tags)) + for key, value := range cluster.Tags { + result.Tags[key] = value + } + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (cluster *OpenShiftCluster_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &OpenShiftCluster_Spec_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (cluster *OpenShiftCluster_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(OpenShiftCluster_Spec_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected OpenShiftCluster_Spec_ARM, got %T", armInput) + } + + // Set property "ApiserverProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ApiserverProfile != nil { + var apiserverProfile1 APIServerProfile + err := apiserverProfile1.PopulateFromARM(owner, *typedInput.Properties.ApiserverProfile) + if err != nil { + return err + } + apiserverProfile := apiserverProfile1 + cluster.ApiserverProfile = &apiserverProfile + } + } + + // Set property "AzureName": + cluster.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name)) + + // Set property "ClusterProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ClusterProfile != nil { + var clusterProfile1 ClusterProfile + err := clusterProfile1.PopulateFromARM(owner, *typedInput.Properties.ClusterProfile) + if err != nil { + return err + } + clusterProfile := clusterProfile1 + cluster.ClusterProfile = &clusterProfile + } + } + + // Set property "IngressProfiles": + // copying flattened property: + if typedInput.Properties != nil { + for _, item := range typedInput.Properties.IngressProfiles { + var item1 IngressProfile + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + cluster.IngressProfiles = append(cluster.IngressProfiles, item1) + } + } + + // Set property "Location": + if typedInput.Location != nil { + location := *typedInput.Location + cluster.Location = &location + } + + // Set property "MasterProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.MasterProfile != nil { + var masterProfile1 MasterProfile + err := masterProfile1.PopulateFromARM(owner, *typedInput.Properties.MasterProfile) + if err != nil { + return err + } + masterProfile := masterProfile1 + cluster.MasterProfile = &masterProfile + } + } + + // Set property "NetworkProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.NetworkProfile != nil { + var networkProfile1 NetworkProfile + err := networkProfile1.PopulateFromARM(owner, *typedInput.Properties.NetworkProfile) + if err != nil { + return err + } + networkProfile := networkProfile1 + cluster.NetworkProfile = &networkProfile + } + } + + // Set property "Owner": + cluster.Owner = &genruntime.KnownResourceReference{ + Name: owner.Name, + ARMID: owner.ARMID, + } + + // Set property "ServicePrincipalProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ServicePrincipalProfile != nil { + var servicePrincipalProfile1 ServicePrincipalProfile + err := servicePrincipalProfile1.PopulateFromARM(owner, *typedInput.Properties.ServicePrincipalProfile) + if err != nil { + return err + } + servicePrincipalProfile := servicePrincipalProfile1 + cluster.ServicePrincipalProfile = &servicePrincipalProfile + } + } + + // Set property "Tags": + if typedInput.Tags != nil { + cluster.Tags = make(map[string]string, len(typedInput.Tags)) + for key, value := range typedInput.Tags { + cluster.Tags[key] = value + } + } + + // Set property "WorkerProfiles": + // copying flattened property: + if typedInput.Properties != nil { + for _, item := range typedInput.Properties.WorkerProfiles { + var item1 WorkerProfile + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + cluster.WorkerProfiles = append(cluster.WorkerProfiles, item1) + } + } + + // No error + return nil +} + +var _ genruntime.ConvertibleSpec = &OpenShiftCluster_Spec{} + +// ConvertSpecFrom populates our OpenShiftCluster_Spec from the provided source +func (cluster *OpenShiftCluster_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*storage.OpenShiftCluster_Spec) + if ok { + // Populate our instance from source + return cluster.AssignProperties_From_OpenShiftCluster_Spec(src) + } + + // Convert to an intermediate form + src = &storage.OpenShiftCluster_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = cluster.AssignProperties_From_OpenShiftCluster_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our OpenShiftCluster_Spec +func (cluster *OpenShiftCluster_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*storage.OpenShiftCluster_Spec) + if ok { + // Populate destination from our instance + return cluster.AssignProperties_To_OpenShiftCluster_Spec(dst) + } + + // Convert to an intermediate form + dst = &storage.OpenShiftCluster_Spec{} + err := cluster.AssignProperties_To_OpenShiftCluster_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_OpenShiftCluster_Spec populates our OpenShiftCluster_Spec from the provided source OpenShiftCluster_Spec +func (cluster *OpenShiftCluster_Spec) AssignProperties_From_OpenShiftCluster_Spec(source *storage.OpenShiftCluster_Spec) error { + + // ApiserverProfile + if source.ApiserverProfile != nil { + var apiserverProfile APIServerProfile + err := apiserverProfile.AssignProperties_From_APIServerProfile(source.ApiserverProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_APIServerProfile() to populate field ApiserverProfile") + } + cluster.ApiserverProfile = &apiserverProfile + } else { + cluster.ApiserverProfile = nil + } + + // AzureName + cluster.AzureName = source.AzureName + + // ClusterProfile + if source.ClusterProfile != nil { + var clusterProfile ClusterProfile + err := clusterProfile.AssignProperties_From_ClusterProfile(source.ClusterProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_ClusterProfile() to populate field ClusterProfile") + } + cluster.ClusterProfile = &clusterProfile + } else { + cluster.ClusterProfile = nil + } + + // IngressProfiles + if source.IngressProfiles != nil { + ingressProfileList := make([]IngressProfile, len(source.IngressProfiles)) + for ingressProfileIndex, ingressProfileItem := range source.IngressProfiles { + // Shadow the loop variable to avoid aliasing + ingressProfileItem := ingressProfileItem + var ingressProfile IngressProfile + err := ingressProfile.AssignProperties_From_IngressProfile(&ingressProfileItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_IngressProfile() to populate field IngressProfiles") + } + ingressProfileList[ingressProfileIndex] = ingressProfile + } + cluster.IngressProfiles = ingressProfileList + } else { + cluster.IngressProfiles = nil + } + + // Location + cluster.Location = genruntime.ClonePointerToString(source.Location) + + // MasterProfile + if source.MasterProfile != nil { + var masterProfile MasterProfile + err := masterProfile.AssignProperties_From_MasterProfile(source.MasterProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_MasterProfile() to populate field MasterProfile") + } + cluster.MasterProfile = &masterProfile + } else { + cluster.MasterProfile = nil + } + + // NetworkProfile + if source.NetworkProfile != nil { + var networkProfile NetworkProfile + err := networkProfile.AssignProperties_From_NetworkProfile(source.NetworkProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_NetworkProfile() to populate field NetworkProfile") + } + cluster.NetworkProfile = &networkProfile + } else { + cluster.NetworkProfile = nil + } + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + cluster.Owner = &owner + } else { + cluster.Owner = nil + } + + // ServicePrincipalProfile + if source.ServicePrincipalProfile != nil { + var servicePrincipalProfile ServicePrincipalProfile + err := servicePrincipalProfile.AssignProperties_From_ServicePrincipalProfile(source.ServicePrincipalProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_ServicePrincipalProfile() to populate field ServicePrincipalProfile") + } + cluster.ServicePrincipalProfile = &servicePrincipalProfile + } else { + cluster.ServicePrincipalProfile = nil + } + + // Tags + cluster.Tags = genruntime.CloneMapOfStringToString(source.Tags) + + // WorkerProfiles + if source.WorkerProfiles != nil { + workerProfileList := make([]WorkerProfile, len(source.WorkerProfiles)) + for workerProfileIndex, workerProfileItem := range source.WorkerProfiles { + // Shadow the loop variable to avoid aliasing + workerProfileItem := workerProfileItem + var workerProfile WorkerProfile + err := workerProfile.AssignProperties_From_WorkerProfile(&workerProfileItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_WorkerProfile() to populate field WorkerProfiles") + } + workerProfileList[workerProfileIndex] = workerProfile + } + cluster.WorkerProfiles = workerProfileList + } else { + cluster.WorkerProfiles = nil + } + + // No error + return nil +} + +// AssignProperties_To_OpenShiftCluster_Spec populates the provided destination OpenShiftCluster_Spec from our OpenShiftCluster_Spec +func (cluster *OpenShiftCluster_Spec) AssignProperties_To_OpenShiftCluster_Spec(destination *storage.OpenShiftCluster_Spec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ApiserverProfile + if cluster.ApiserverProfile != nil { + var apiserverProfile storage.APIServerProfile + err := cluster.ApiserverProfile.AssignProperties_To_APIServerProfile(&apiserverProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_APIServerProfile() to populate field ApiserverProfile") + } + destination.ApiserverProfile = &apiserverProfile + } else { + destination.ApiserverProfile = nil + } + + // AzureName + destination.AzureName = cluster.AzureName + + // ClusterProfile + if cluster.ClusterProfile != nil { + var clusterProfile storage.ClusterProfile + err := cluster.ClusterProfile.AssignProperties_To_ClusterProfile(&clusterProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_ClusterProfile() to populate field ClusterProfile") + } + destination.ClusterProfile = &clusterProfile + } else { + destination.ClusterProfile = nil + } + + // IngressProfiles + if cluster.IngressProfiles != nil { + ingressProfileList := make([]storage.IngressProfile, len(cluster.IngressProfiles)) + for ingressProfileIndex, ingressProfileItem := range cluster.IngressProfiles { + // Shadow the loop variable to avoid aliasing + ingressProfileItem := ingressProfileItem + var ingressProfile storage.IngressProfile + err := ingressProfileItem.AssignProperties_To_IngressProfile(&ingressProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_IngressProfile() to populate field IngressProfiles") + } + ingressProfileList[ingressProfileIndex] = ingressProfile + } + destination.IngressProfiles = ingressProfileList + } else { + destination.IngressProfiles = nil + } + + // Location + destination.Location = genruntime.ClonePointerToString(cluster.Location) + + // MasterProfile + if cluster.MasterProfile != nil { + var masterProfile storage.MasterProfile + err := cluster.MasterProfile.AssignProperties_To_MasterProfile(&masterProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_MasterProfile() to populate field MasterProfile") + } + destination.MasterProfile = &masterProfile + } else { + destination.MasterProfile = nil + } + + // NetworkProfile + if cluster.NetworkProfile != nil { + var networkProfile storage.NetworkProfile + err := cluster.NetworkProfile.AssignProperties_To_NetworkProfile(&networkProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_NetworkProfile() to populate field NetworkProfile") + } + destination.NetworkProfile = &networkProfile + } else { + destination.NetworkProfile = nil + } + + // OriginalVersion + destination.OriginalVersion = cluster.OriginalVersion() + + // Owner + if cluster.Owner != nil { + owner := cluster.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // ServicePrincipalProfile + if cluster.ServicePrincipalProfile != nil { + var servicePrincipalProfile storage.ServicePrincipalProfile + err := cluster.ServicePrincipalProfile.AssignProperties_To_ServicePrincipalProfile(&servicePrincipalProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_ServicePrincipalProfile() to populate field ServicePrincipalProfile") + } + destination.ServicePrincipalProfile = &servicePrincipalProfile + } else { + destination.ServicePrincipalProfile = nil + } + + // Tags + destination.Tags = genruntime.CloneMapOfStringToString(cluster.Tags) + + // WorkerProfiles + if cluster.WorkerProfiles != nil { + workerProfileList := make([]storage.WorkerProfile, len(cluster.WorkerProfiles)) + for workerProfileIndex, workerProfileItem := range cluster.WorkerProfiles { + // Shadow the loop variable to avoid aliasing + workerProfileItem := workerProfileItem + var workerProfile storage.WorkerProfile + err := workerProfileItem.AssignProperties_To_WorkerProfile(&workerProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_WorkerProfile() to populate field WorkerProfiles") + } + workerProfileList[workerProfileIndex] = workerProfile + } + destination.WorkerProfiles = workerProfileList + } else { + destination.WorkerProfiles = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_OpenShiftCluster_STATUS populates our OpenShiftCluster_Spec from the provided source OpenShiftCluster_STATUS +func (cluster *OpenShiftCluster_Spec) Initialize_From_OpenShiftCluster_STATUS(source *OpenShiftCluster_STATUS) error { + + // ApiserverProfile + if source.ApiserverProfile != nil { + var apiserverProfile APIServerProfile + err := apiserverProfile.Initialize_From_APIServerProfile_STATUS(source.ApiserverProfile) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_APIServerProfile_STATUS() to populate field ApiserverProfile") + } + cluster.ApiserverProfile = &apiserverProfile + } else { + cluster.ApiserverProfile = nil + } + + // ClusterProfile + if source.ClusterProfile != nil { + var clusterProfile ClusterProfile + err := clusterProfile.Initialize_From_ClusterProfile_STATUS(source.ClusterProfile) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_ClusterProfile_STATUS() to populate field ClusterProfile") + } + cluster.ClusterProfile = &clusterProfile + } else { + cluster.ClusterProfile = nil + } + + // IngressProfiles + if source.IngressProfiles != nil { + ingressProfileList := make([]IngressProfile, len(source.IngressProfiles)) + for ingressProfileIndex, ingressProfileItem := range source.IngressProfiles { + // Shadow the loop variable to avoid aliasing + ingressProfileItem := ingressProfileItem + var ingressProfile IngressProfile + err := ingressProfile.Initialize_From_IngressProfile_STATUS(&ingressProfileItem) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_IngressProfile_STATUS() to populate field IngressProfiles") + } + ingressProfileList[ingressProfileIndex] = ingressProfile + } + cluster.IngressProfiles = ingressProfileList + } else { + cluster.IngressProfiles = nil + } + + // Location + cluster.Location = genruntime.ClonePointerToString(source.Location) + + // MasterProfile + if source.MasterProfile != nil { + var masterProfile MasterProfile + err := masterProfile.Initialize_From_MasterProfile_STATUS(source.MasterProfile) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_MasterProfile_STATUS() to populate field MasterProfile") + } + cluster.MasterProfile = &masterProfile + } else { + cluster.MasterProfile = nil + } + + // NetworkProfile + if source.NetworkProfile != nil { + var networkProfile NetworkProfile + err := networkProfile.Initialize_From_NetworkProfile_STATUS(source.NetworkProfile) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_NetworkProfile_STATUS() to populate field NetworkProfile") + } + cluster.NetworkProfile = &networkProfile + } else { + cluster.NetworkProfile = nil + } + + // ServicePrincipalProfile + if source.ServicePrincipalProfile != nil { + var servicePrincipalProfile ServicePrincipalProfile + err := servicePrincipalProfile.Initialize_From_ServicePrincipalProfile_STATUS(source.ServicePrincipalProfile) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_ServicePrincipalProfile_STATUS() to populate field ServicePrincipalProfile") + } + cluster.ServicePrincipalProfile = &servicePrincipalProfile + } else { + cluster.ServicePrincipalProfile = nil + } + + // Tags + cluster.Tags = genruntime.CloneMapOfStringToString(source.Tags) + + // WorkerProfiles + if source.WorkerProfiles != nil { + workerProfileList := make([]WorkerProfile, len(source.WorkerProfiles)) + for workerProfileIndex, workerProfileItem := range source.WorkerProfiles { + // Shadow the loop variable to avoid aliasing + workerProfileItem := workerProfileItem + var workerProfile WorkerProfile + err := workerProfile.Initialize_From_WorkerProfile_STATUS(&workerProfileItem) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_WorkerProfile_STATUS() to populate field WorkerProfiles") + } + workerProfileList[workerProfileIndex] = workerProfile + } + cluster.WorkerProfiles = workerProfileList + } else { + cluster.WorkerProfiles = nil + } + + // No error + return nil +} + +// OriginalVersion returns the original API version used to create the resource. +func (cluster *OpenShiftCluster_Spec) OriginalVersion() string { + return GroupVersion.Version +} + +// SetAzureName sets the Azure name of the resource +func (cluster *OpenShiftCluster_Spec) SetAzureName(azureName string) { cluster.AzureName = azureName } + +// OpenShiftCluster represents an Azure Red Hat OpenShift cluster. +type OpenShiftCluster_STATUS struct { + // ApiserverProfile: The cluster API server profile. + ApiserverProfile *APIServerProfile_STATUS `json:"apiserverProfile,omitempty"` + + // ClusterProfile: The cluster profile. + ClusterProfile *ClusterProfile_STATUS `json:"clusterProfile,omitempty"` + + // Conditions: The observed state of the resource + Conditions []conditions.Condition `json:"conditions,omitempty"` + + // ConsoleProfile: The console profile. + ConsoleProfile *ConsoleProfile_STATUS `json:"consoleProfile,omitempty"` + + // Id: Fully qualified resource ID for the resource. Ex - + // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + Id *string `json:"id,omitempty"` + + // IngressProfiles: The cluster ingress profiles. + IngressProfiles []IngressProfile_STATUS `json:"ingressProfiles,omitempty"` + + // Location: The geo-location where the resource lives + Location *string `json:"location,omitempty"` + + // MasterProfile: The cluster master profile. + MasterProfile *MasterProfile_STATUS `json:"masterProfile,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // NetworkProfile: The cluster network profile. + NetworkProfile *NetworkProfile_STATUS `json:"networkProfile,omitempty"` + + // ProvisioningState: The cluster provisioning state. + ProvisioningState *ProvisioningState_STATUS `json:"provisioningState,omitempty"` + + // ServicePrincipalProfile: The cluster service principal profile. + ServicePrincipalProfile *ServicePrincipalProfile_STATUS `json:"servicePrincipalProfile,omitempty"` + + // SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData_STATUS `json:"systemData,omitempty"` + + // Tags: Resource tags. + Tags map[string]string `json:"tags,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` + + // WorkerProfiles: The cluster worker profiles. + WorkerProfiles []WorkerProfile_STATUS `json:"workerProfiles,omitempty"` + + // WorkerProfilesStatus: The cluster worker profiles status. + WorkerProfilesStatus []WorkerProfile_STATUS `json:"workerProfilesStatus,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &OpenShiftCluster_STATUS{} + +// ConvertStatusFrom populates our OpenShiftCluster_STATUS from the provided source +func (cluster *OpenShiftCluster_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*storage.OpenShiftCluster_STATUS) + if ok { + // Populate our instance from source + return cluster.AssignProperties_From_OpenShiftCluster_STATUS(src) + } + + // Convert to an intermediate form + src = &storage.OpenShiftCluster_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = cluster.AssignProperties_From_OpenShiftCluster_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our OpenShiftCluster_STATUS +func (cluster *OpenShiftCluster_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*storage.OpenShiftCluster_STATUS) + if ok { + // Populate destination from our instance + return cluster.AssignProperties_To_OpenShiftCluster_STATUS(dst) + } + + // Convert to an intermediate form + dst = &storage.OpenShiftCluster_STATUS{} + err := cluster.AssignProperties_To_OpenShiftCluster_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 = &OpenShiftCluster_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (cluster *OpenShiftCluster_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &OpenShiftCluster_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (cluster *OpenShiftCluster_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(OpenShiftCluster_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected OpenShiftCluster_STATUS_ARM, got %T", armInput) + } + + // Set property "ApiserverProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ApiserverProfile != nil { + var apiserverProfile1 APIServerProfile_STATUS + err := apiserverProfile1.PopulateFromARM(owner, *typedInput.Properties.ApiserverProfile) + if err != nil { + return err + } + apiserverProfile := apiserverProfile1 + cluster.ApiserverProfile = &apiserverProfile + } + } + + // Set property "ClusterProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ClusterProfile != nil { + var clusterProfile1 ClusterProfile_STATUS + err := clusterProfile1.PopulateFromARM(owner, *typedInput.Properties.ClusterProfile) + if err != nil { + return err + } + clusterProfile := clusterProfile1 + cluster.ClusterProfile = &clusterProfile + } + } + + // no assignment for property "Conditions" + + // Set property "ConsoleProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ConsoleProfile != nil { + var consoleProfile1 ConsoleProfile_STATUS + err := consoleProfile1.PopulateFromARM(owner, *typedInput.Properties.ConsoleProfile) + if err != nil { + return err + } + consoleProfile := consoleProfile1 + cluster.ConsoleProfile = &consoleProfile + } + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + cluster.Id = &id + } + + // Set property "IngressProfiles": + // copying flattened property: + if typedInput.Properties != nil { + for _, item := range typedInput.Properties.IngressProfiles { + var item1 IngressProfile_STATUS + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + cluster.IngressProfiles = append(cluster.IngressProfiles, item1) + } + } + + // Set property "Location": + if typedInput.Location != nil { + location := *typedInput.Location + cluster.Location = &location + } + + // Set property "MasterProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.MasterProfile != nil { + var masterProfile1 MasterProfile_STATUS + err := masterProfile1.PopulateFromARM(owner, *typedInput.Properties.MasterProfile) + if err != nil { + return err + } + masterProfile := masterProfile1 + cluster.MasterProfile = &masterProfile + } + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + cluster.Name = &name + } + + // Set property "NetworkProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.NetworkProfile != nil { + var networkProfile1 NetworkProfile_STATUS + err := networkProfile1.PopulateFromARM(owner, *typedInput.Properties.NetworkProfile) + if err != nil { + return err + } + networkProfile := networkProfile1 + cluster.NetworkProfile = &networkProfile + } + } + + // Set property "ProvisioningState": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ProvisioningState != nil { + provisioningState := *typedInput.Properties.ProvisioningState + cluster.ProvisioningState = &provisioningState + } + } + + // Set property "ServicePrincipalProfile": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ServicePrincipalProfile != nil { + var servicePrincipalProfile1 ServicePrincipalProfile_STATUS + err := servicePrincipalProfile1.PopulateFromARM(owner, *typedInput.Properties.ServicePrincipalProfile) + if err != nil { + return err + } + servicePrincipalProfile := servicePrincipalProfile1 + cluster.ServicePrincipalProfile = &servicePrincipalProfile + } + } + + // Set property "SystemData": + if typedInput.SystemData != nil { + var systemData1 SystemData_STATUS + err := systemData1.PopulateFromARM(owner, *typedInput.SystemData) + if err != nil { + return err + } + systemData := systemData1 + cluster.SystemData = &systemData + } + + // Set property "Tags": + if typedInput.Tags != nil { + cluster.Tags = make(map[string]string, len(typedInput.Tags)) + for key, value := range typedInput.Tags { + cluster.Tags[key] = value + } + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + cluster.Type = &typeVar + } + + // Set property "WorkerProfiles": + // copying flattened property: + if typedInput.Properties != nil { + for _, item := range typedInput.Properties.WorkerProfiles { + var item1 WorkerProfile_STATUS + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + cluster.WorkerProfiles = append(cluster.WorkerProfiles, item1) + } + } + + // Set property "WorkerProfilesStatus": + // copying flattened property: + if typedInput.Properties != nil { + for _, item := range typedInput.Properties.WorkerProfilesStatus { + var item1 WorkerProfile_STATUS + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + cluster.WorkerProfilesStatus = append(cluster.WorkerProfilesStatus, item1) + } + } + + // No error + return nil +} + +// AssignProperties_From_OpenShiftCluster_STATUS populates our OpenShiftCluster_STATUS from the provided source OpenShiftCluster_STATUS +func (cluster *OpenShiftCluster_STATUS) AssignProperties_From_OpenShiftCluster_STATUS(source *storage.OpenShiftCluster_STATUS) error { + + // ApiserverProfile + if source.ApiserverProfile != nil { + var apiserverProfile APIServerProfile_STATUS + err := apiserverProfile.AssignProperties_From_APIServerProfile_STATUS(source.ApiserverProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_APIServerProfile_STATUS() to populate field ApiserverProfile") + } + cluster.ApiserverProfile = &apiserverProfile + } else { + cluster.ApiserverProfile = nil + } + + // ClusterProfile + if source.ClusterProfile != nil { + var clusterProfile ClusterProfile_STATUS + err := clusterProfile.AssignProperties_From_ClusterProfile_STATUS(source.ClusterProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_ClusterProfile_STATUS() to populate field ClusterProfile") + } + cluster.ClusterProfile = &clusterProfile + } else { + cluster.ClusterProfile = nil + } + + // Conditions + cluster.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // ConsoleProfile + if source.ConsoleProfile != nil { + var consoleProfile ConsoleProfile_STATUS + err := consoleProfile.AssignProperties_From_ConsoleProfile_STATUS(source.ConsoleProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_ConsoleProfile_STATUS() to populate field ConsoleProfile") + } + cluster.ConsoleProfile = &consoleProfile + } else { + cluster.ConsoleProfile = nil + } + + // Id + cluster.Id = genruntime.ClonePointerToString(source.Id) + + // IngressProfiles + if source.IngressProfiles != nil { + ingressProfileList := make([]IngressProfile_STATUS, len(source.IngressProfiles)) + for ingressProfileIndex, ingressProfileItem := range source.IngressProfiles { + // Shadow the loop variable to avoid aliasing + ingressProfileItem := ingressProfileItem + var ingressProfile IngressProfile_STATUS + err := ingressProfile.AssignProperties_From_IngressProfile_STATUS(&ingressProfileItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_IngressProfile_STATUS() to populate field IngressProfiles") + } + ingressProfileList[ingressProfileIndex] = ingressProfile + } + cluster.IngressProfiles = ingressProfileList + } else { + cluster.IngressProfiles = nil + } + + // Location + cluster.Location = genruntime.ClonePointerToString(source.Location) + + // MasterProfile + if source.MasterProfile != nil { + var masterProfile MasterProfile_STATUS + err := masterProfile.AssignProperties_From_MasterProfile_STATUS(source.MasterProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_MasterProfile_STATUS() to populate field MasterProfile") + } + cluster.MasterProfile = &masterProfile + } else { + cluster.MasterProfile = nil + } + + // Name + cluster.Name = genruntime.ClonePointerToString(source.Name) + + // NetworkProfile + if source.NetworkProfile != nil { + var networkProfile NetworkProfile_STATUS + err := networkProfile.AssignProperties_From_NetworkProfile_STATUS(source.NetworkProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_NetworkProfile_STATUS() to populate field NetworkProfile") + } + cluster.NetworkProfile = &networkProfile + } else { + cluster.NetworkProfile = nil + } + + // ProvisioningState + if source.ProvisioningState != nil { + provisioningState := *source.ProvisioningState + provisioningStateTemp := genruntime.ToEnum(provisioningState, provisioningState_STATUS_Values) + cluster.ProvisioningState = &provisioningStateTemp + } else { + cluster.ProvisioningState = nil + } + + // ServicePrincipalProfile + if source.ServicePrincipalProfile != nil { + var servicePrincipalProfile ServicePrincipalProfile_STATUS + err := servicePrincipalProfile.AssignProperties_From_ServicePrincipalProfile_STATUS(source.ServicePrincipalProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_ServicePrincipalProfile_STATUS() to populate field ServicePrincipalProfile") + } + cluster.ServicePrincipalProfile = &servicePrincipalProfile + } else { + cluster.ServicePrincipalProfile = nil + } + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + cluster.SystemData = &systemDatum + } else { + cluster.SystemData = nil + } + + // Tags + cluster.Tags = genruntime.CloneMapOfStringToString(source.Tags) + + // Type + cluster.Type = genruntime.ClonePointerToString(source.Type) + + // WorkerProfiles + if source.WorkerProfiles != nil { + workerProfileList := make([]WorkerProfile_STATUS, len(source.WorkerProfiles)) + for workerProfileIndex, workerProfileItem := range source.WorkerProfiles { + // Shadow the loop variable to avoid aliasing + workerProfileItem := workerProfileItem + var workerProfile WorkerProfile_STATUS + err := workerProfile.AssignProperties_From_WorkerProfile_STATUS(&workerProfileItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_WorkerProfile_STATUS() to populate field WorkerProfiles") + } + workerProfileList[workerProfileIndex] = workerProfile + } + cluster.WorkerProfiles = workerProfileList + } else { + cluster.WorkerProfiles = nil + } + + // WorkerProfilesStatus + if source.WorkerProfilesStatus != nil { + workerProfilesStatusList := make([]WorkerProfile_STATUS, len(source.WorkerProfilesStatus)) + for workerProfilesStatusIndex, workerProfilesStatusItem := range source.WorkerProfilesStatus { + // Shadow the loop variable to avoid aliasing + workerProfilesStatusItem := workerProfilesStatusItem + var workerProfilesStatus WorkerProfile_STATUS + err := workerProfilesStatus.AssignProperties_From_WorkerProfile_STATUS(&workerProfilesStatusItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_WorkerProfile_STATUS() to populate field WorkerProfilesStatus") + } + workerProfilesStatusList[workerProfilesStatusIndex] = workerProfilesStatus + } + cluster.WorkerProfilesStatus = workerProfilesStatusList + } else { + cluster.WorkerProfilesStatus = nil + } + + // No error + return nil +} + +// AssignProperties_To_OpenShiftCluster_STATUS populates the provided destination OpenShiftCluster_STATUS from our OpenShiftCluster_STATUS +func (cluster *OpenShiftCluster_STATUS) AssignProperties_To_OpenShiftCluster_STATUS(destination *storage.OpenShiftCluster_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ApiserverProfile + if cluster.ApiserverProfile != nil { + var apiserverProfile storage.APIServerProfile_STATUS + err := cluster.ApiserverProfile.AssignProperties_To_APIServerProfile_STATUS(&apiserverProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_APIServerProfile_STATUS() to populate field ApiserverProfile") + } + destination.ApiserverProfile = &apiserverProfile + } else { + destination.ApiserverProfile = nil + } + + // ClusterProfile + if cluster.ClusterProfile != nil { + var clusterProfile storage.ClusterProfile_STATUS + err := cluster.ClusterProfile.AssignProperties_To_ClusterProfile_STATUS(&clusterProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_ClusterProfile_STATUS() to populate field ClusterProfile") + } + destination.ClusterProfile = &clusterProfile + } else { + destination.ClusterProfile = nil + } + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(cluster.Conditions) + + // ConsoleProfile + if cluster.ConsoleProfile != nil { + var consoleProfile storage.ConsoleProfile_STATUS + err := cluster.ConsoleProfile.AssignProperties_To_ConsoleProfile_STATUS(&consoleProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_ConsoleProfile_STATUS() to populate field ConsoleProfile") + } + destination.ConsoleProfile = &consoleProfile + } else { + destination.ConsoleProfile = nil + } + + // Id + destination.Id = genruntime.ClonePointerToString(cluster.Id) + + // IngressProfiles + if cluster.IngressProfiles != nil { + ingressProfileList := make([]storage.IngressProfile_STATUS, len(cluster.IngressProfiles)) + for ingressProfileIndex, ingressProfileItem := range cluster.IngressProfiles { + // Shadow the loop variable to avoid aliasing + ingressProfileItem := ingressProfileItem + var ingressProfile storage.IngressProfile_STATUS + err := ingressProfileItem.AssignProperties_To_IngressProfile_STATUS(&ingressProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_IngressProfile_STATUS() to populate field IngressProfiles") + } + ingressProfileList[ingressProfileIndex] = ingressProfile + } + destination.IngressProfiles = ingressProfileList + } else { + destination.IngressProfiles = nil + } + + // Location + destination.Location = genruntime.ClonePointerToString(cluster.Location) + + // MasterProfile + if cluster.MasterProfile != nil { + var masterProfile storage.MasterProfile_STATUS + err := cluster.MasterProfile.AssignProperties_To_MasterProfile_STATUS(&masterProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_MasterProfile_STATUS() to populate field MasterProfile") + } + destination.MasterProfile = &masterProfile + } else { + destination.MasterProfile = nil + } + + // Name + destination.Name = genruntime.ClonePointerToString(cluster.Name) + + // NetworkProfile + if cluster.NetworkProfile != nil { + var networkProfile storage.NetworkProfile_STATUS + err := cluster.NetworkProfile.AssignProperties_To_NetworkProfile_STATUS(&networkProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_NetworkProfile_STATUS() to populate field NetworkProfile") + } + destination.NetworkProfile = &networkProfile + } else { + destination.NetworkProfile = nil + } + + // ProvisioningState + if cluster.ProvisioningState != nil { + provisioningState := string(*cluster.ProvisioningState) + destination.ProvisioningState = &provisioningState + } else { + destination.ProvisioningState = nil + } + + // ServicePrincipalProfile + if cluster.ServicePrincipalProfile != nil { + var servicePrincipalProfile storage.ServicePrincipalProfile_STATUS + err := cluster.ServicePrincipalProfile.AssignProperties_To_ServicePrincipalProfile_STATUS(&servicePrincipalProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_ServicePrincipalProfile_STATUS() to populate field ServicePrincipalProfile") + } + destination.ServicePrincipalProfile = &servicePrincipalProfile + } else { + destination.ServicePrincipalProfile = nil + } + + // SystemData + if cluster.SystemData != nil { + var systemDatum storage.SystemData_STATUS + err := cluster.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // Tags + destination.Tags = genruntime.CloneMapOfStringToString(cluster.Tags) + + // Type + destination.Type = genruntime.ClonePointerToString(cluster.Type) + + // WorkerProfiles + if cluster.WorkerProfiles != nil { + workerProfileList := make([]storage.WorkerProfile_STATUS, len(cluster.WorkerProfiles)) + for workerProfileIndex, workerProfileItem := range cluster.WorkerProfiles { + // Shadow the loop variable to avoid aliasing + workerProfileItem := workerProfileItem + var workerProfile storage.WorkerProfile_STATUS + err := workerProfileItem.AssignProperties_To_WorkerProfile_STATUS(&workerProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_WorkerProfile_STATUS() to populate field WorkerProfiles") + } + workerProfileList[workerProfileIndex] = workerProfile + } + destination.WorkerProfiles = workerProfileList + } else { + destination.WorkerProfiles = nil + } + + // WorkerProfilesStatus + if cluster.WorkerProfilesStatus != nil { + workerProfilesStatusList := make([]storage.WorkerProfile_STATUS, len(cluster.WorkerProfilesStatus)) + for workerProfilesStatusIndex, workerProfilesStatusItem := range cluster.WorkerProfilesStatus { + // Shadow the loop variable to avoid aliasing + workerProfilesStatusItem := workerProfilesStatusItem + var workerProfilesStatus storage.WorkerProfile_STATUS + err := workerProfilesStatusItem.AssignProperties_To_WorkerProfile_STATUS(&workerProfilesStatus) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_WorkerProfile_STATUS() to populate field WorkerProfilesStatus") + } + workerProfilesStatusList[workerProfilesStatusIndex] = workerProfilesStatus + } + destination.WorkerProfilesStatus = workerProfilesStatusList + } else { + destination.WorkerProfilesStatus = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// APIServerProfile represents an API server profile. +type APIServerProfile struct { + // Visibility: API server visibility. + Visibility *Visibility `json:"visibility,omitempty"` +} + +var _ genruntime.ARMTransformer = &APIServerProfile{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (profile *APIServerProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if profile == nil { + return nil, nil + } + result := &APIServerProfile_ARM{} + + // Set property "Visibility": + if profile.Visibility != nil { + visibility := *profile.Visibility + result.Visibility = &visibility + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *APIServerProfile) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &APIServerProfile_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *APIServerProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(APIServerProfile_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected APIServerProfile_ARM, got %T", armInput) + } + + // Set property "Visibility": + if typedInput.Visibility != nil { + visibility := *typedInput.Visibility + profile.Visibility = &visibility + } + + // No error + return nil +} + +// AssignProperties_From_APIServerProfile populates our APIServerProfile from the provided source APIServerProfile +func (profile *APIServerProfile) AssignProperties_From_APIServerProfile(source *storage.APIServerProfile) error { + + // Visibility + if source.Visibility != nil { + visibility := *source.Visibility + visibilityTemp := genruntime.ToEnum(visibility, visibility_Values) + profile.Visibility = &visibilityTemp + } else { + profile.Visibility = nil + } + + // No error + return nil +} + +// AssignProperties_To_APIServerProfile populates the provided destination APIServerProfile from our APIServerProfile +func (profile *APIServerProfile) AssignProperties_To_APIServerProfile(destination *storage.APIServerProfile) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Visibility + if profile.Visibility != nil { + visibility := string(*profile.Visibility) + destination.Visibility = &visibility + } else { + destination.Visibility = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_APIServerProfile_STATUS populates our APIServerProfile from the provided source APIServerProfile_STATUS +func (profile *APIServerProfile) Initialize_From_APIServerProfile_STATUS(source *APIServerProfile_STATUS) error { + + // Visibility + if source.Visibility != nil { + visibility := genruntime.ToEnum(string(*source.Visibility), visibility_Values) + profile.Visibility = &visibility + } else { + profile.Visibility = nil + } + + // No error + return nil +} + +// APIServerProfile represents an API server profile. +type APIServerProfile_STATUS struct { + // Ip: The IP of the cluster API server. + Ip *string `json:"ip,omitempty"` + + // Url: The URL to access the cluster API server. + Url *string `json:"url,omitempty"` + + // Visibility: API server visibility. + Visibility *Visibility_STATUS `json:"visibility,omitempty"` +} + +var _ genruntime.FromARMConverter = &APIServerProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *APIServerProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &APIServerProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *APIServerProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(APIServerProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected APIServerProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "Ip": + if typedInput.Ip != nil { + ip := *typedInput.Ip + profile.Ip = &ip + } + + // Set property "Url": + if typedInput.Url != nil { + url := *typedInput.Url + profile.Url = &url + } + + // Set property "Visibility": + if typedInput.Visibility != nil { + visibility := *typedInput.Visibility + profile.Visibility = &visibility + } + + // No error + return nil +} + +// AssignProperties_From_APIServerProfile_STATUS populates our APIServerProfile_STATUS from the provided source APIServerProfile_STATUS +func (profile *APIServerProfile_STATUS) AssignProperties_From_APIServerProfile_STATUS(source *storage.APIServerProfile_STATUS) error { + + // Ip + profile.Ip = genruntime.ClonePointerToString(source.Ip) + + // Url + profile.Url = genruntime.ClonePointerToString(source.Url) + + // Visibility + if source.Visibility != nil { + visibility := *source.Visibility + visibilityTemp := genruntime.ToEnum(visibility, visibility_STATUS_Values) + profile.Visibility = &visibilityTemp + } else { + profile.Visibility = nil + } + + // No error + return nil +} + +// AssignProperties_To_APIServerProfile_STATUS populates the provided destination APIServerProfile_STATUS from our APIServerProfile_STATUS +func (profile *APIServerProfile_STATUS) AssignProperties_To_APIServerProfile_STATUS(destination *storage.APIServerProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Ip + destination.Ip = genruntime.ClonePointerToString(profile.Ip) + + // Url + destination.Url = genruntime.ClonePointerToString(profile.Url) + + // Visibility + if profile.Visibility != nil { + visibility := string(*profile.Visibility) + destination.Visibility = &visibility + } else { + destination.Visibility = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// ClusterProfile represents a cluster profile. +type ClusterProfile struct { + // Domain: The domain for the cluster. + Domain *string `json:"domain,omitempty"` + + // FipsValidatedModules: If FIPS validated crypto modules are used + FipsValidatedModules *FipsValidatedModules `json:"fipsValidatedModules,omitempty"` + + // PullSecret: The pull secret for the cluster. + PullSecret *genruntime.SecretReference `json:"pullSecret,omitempty"` + + // ResourceGroupId: The ID of the cluster resource group. + ResourceGroupId *string `json:"resourceGroupId,omitempty"` + + // Version: The version of the cluster. + Version *string `json:"version,omitempty"` +} + +var _ genruntime.ARMTransformer = &ClusterProfile{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (profile *ClusterProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if profile == nil { + return nil, nil + } + result := &ClusterProfile_ARM{} + + // Set property "Domain": + if profile.Domain != nil { + domain := *profile.Domain + result.Domain = &domain + } + + // Set property "FipsValidatedModules": + if profile.FipsValidatedModules != nil { + fipsValidatedModules := *profile.FipsValidatedModules + result.FipsValidatedModules = &fipsValidatedModules + } + + // Set property "PullSecret": + if profile.PullSecret != nil { + pullSecretSecret, err := resolved.ResolvedSecrets.Lookup(*profile.PullSecret) + if err != nil { + return nil, errors.Wrap(err, "looking up secret for property PullSecret") + } + pullSecret := pullSecretSecret + result.PullSecret = &pullSecret + } + + // Set property "ResourceGroupId": + if profile.ResourceGroupId != nil { + resourceGroupId := *profile.ResourceGroupId + result.ResourceGroupId = &resourceGroupId + } + + // Set property "Version": + if profile.Version != nil { + version := *profile.Version + result.Version = &version + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *ClusterProfile) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &ClusterProfile_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *ClusterProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(ClusterProfile_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected ClusterProfile_ARM, got %T", armInput) + } + + // Set property "Domain": + if typedInput.Domain != nil { + domain := *typedInput.Domain + profile.Domain = &domain + } + + // Set property "FipsValidatedModules": + if typedInput.FipsValidatedModules != nil { + fipsValidatedModules := *typedInput.FipsValidatedModules + profile.FipsValidatedModules = &fipsValidatedModules + } + + // no assignment for property "PullSecret" + + // Set property "ResourceGroupId": + if typedInput.ResourceGroupId != nil { + resourceGroupId := *typedInput.ResourceGroupId + profile.ResourceGroupId = &resourceGroupId + } + + // Set property "Version": + if typedInput.Version != nil { + version := *typedInput.Version + profile.Version = &version + } + + // No error + return nil +} + +// AssignProperties_From_ClusterProfile populates our ClusterProfile from the provided source ClusterProfile +func (profile *ClusterProfile) AssignProperties_From_ClusterProfile(source *storage.ClusterProfile) error { + + // Domain + profile.Domain = genruntime.ClonePointerToString(source.Domain) + + // FipsValidatedModules + if source.FipsValidatedModules != nil { + fipsValidatedModule := *source.FipsValidatedModules + fipsValidatedModuleTemp := genruntime.ToEnum(fipsValidatedModule, fipsValidatedModules_Values) + profile.FipsValidatedModules = &fipsValidatedModuleTemp + } else { + profile.FipsValidatedModules = nil + } + + // PullSecret + if source.PullSecret != nil { + pullSecret := source.PullSecret.Copy() + profile.PullSecret = &pullSecret + } else { + profile.PullSecret = nil + } + + // ResourceGroupId + profile.ResourceGroupId = genruntime.ClonePointerToString(source.ResourceGroupId) + + // Version + profile.Version = genruntime.ClonePointerToString(source.Version) + + // No error + return nil +} + +// AssignProperties_To_ClusterProfile populates the provided destination ClusterProfile from our ClusterProfile +func (profile *ClusterProfile) AssignProperties_To_ClusterProfile(destination *storage.ClusterProfile) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Domain + destination.Domain = genruntime.ClonePointerToString(profile.Domain) + + // FipsValidatedModules + if profile.FipsValidatedModules != nil { + fipsValidatedModule := string(*profile.FipsValidatedModules) + destination.FipsValidatedModules = &fipsValidatedModule + } else { + destination.FipsValidatedModules = nil + } + + // PullSecret + if profile.PullSecret != nil { + pullSecret := profile.PullSecret.Copy() + destination.PullSecret = &pullSecret + } else { + destination.PullSecret = nil + } + + // ResourceGroupId + destination.ResourceGroupId = genruntime.ClonePointerToString(profile.ResourceGroupId) + + // Version + destination.Version = genruntime.ClonePointerToString(profile.Version) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_ClusterProfile_STATUS populates our ClusterProfile from the provided source ClusterProfile_STATUS +func (profile *ClusterProfile) Initialize_From_ClusterProfile_STATUS(source *ClusterProfile_STATUS) error { + + // Domain + profile.Domain = genruntime.ClonePointerToString(source.Domain) + + // FipsValidatedModules + if source.FipsValidatedModules != nil { + fipsValidatedModule := genruntime.ToEnum(string(*source.FipsValidatedModules), fipsValidatedModules_Values) + profile.FipsValidatedModules = &fipsValidatedModule + } else { + profile.FipsValidatedModules = nil + } + + // ResourceGroupId + profile.ResourceGroupId = genruntime.ClonePointerToString(source.ResourceGroupId) + + // Version + profile.Version = genruntime.ClonePointerToString(source.Version) + + // No error + return nil +} + +// ClusterProfile represents a cluster profile. +type ClusterProfile_STATUS struct { + // Domain: The domain for the cluster. + Domain *string `json:"domain,omitempty"` + + // FipsValidatedModules: If FIPS validated crypto modules are used + FipsValidatedModules *FipsValidatedModules_STATUS `json:"fipsValidatedModules,omitempty"` + + // ResourceGroupId: The ID of the cluster resource group. + ResourceGroupId *string `json:"resourceGroupId,omitempty"` + + // Version: The version of the cluster. + Version *string `json:"version,omitempty"` +} + +var _ genruntime.FromARMConverter = &ClusterProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *ClusterProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &ClusterProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *ClusterProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(ClusterProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected ClusterProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "Domain": + if typedInput.Domain != nil { + domain := *typedInput.Domain + profile.Domain = &domain + } + + // Set property "FipsValidatedModules": + if typedInput.FipsValidatedModules != nil { + fipsValidatedModules := *typedInput.FipsValidatedModules + profile.FipsValidatedModules = &fipsValidatedModules + } + + // Set property "ResourceGroupId": + if typedInput.ResourceGroupId != nil { + resourceGroupId := *typedInput.ResourceGroupId + profile.ResourceGroupId = &resourceGroupId + } + + // Set property "Version": + if typedInput.Version != nil { + version := *typedInput.Version + profile.Version = &version + } + + // No error + return nil +} + +// AssignProperties_From_ClusterProfile_STATUS populates our ClusterProfile_STATUS from the provided source ClusterProfile_STATUS +func (profile *ClusterProfile_STATUS) AssignProperties_From_ClusterProfile_STATUS(source *storage.ClusterProfile_STATUS) error { + + // Domain + profile.Domain = genruntime.ClonePointerToString(source.Domain) + + // FipsValidatedModules + if source.FipsValidatedModules != nil { + fipsValidatedModule := *source.FipsValidatedModules + fipsValidatedModuleTemp := genruntime.ToEnum(fipsValidatedModule, fipsValidatedModules_STATUS_Values) + profile.FipsValidatedModules = &fipsValidatedModuleTemp + } else { + profile.FipsValidatedModules = nil + } + + // ResourceGroupId + profile.ResourceGroupId = genruntime.ClonePointerToString(source.ResourceGroupId) + + // Version + profile.Version = genruntime.ClonePointerToString(source.Version) + + // No error + return nil +} + +// AssignProperties_To_ClusterProfile_STATUS populates the provided destination ClusterProfile_STATUS from our ClusterProfile_STATUS +func (profile *ClusterProfile_STATUS) AssignProperties_To_ClusterProfile_STATUS(destination *storage.ClusterProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Domain + destination.Domain = genruntime.ClonePointerToString(profile.Domain) + + // FipsValidatedModules + if profile.FipsValidatedModules != nil { + fipsValidatedModule := string(*profile.FipsValidatedModules) + destination.FipsValidatedModules = &fipsValidatedModule + } else { + destination.FipsValidatedModules = nil + } + + // ResourceGroupId + destination.ResourceGroupId = genruntime.ClonePointerToString(profile.ResourceGroupId) + + // Version + destination.Version = genruntime.ClonePointerToString(profile.Version) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// ConsoleProfile represents a console profile. +type ConsoleProfile_STATUS struct { + // Url: The URL to access the cluster console. + Url *string `json:"url,omitempty"` +} + +var _ genruntime.FromARMConverter = &ConsoleProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *ConsoleProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &ConsoleProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *ConsoleProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(ConsoleProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected ConsoleProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "Url": + if typedInput.Url != nil { + url := *typedInput.Url + profile.Url = &url + } + + // No error + return nil +} + +// AssignProperties_From_ConsoleProfile_STATUS populates our ConsoleProfile_STATUS from the provided source ConsoleProfile_STATUS +func (profile *ConsoleProfile_STATUS) AssignProperties_From_ConsoleProfile_STATUS(source *storage.ConsoleProfile_STATUS) error { + + // Url + profile.Url = genruntime.ClonePointerToString(source.Url) + + // No error + return nil +} + +// AssignProperties_To_ConsoleProfile_STATUS populates the provided destination ConsoleProfile_STATUS from our ConsoleProfile_STATUS +func (profile *ConsoleProfile_STATUS) AssignProperties_To_ConsoleProfile_STATUS(destination *storage.ConsoleProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Url + destination.Url = genruntime.ClonePointerToString(profile.Url) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// IngressProfile represents an ingress profile. +type IngressProfile struct { + // Name: The ingress profile name. + Name *string `json:"name,omitempty"` + + // Visibility: Ingress visibility. + Visibility *Visibility `json:"visibility,omitempty"` +} + +var _ genruntime.ARMTransformer = &IngressProfile{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (profile *IngressProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if profile == nil { + return nil, nil + } + result := &IngressProfile_ARM{} + + // Set property "Name": + if profile.Name != nil { + name := *profile.Name + result.Name = &name + } + + // Set property "Visibility": + if profile.Visibility != nil { + visibility := *profile.Visibility + result.Visibility = &visibility + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *IngressProfile) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &IngressProfile_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *IngressProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(IngressProfile_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected IngressProfile_ARM, got %T", armInput) + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + profile.Name = &name + } + + // Set property "Visibility": + if typedInput.Visibility != nil { + visibility := *typedInput.Visibility + profile.Visibility = &visibility + } + + // No error + return nil +} + +// AssignProperties_From_IngressProfile populates our IngressProfile from the provided source IngressProfile +func (profile *IngressProfile) AssignProperties_From_IngressProfile(source *storage.IngressProfile) error { + + // Name + profile.Name = genruntime.ClonePointerToString(source.Name) + + // Visibility + if source.Visibility != nil { + visibility := *source.Visibility + visibilityTemp := genruntime.ToEnum(visibility, visibility_Values) + profile.Visibility = &visibilityTemp + } else { + profile.Visibility = nil + } + + // No error + return nil +} + +// AssignProperties_To_IngressProfile populates the provided destination IngressProfile from our IngressProfile +func (profile *IngressProfile) AssignProperties_To_IngressProfile(destination *storage.IngressProfile) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Name + destination.Name = genruntime.ClonePointerToString(profile.Name) + + // Visibility + if profile.Visibility != nil { + visibility := string(*profile.Visibility) + destination.Visibility = &visibility + } else { + destination.Visibility = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_IngressProfile_STATUS populates our IngressProfile from the provided source IngressProfile_STATUS +func (profile *IngressProfile) Initialize_From_IngressProfile_STATUS(source *IngressProfile_STATUS) error { + + // Name + profile.Name = genruntime.ClonePointerToString(source.Name) + + // Visibility + if source.Visibility != nil { + visibility := genruntime.ToEnum(string(*source.Visibility), visibility_Values) + profile.Visibility = &visibility + } else { + profile.Visibility = nil + } + + // No error + return nil +} + +// IngressProfile represents an ingress profile. +type IngressProfile_STATUS struct { + // Ip: The IP of the ingress. + Ip *string `json:"ip,omitempty"` + + // Name: The ingress profile name. + Name *string `json:"name,omitempty"` + + // Visibility: Ingress visibility. + Visibility *Visibility_STATUS `json:"visibility,omitempty"` +} + +var _ genruntime.FromARMConverter = &IngressProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *IngressProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &IngressProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *IngressProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(IngressProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected IngressProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "Ip": + if typedInput.Ip != nil { + ip := *typedInput.Ip + profile.Ip = &ip + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + profile.Name = &name + } + + // Set property "Visibility": + if typedInput.Visibility != nil { + visibility := *typedInput.Visibility + profile.Visibility = &visibility + } + + // No error + return nil +} + +// AssignProperties_From_IngressProfile_STATUS populates our IngressProfile_STATUS from the provided source IngressProfile_STATUS +func (profile *IngressProfile_STATUS) AssignProperties_From_IngressProfile_STATUS(source *storage.IngressProfile_STATUS) error { + + // Ip + profile.Ip = genruntime.ClonePointerToString(source.Ip) + + // Name + profile.Name = genruntime.ClonePointerToString(source.Name) + + // Visibility + if source.Visibility != nil { + visibility := *source.Visibility + visibilityTemp := genruntime.ToEnum(visibility, visibility_STATUS_Values) + profile.Visibility = &visibilityTemp + } else { + profile.Visibility = nil + } + + // No error + return nil +} + +// AssignProperties_To_IngressProfile_STATUS populates the provided destination IngressProfile_STATUS from our IngressProfile_STATUS +func (profile *IngressProfile_STATUS) AssignProperties_To_IngressProfile_STATUS(destination *storage.IngressProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Ip + destination.Ip = genruntime.ClonePointerToString(profile.Ip) + + // Name + destination.Name = genruntime.ClonePointerToString(profile.Name) + + // Visibility + if profile.Visibility != nil { + visibility := string(*profile.Visibility) + destination.Visibility = &visibility + } else { + destination.Visibility = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// MasterProfile represents a master profile. +type MasterProfile struct { + // DiskEncryptionSetReference: The resource ID of an associated DiskEncryptionSet, if applicable. + DiskEncryptionSetReference *genruntime.ResourceReference `armReference:"DiskEncryptionSetId" json:"diskEncryptionSetReference,omitempty"` + + // EncryptionAtHost: Whether master virtual machines are encrypted at host. + EncryptionAtHost *EncryptionAtHost `json:"encryptionAtHost,omitempty"` + + // SubnetReference: The Azure resource ID of the master subnet. + SubnetReference *genruntime.ResourceReference `armReference:"SubnetId" json:"subnetReference,omitempty"` + + // VmSize: The size of the master VMs. + VmSize *string `json:"vmSize,omitempty"` +} + +var _ genruntime.ARMTransformer = &MasterProfile{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (profile *MasterProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if profile == nil { + return nil, nil + } + result := &MasterProfile_ARM{} + + // Set property "DiskEncryptionSetId": + if profile.DiskEncryptionSetReference != nil { + diskEncryptionSetReferenceARMID, err := resolved.ResolvedReferences.Lookup(*profile.DiskEncryptionSetReference) + if err != nil { + return nil, err + } + diskEncryptionSetReference := diskEncryptionSetReferenceARMID + result.DiskEncryptionSetId = &diskEncryptionSetReference + } + + // Set property "EncryptionAtHost": + if profile.EncryptionAtHost != nil { + encryptionAtHost := *profile.EncryptionAtHost + result.EncryptionAtHost = &encryptionAtHost + } + + // Set property "SubnetId": + if profile.SubnetReference != nil { + subnetReferenceARMID, err := resolved.ResolvedReferences.Lookup(*profile.SubnetReference) + if err != nil { + return nil, err + } + subnetReference := subnetReferenceARMID + result.SubnetId = &subnetReference + } + + // Set property "VmSize": + if profile.VmSize != nil { + vmSize := *profile.VmSize + result.VmSize = &vmSize + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *MasterProfile) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &MasterProfile_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *MasterProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(MasterProfile_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected MasterProfile_ARM, got %T", armInput) + } + + // no assignment for property "DiskEncryptionSetReference" + + // Set property "EncryptionAtHost": + if typedInput.EncryptionAtHost != nil { + encryptionAtHost := *typedInput.EncryptionAtHost + profile.EncryptionAtHost = &encryptionAtHost + } + + // no assignment for property "SubnetReference" + + // Set property "VmSize": + if typedInput.VmSize != nil { + vmSize := *typedInput.VmSize + profile.VmSize = &vmSize + } + + // No error + return nil +} + +// AssignProperties_From_MasterProfile populates our MasterProfile from the provided source MasterProfile +func (profile *MasterProfile) AssignProperties_From_MasterProfile(source *storage.MasterProfile) error { + + // DiskEncryptionSetReference + if source.DiskEncryptionSetReference != nil { + diskEncryptionSetReference := source.DiskEncryptionSetReference.Copy() + profile.DiskEncryptionSetReference = &diskEncryptionSetReference + } else { + profile.DiskEncryptionSetReference = nil + } + + // EncryptionAtHost + if source.EncryptionAtHost != nil { + encryptionAtHost := *source.EncryptionAtHost + encryptionAtHostTemp := genruntime.ToEnum(encryptionAtHost, encryptionAtHost_Values) + profile.EncryptionAtHost = &encryptionAtHostTemp + } else { + profile.EncryptionAtHost = nil + } + + // SubnetReference + if source.SubnetReference != nil { + subnetReference := source.SubnetReference.Copy() + profile.SubnetReference = &subnetReference + } else { + profile.SubnetReference = nil + } + + // VmSize + profile.VmSize = genruntime.ClonePointerToString(source.VmSize) + + // No error + return nil +} + +// AssignProperties_To_MasterProfile populates the provided destination MasterProfile from our MasterProfile +func (profile *MasterProfile) AssignProperties_To_MasterProfile(destination *storage.MasterProfile) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // DiskEncryptionSetReference + if profile.DiskEncryptionSetReference != nil { + diskEncryptionSetReference := profile.DiskEncryptionSetReference.Copy() + destination.DiskEncryptionSetReference = &diskEncryptionSetReference + } else { + destination.DiskEncryptionSetReference = nil + } + + // EncryptionAtHost + if profile.EncryptionAtHost != nil { + encryptionAtHost := string(*profile.EncryptionAtHost) + destination.EncryptionAtHost = &encryptionAtHost + } else { + destination.EncryptionAtHost = nil + } + + // SubnetReference + if profile.SubnetReference != nil { + subnetReference := profile.SubnetReference.Copy() + destination.SubnetReference = &subnetReference + } else { + destination.SubnetReference = nil + } + + // VmSize + destination.VmSize = genruntime.ClonePointerToString(profile.VmSize) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_MasterProfile_STATUS populates our MasterProfile from the provided source MasterProfile_STATUS +func (profile *MasterProfile) Initialize_From_MasterProfile_STATUS(source *MasterProfile_STATUS) error { + + // DiskEncryptionSetReference + if source.DiskEncryptionSetId != nil { + diskEncryptionSetReference := genruntime.CreateResourceReferenceFromARMID(*source.DiskEncryptionSetId) + profile.DiskEncryptionSetReference = &diskEncryptionSetReference + } else { + profile.DiskEncryptionSetReference = nil + } + + // EncryptionAtHost + if source.EncryptionAtHost != nil { + encryptionAtHost := genruntime.ToEnum(string(*source.EncryptionAtHost), encryptionAtHost_Values) + profile.EncryptionAtHost = &encryptionAtHost + } else { + profile.EncryptionAtHost = nil + } + + // SubnetReference + if source.SubnetId != nil { + subnetReference := genruntime.CreateResourceReferenceFromARMID(*source.SubnetId) + profile.SubnetReference = &subnetReference + } else { + profile.SubnetReference = nil + } + + // VmSize + profile.VmSize = genruntime.ClonePointerToString(source.VmSize) + + // No error + return nil +} + +// MasterProfile represents a master profile. +type MasterProfile_STATUS struct { + // DiskEncryptionSetId: The resource ID of an associated DiskEncryptionSet, if applicable. + DiskEncryptionSetId *string `json:"diskEncryptionSetId,omitempty"` + + // EncryptionAtHost: Whether master virtual machines are encrypted at host. + EncryptionAtHost *EncryptionAtHost_STATUS `json:"encryptionAtHost,omitempty"` + + // SubnetId: The Azure resource ID of the master subnet. + SubnetId *string `json:"subnetId,omitempty"` + + // VmSize: The size of the master VMs. + VmSize *string `json:"vmSize,omitempty"` +} + +var _ genruntime.FromARMConverter = &MasterProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *MasterProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &MasterProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *MasterProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(MasterProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected MasterProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "DiskEncryptionSetId": + if typedInput.DiskEncryptionSetId != nil { + diskEncryptionSetId := *typedInput.DiskEncryptionSetId + profile.DiskEncryptionSetId = &diskEncryptionSetId + } + + // Set property "EncryptionAtHost": + if typedInput.EncryptionAtHost != nil { + encryptionAtHost := *typedInput.EncryptionAtHost + profile.EncryptionAtHost = &encryptionAtHost + } + + // Set property "SubnetId": + if typedInput.SubnetId != nil { + subnetId := *typedInput.SubnetId + profile.SubnetId = &subnetId + } + + // Set property "VmSize": + if typedInput.VmSize != nil { + vmSize := *typedInput.VmSize + profile.VmSize = &vmSize + } + + // No error + return nil +} + +// AssignProperties_From_MasterProfile_STATUS populates our MasterProfile_STATUS from the provided source MasterProfile_STATUS +func (profile *MasterProfile_STATUS) AssignProperties_From_MasterProfile_STATUS(source *storage.MasterProfile_STATUS) error { + + // DiskEncryptionSetId + profile.DiskEncryptionSetId = genruntime.ClonePointerToString(source.DiskEncryptionSetId) + + // EncryptionAtHost + if source.EncryptionAtHost != nil { + encryptionAtHost := *source.EncryptionAtHost + encryptionAtHostTemp := genruntime.ToEnum(encryptionAtHost, encryptionAtHost_STATUS_Values) + profile.EncryptionAtHost = &encryptionAtHostTemp + } else { + profile.EncryptionAtHost = nil + } + + // SubnetId + profile.SubnetId = genruntime.ClonePointerToString(source.SubnetId) + + // VmSize + profile.VmSize = genruntime.ClonePointerToString(source.VmSize) + + // No error + return nil +} + +// AssignProperties_To_MasterProfile_STATUS populates the provided destination MasterProfile_STATUS from our MasterProfile_STATUS +func (profile *MasterProfile_STATUS) AssignProperties_To_MasterProfile_STATUS(destination *storage.MasterProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // DiskEncryptionSetId + destination.DiskEncryptionSetId = genruntime.ClonePointerToString(profile.DiskEncryptionSetId) + + // EncryptionAtHost + if profile.EncryptionAtHost != nil { + encryptionAtHost := string(*profile.EncryptionAtHost) + destination.EncryptionAtHost = &encryptionAtHost + } else { + destination.EncryptionAtHost = nil + } + + // SubnetId + destination.SubnetId = genruntime.ClonePointerToString(profile.SubnetId) + + // VmSize + destination.VmSize = genruntime.ClonePointerToString(profile.VmSize) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// NetworkProfile represents a network profile. +type NetworkProfile struct { + // LoadBalancerProfile: The cluster load balancer profile. + LoadBalancerProfile *LoadBalancerProfile `json:"loadBalancerProfile,omitempty"` + + // OutboundType: The OutboundType used for egress traffic. + OutboundType *OutboundType `json:"outboundType,omitempty"` + + // PodCidr: The CIDR used for OpenShift/Kubernetes Pods. + PodCidr *string `json:"podCidr,omitempty"` + + // PreconfiguredNSG: Specifies whether subnets are pre-attached with an NSG + PreconfiguredNSG *PreconfiguredNSG `json:"preconfiguredNSG,omitempty"` + + // ServiceCidr: The CIDR used for OpenShift/Kubernetes Services. + ServiceCidr *string `json:"serviceCidr,omitempty"` +} + +var _ genruntime.ARMTransformer = &NetworkProfile{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (profile *NetworkProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if profile == nil { + return nil, nil + } + result := &NetworkProfile_ARM{} + + // Set property "LoadBalancerProfile": + if profile.LoadBalancerProfile != nil { + loadBalancerProfile_ARM, err := (*profile.LoadBalancerProfile).ConvertToARM(resolved) + if err != nil { + return nil, err + } + loadBalancerProfile := *loadBalancerProfile_ARM.(*LoadBalancerProfile_ARM) + result.LoadBalancerProfile = &loadBalancerProfile + } + + // Set property "OutboundType": + if profile.OutboundType != nil { + outboundType := *profile.OutboundType + result.OutboundType = &outboundType + } + + // Set property "PodCidr": + if profile.PodCidr != nil { + podCidr := *profile.PodCidr + result.PodCidr = &podCidr + } + + // Set property "PreconfiguredNSG": + if profile.PreconfiguredNSG != nil { + preconfiguredNSG := *profile.PreconfiguredNSG + result.PreconfiguredNSG = &preconfiguredNSG + } + + // Set property "ServiceCidr": + if profile.ServiceCidr != nil { + serviceCidr := *profile.ServiceCidr + result.ServiceCidr = &serviceCidr + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *NetworkProfile) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &NetworkProfile_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *NetworkProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(NetworkProfile_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected NetworkProfile_ARM, got %T", armInput) + } + + // Set property "LoadBalancerProfile": + if typedInput.LoadBalancerProfile != nil { + var loadBalancerProfile1 LoadBalancerProfile + err := loadBalancerProfile1.PopulateFromARM(owner, *typedInput.LoadBalancerProfile) + if err != nil { + return err + } + loadBalancerProfile := loadBalancerProfile1 + profile.LoadBalancerProfile = &loadBalancerProfile + } + + // Set property "OutboundType": + if typedInput.OutboundType != nil { + outboundType := *typedInput.OutboundType + profile.OutboundType = &outboundType + } + + // Set property "PodCidr": + if typedInput.PodCidr != nil { + podCidr := *typedInput.PodCidr + profile.PodCidr = &podCidr + } + + // Set property "PreconfiguredNSG": + if typedInput.PreconfiguredNSG != nil { + preconfiguredNSG := *typedInput.PreconfiguredNSG + profile.PreconfiguredNSG = &preconfiguredNSG + } + + // Set property "ServiceCidr": + if typedInput.ServiceCidr != nil { + serviceCidr := *typedInput.ServiceCidr + profile.ServiceCidr = &serviceCidr + } + + // No error + return nil +} + +// AssignProperties_From_NetworkProfile populates our NetworkProfile from the provided source NetworkProfile +func (profile *NetworkProfile) AssignProperties_From_NetworkProfile(source *storage.NetworkProfile) error { + + // LoadBalancerProfile + if source.LoadBalancerProfile != nil { + var loadBalancerProfile LoadBalancerProfile + err := loadBalancerProfile.AssignProperties_From_LoadBalancerProfile(source.LoadBalancerProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_LoadBalancerProfile() to populate field LoadBalancerProfile") + } + profile.LoadBalancerProfile = &loadBalancerProfile + } else { + profile.LoadBalancerProfile = nil + } + + // OutboundType + if source.OutboundType != nil { + outboundType := *source.OutboundType + outboundTypeTemp := genruntime.ToEnum(outboundType, outboundType_Values) + profile.OutboundType = &outboundTypeTemp + } else { + profile.OutboundType = nil + } + + // PodCidr + profile.PodCidr = genruntime.ClonePointerToString(source.PodCidr) + + // PreconfiguredNSG + if source.PreconfiguredNSG != nil { + preconfiguredNSG := *source.PreconfiguredNSG + preconfiguredNSGTemp := genruntime.ToEnum(preconfiguredNSG, preconfiguredNSG_Values) + profile.PreconfiguredNSG = &preconfiguredNSGTemp + } else { + profile.PreconfiguredNSG = nil + } + + // ServiceCidr + profile.ServiceCidr = genruntime.ClonePointerToString(source.ServiceCidr) + + // No error + return nil +} + +// AssignProperties_To_NetworkProfile populates the provided destination NetworkProfile from our NetworkProfile +func (profile *NetworkProfile) AssignProperties_To_NetworkProfile(destination *storage.NetworkProfile) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // LoadBalancerProfile + if profile.LoadBalancerProfile != nil { + var loadBalancerProfile storage.LoadBalancerProfile + err := profile.LoadBalancerProfile.AssignProperties_To_LoadBalancerProfile(&loadBalancerProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_LoadBalancerProfile() to populate field LoadBalancerProfile") + } + destination.LoadBalancerProfile = &loadBalancerProfile + } else { + destination.LoadBalancerProfile = nil + } + + // OutboundType + if profile.OutboundType != nil { + outboundType := string(*profile.OutboundType) + destination.OutboundType = &outboundType + } else { + destination.OutboundType = nil + } + + // PodCidr + destination.PodCidr = genruntime.ClonePointerToString(profile.PodCidr) + + // PreconfiguredNSG + if profile.PreconfiguredNSG != nil { + preconfiguredNSG := string(*profile.PreconfiguredNSG) + destination.PreconfiguredNSG = &preconfiguredNSG + } else { + destination.PreconfiguredNSG = nil + } + + // ServiceCidr + destination.ServiceCidr = genruntime.ClonePointerToString(profile.ServiceCidr) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_NetworkProfile_STATUS populates our NetworkProfile from the provided source NetworkProfile_STATUS +func (profile *NetworkProfile) Initialize_From_NetworkProfile_STATUS(source *NetworkProfile_STATUS) error { + + // LoadBalancerProfile + if source.LoadBalancerProfile != nil { + var loadBalancerProfile LoadBalancerProfile + err := loadBalancerProfile.Initialize_From_LoadBalancerProfile_STATUS(source.LoadBalancerProfile) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_LoadBalancerProfile_STATUS() to populate field LoadBalancerProfile") + } + profile.LoadBalancerProfile = &loadBalancerProfile + } else { + profile.LoadBalancerProfile = nil + } + + // OutboundType + if source.OutboundType != nil { + outboundType := genruntime.ToEnum(string(*source.OutboundType), outboundType_Values) + profile.OutboundType = &outboundType + } else { + profile.OutboundType = nil + } + + // PodCidr + profile.PodCidr = genruntime.ClonePointerToString(source.PodCidr) + + // PreconfiguredNSG + if source.PreconfiguredNSG != nil { + preconfiguredNSG := genruntime.ToEnum(string(*source.PreconfiguredNSG), preconfiguredNSG_Values) + profile.PreconfiguredNSG = &preconfiguredNSG + } else { + profile.PreconfiguredNSG = nil + } + + // ServiceCidr + profile.ServiceCidr = genruntime.ClonePointerToString(source.ServiceCidr) + + // No error + return nil +} + +// NetworkProfile represents a network profile. +type NetworkProfile_STATUS struct { + // LoadBalancerProfile: The cluster load balancer profile. + LoadBalancerProfile *LoadBalancerProfile_STATUS `json:"loadBalancerProfile,omitempty"` + + // OutboundType: The OutboundType used for egress traffic. + OutboundType *OutboundType_STATUS `json:"outboundType,omitempty"` + + // PodCidr: The CIDR used for OpenShift/Kubernetes Pods. + PodCidr *string `json:"podCidr,omitempty"` + + // PreconfiguredNSG: Specifies whether subnets are pre-attached with an NSG + PreconfiguredNSG *PreconfiguredNSG_STATUS `json:"preconfiguredNSG,omitempty"` + + // ServiceCidr: The CIDR used for OpenShift/Kubernetes Services. + ServiceCidr *string `json:"serviceCidr,omitempty"` +} + +var _ genruntime.FromARMConverter = &NetworkProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *NetworkProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &NetworkProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *NetworkProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(NetworkProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected NetworkProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "LoadBalancerProfile": + if typedInput.LoadBalancerProfile != nil { + var loadBalancerProfile1 LoadBalancerProfile_STATUS + err := loadBalancerProfile1.PopulateFromARM(owner, *typedInput.LoadBalancerProfile) + if err != nil { + return err + } + loadBalancerProfile := loadBalancerProfile1 + profile.LoadBalancerProfile = &loadBalancerProfile + } + + // Set property "OutboundType": + if typedInput.OutboundType != nil { + outboundType := *typedInput.OutboundType + profile.OutboundType = &outboundType + } + + // Set property "PodCidr": + if typedInput.PodCidr != nil { + podCidr := *typedInput.PodCidr + profile.PodCidr = &podCidr + } + + // Set property "PreconfiguredNSG": + if typedInput.PreconfiguredNSG != nil { + preconfiguredNSG := *typedInput.PreconfiguredNSG + profile.PreconfiguredNSG = &preconfiguredNSG + } + + // Set property "ServiceCidr": + if typedInput.ServiceCidr != nil { + serviceCidr := *typedInput.ServiceCidr + profile.ServiceCidr = &serviceCidr + } + + // No error + return nil +} + +// AssignProperties_From_NetworkProfile_STATUS populates our NetworkProfile_STATUS from the provided source NetworkProfile_STATUS +func (profile *NetworkProfile_STATUS) AssignProperties_From_NetworkProfile_STATUS(source *storage.NetworkProfile_STATUS) error { + + // LoadBalancerProfile + if source.LoadBalancerProfile != nil { + var loadBalancerProfile LoadBalancerProfile_STATUS + err := loadBalancerProfile.AssignProperties_From_LoadBalancerProfile_STATUS(source.LoadBalancerProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_LoadBalancerProfile_STATUS() to populate field LoadBalancerProfile") + } + profile.LoadBalancerProfile = &loadBalancerProfile + } else { + profile.LoadBalancerProfile = nil + } + + // OutboundType + if source.OutboundType != nil { + outboundType := *source.OutboundType + outboundTypeTemp := genruntime.ToEnum(outboundType, outboundType_STATUS_Values) + profile.OutboundType = &outboundTypeTemp + } else { + profile.OutboundType = nil + } + + // PodCidr + profile.PodCidr = genruntime.ClonePointerToString(source.PodCidr) + + // PreconfiguredNSG + if source.PreconfiguredNSG != nil { + preconfiguredNSG := *source.PreconfiguredNSG + preconfiguredNSGTemp := genruntime.ToEnum(preconfiguredNSG, preconfiguredNSG_STATUS_Values) + profile.PreconfiguredNSG = &preconfiguredNSGTemp + } else { + profile.PreconfiguredNSG = nil + } + + // ServiceCidr + profile.ServiceCidr = genruntime.ClonePointerToString(source.ServiceCidr) + + // No error + return nil +} + +// AssignProperties_To_NetworkProfile_STATUS populates the provided destination NetworkProfile_STATUS from our NetworkProfile_STATUS +func (profile *NetworkProfile_STATUS) AssignProperties_To_NetworkProfile_STATUS(destination *storage.NetworkProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // LoadBalancerProfile + if profile.LoadBalancerProfile != nil { + var loadBalancerProfile storage.LoadBalancerProfile_STATUS + err := profile.LoadBalancerProfile.AssignProperties_To_LoadBalancerProfile_STATUS(&loadBalancerProfile) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_LoadBalancerProfile_STATUS() to populate field LoadBalancerProfile") + } + destination.LoadBalancerProfile = &loadBalancerProfile + } else { + destination.LoadBalancerProfile = nil + } + + // OutboundType + if profile.OutboundType != nil { + outboundType := string(*profile.OutboundType) + destination.OutboundType = &outboundType + } else { + destination.OutboundType = nil + } + + // PodCidr + destination.PodCidr = genruntime.ClonePointerToString(profile.PodCidr) + + // PreconfiguredNSG + if profile.PreconfiguredNSG != nil { + preconfiguredNSG := string(*profile.PreconfiguredNSG) + destination.PreconfiguredNSG = &preconfiguredNSG + } else { + destination.PreconfiguredNSG = nil + } + + // ServiceCidr + destination.ServiceCidr = genruntime.ClonePointerToString(profile.ServiceCidr) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// ProvisioningState represents a provisioning state. +type ProvisioningState_STATUS string + +const ( + ProvisioningState_STATUS_AdminUpdating = ProvisioningState_STATUS("AdminUpdating") + ProvisioningState_STATUS_Canceled = ProvisioningState_STATUS("Canceled") + ProvisioningState_STATUS_Creating = ProvisioningState_STATUS("Creating") + ProvisioningState_STATUS_Deleting = ProvisioningState_STATUS("Deleting") + ProvisioningState_STATUS_Failed = ProvisioningState_STATUS("Failed") + ProvisioningState_STATUS_Succeeded = ProvisioningState_STATUS("Succeeded") + ProvisioningState_STATUS_Updating = ProvisioningState_STATUS("Updating") +) + +// Mapping from string to ProvisioningState_STATUS +var provisioningState_STATUS_Values = map[string]ProvisioningState_STATUS{ + "adminupdating": ProvisioningState_STATUS_AdminUpdating, + "canceled": ProvisioningState_STATUS_Canceled, + "creating": ProvisioningState_STATUS_Creating, + "deleting": ProvisioningState_STATUS_Deleting, + "failed": ProvisioningState_STATUS_Failed, + "succeeded": ProvisioningState_STATUS_Succeeded, + "updating": ProvisioningState_STATUS_Updating, +} + +// ServicePrincipalProfile represents a service principal profile. +type ServicePrincipalProfile struct { + // ClientId: The client ID used for the cluster. + ClientId *string `json:"clientId,omitempty" optionalConfigMapPair:"ClientId"` + + // ClientIdFromConfig: The client ID used for the cluster. + ClientIdFromConfig *genruntime.ConfigMapReference `json:"clientIdFromConfig,omitempty" optionalConfigMapPair:"ClientId"` + + // ClientSecret: The client secret used for the cluster. + ClientSecret *genruntime.SecretReference `json:"clientSecret,omitempty"` +} + +var _ genruntime.ARMTransformer = &ServicePrincipalProfile{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (profile *ServicePrincipalProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if profile == nil { + return nil, nil + } + result := &ServicePrincipalProfile_ARM{} + + // Set property "ClientId": + if profile.ClientId != nil { + clientId := *profile.ClientId + result.ClientId = &clientId + } + if profile.ClientIdFromConfig != nil { + clientIdValue, err := resolved.ResolvedConfigMaps.Lookup(*profile.ClientIdFromConfig) + if err != nil { + return nil, errors.Wrap(err, "looking up configmap for property ClientId") + } + clientId := clientIdValue + result.ClientId = &clientId + } + + // Set property "ClientSecret": + if profile.ClientSecret != nil { + clientSecretSecret, err := resolved.ResolvedSecrets.Lookup(*profile.ClientSecret) + if err != nil { + return nil, errors.Wrap(err, "looking up secret for property ClientSecret") + } + clientSecret := clientSecretSecret + result.ClientSecret = &clientSecret + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *ServicePrincipalProfile) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &ServicePrincipalProfile_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *ServicePrincipalProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(ServicePrincipalProfile_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected ServicePrincipalProfile_ARM, got %T", armInput) + } + + // Set property "ClientId": + if typedInput.ClientId != nil { + clientId := *typedInput.ClientId + profile.ClientId = &clientId + } + + // no assignment for property "ClientIdFromConfig" + + // no assignment for property "ClientSecret" + + // No error + return nil +} + +// AssignProperties_From_ServicePrincipalProfile populates our ServicePrincipalProfile from the provided source ServicePrincipalProfile +func (profile *ServicePrincipalProfile) AssignProperties_From_ServicePrincipalProfile(source *storage.ServicePrincipalProfile) error { + + // ClientId + profile.ClientId = genruntime.ClonePointerToString(source.ClientId) + + // ClientIdFromConfig + if source.ClientIdFromConfig != nil { + clientIdFromConfig := source.ClientIdFromConfig.Copy() + profile.ClientIdFromConfig = &clientIdFromConfig + } else { + profile.ClientIdFromConfig = nil + } + + // ClientSecret + if source.ClientSecret != nil { + clientSecret := source.ClientSecret.Copy() + profile.ClientSecret = &clientSecret + } else { + profile.ClientSecret = nil + } + + // No error + return nil +} + +// AssignProperties_To_ServicePrincipalProfile populates the provided destination ServicePrincipalProfile from our ServicePrincipalProfile +func (profile *ServicePrincipalProfile) AssignProperties_To_ServicePrincipalProfile(destination *storage.ServicePrincipalProfile) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ClientId + destination.ClientId = genruntime.ClonePointerToString(profile.ClientId) + + // ClientIdFromConfig + if profile.ClientIdFromConfig != nil { + clientIdFromConfig := profile.ClientIdFromConfig.Copy() + destination.ClientIdFromConfig = &clientIdFromConfig + } else { + destination.ClientIdFromConfig = nil + } + + // ClientSecret + if profile.ClientSecret != nil { + clientSecret := profile.ClientSecret.Copy() + destination.ClientSecret = &clientSecret + } else { + destination.ClientSecret = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_ServicePrincipalProfile_STATUS populates our ServicePrincipalProfile from the provided source ServicePrincipalProfile_STATUS +func (profile *ServicePrincipalProfile) Initialize_From_ServicePrincipalProfile_STATUS(source *ServicePrincipalProfile_STATUS) error { + + // ClientId + profile.ClientId = genruntime.ClonePointerToString(source.ClientId) + + // No error + return nil +} + +// ServicePrincipalProfile represents a service principal profile. +type ServicePrincipalProfile_STATUS struct { + // ClientId: The client ID used for the cluster. + ClientId *string `json:"clientId,omitempty"` +} + +var _ genruntime.FromARMConverter = &ServicePrincipalProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *ServicePrincipalProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &ServicePrincipalProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *ServicePrincipalProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(ServicePrincipalProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected ServicePrincipalProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "ClientId": + if typedInput.ClientId != nil { + clientId := *typedInput.ClientId + profile.ClientId = &clientId + } + + // No error + return nil +} + +// AssignProperties_From_ServicePrincipalProfile_STATUS populates our ServicePrincipalProfile_STATUS from the provided source ServicePrincipalProfile_STATUS +func (profile *ServicePrincipalProfile_STATUS) AssignProperties_From_ServicePrincipalProfile_STATUS(source *storage.ServicePrincipalProfile_STATUS) error { + + // ClientId + profile.ClientId = genruntime.ClonePointerToString(source.ClientId) + + // No error + return nil +} + +// AssignProperties_To_ServicePrincipalProfile_STATUS populates the provided destination ServicePrincipalProfile_STATUS from our ServicePrincipalProfile_STATUS +func (profile *ServicePrincipalProfile_STATUS) AssignProperties_To_ServicePrincipalProfile_STATUS(destination *storage.ServicePrincipalProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ClientId + destination.ClientId = genruntime.ClonePointerToString(profile.ClientId) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Metadata pertaining to creation and last modification of the resource. +type SystemData_STATUS struct { + // CreatedAt: The timestamp of resource creation (UTC). + CreatedAt *string `json:"createdAt,omitempty"` + + // CreatedBy: The identity that created the resource. + CreatedBy *string `json:"createdBy,omitempty"` + + // CreatedByType: The type of identity that created the resource. + CreatedByType *SystemData_CreatedByType_STATUS `json:"createdByType,omitempty"` + + // LastModifiedAt: The timestamp of resource last modification (UTC) + LastModifiedAt *string `json:"lastModifiedAt,omitempty"` + + // LastModifiedBy: The identity that last modified the resource. + LastModifiedBy *string `json:"lastModifiedBy,omitempty"` + + // LastModifiedByType: The type of identity that last modified the resource. + LastModifiedByType *SystemData_LastModifiedByType_STATUS `json:"lastModifiedByType,omitempty"` +} + +var _ genruntime.FromARMConverter = &SystemData_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (data *SystemData_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &SystemData_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (data *SystemData_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(SystemData_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected SystemData_STATUS_ARM, got %T", armInput) + } + + // Set property "CreatedAt": + if typedInput.CreatedAt != nil { + createdAt := *typedInput.CreatedAt + data.CreatedAt = &createdAt + } + + // Set property "CreatedBy": + if typedInput.CreatedBy != nil { + createdBy := *typedInput.CreatedBy + data.CreatedBy = &createdBy + } + + // Set property "CreatedByType": + if typedInput.CreatedByType != nil { + createdByType := *typedInput.CreatedByType + data.CreatedByType = &createdByType + } + + // Set property "LastModifiedAt": + if typedInput.LastModifiedAt != nil { + lastModifiedAt := *typedInput.LastModifiedAt + data.LastModifiedAt = &lastModifiedAt + } + + // Set property "LastModifiedBy": + if typedInput.LastModifiedBy != nil { + lastModifiedBy := *typedInput.LastModifiedBy + data.LastModifiedBy = &lastModifiedBy + } + + // Set property "LastModifiedByType": + if typedInput.LastModifiedByType != nil { + lastModifiedByType := *typedInput.LastModifiedByType + data.LastModifiedByType = &lastModifiedByType + } + + // No error + return nil +} + +// AssignProperties_From_SystemData_STATUS populates our SystemData_STATUS from the provided source SystemData_STATUS +func (data *SystemData_STATUS) AssignProperties_From_SystemData_STATUS(source *storage.SystemData_STATUS) error { + + // CreatedAt + data.CreatedAt = genruntime.ClonePointerToString(source.CreatedAt) + + // CreatedBy + data.CreatedBy = genruntime.ClonePointerToString(source.CreatedBy) + + // CreatedByType + if source.CreatedByType != nil { + createdByType := *source.CreatedByType + createdByTypeTemp := genruntime.ToEnum(createdByType, systemData_CreatedByType_STATUS_Values) + data.CreatedByType = &createdByTypeTemp + } else { + data.CreatedByType = nil + } + + // LastModifiedAt + data.LastModifiedAt = genruntime.ClonePointerToString(source.LastModifiedAt) + + // LastModifiedBy + data.LastModifiedBy = genruntime.ClonePointerToString(source.LastModifiedBy) + + // LastModifiedByType + if source.LastModifiedByType != nil { + lastModifiedByType := *source.LastModifiedByType + lastModifiedByTypeTemp := genruntime.ToEnum(lastModifiedByType, systemData_LastModifiedByType_STATUS_Values) + data.LastModifiedByType = &lastModifiedByTypeTemp + } else { + data.LastModifiedByType = nil + } + + // No error + return nil +} + +// AssignProperties_To_SystemData_STATUS populates the provided destination SystemData_STATUS from our SystemData_STATUS +func (data *SystemData_STATUS) AssignProperties_To_SystemData_STATUS(destination *storage.SystemData_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // CreatedAt + destination.CreatedAt = genruntime.ClonePointerToString(data.CreatedAt) + + // CreatedBy + destination.CreatedBy = genruntime.ClonePointerToString(data.CreatedBy) + + // CreatedByType + if data.CreatedByType != nil { + createdByType := string(*data.CreatedByType) + destination.CreatedByType = &createdByType + } else { + destination.CreatedByType = nil + } + + // LastModifiedAt + destination.LastModifiedAt = genruntime.ClonePointerToString(data.LastModifiedAt) + + // LastModifiedBy + destination.LastModifiedBy = genruntime.ClonePointerToString(data.LastModifiedBy) + + // LastModifiedByType + if data.LastModifiedByType != nil { + lastModifiedByType := string(*data.LastModifiedByType) + destination.LastModifiedByType = &lastModifiedByType + } else { + destination.LastModifiedByType = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// WorkerProfile represents a worker profile. +type WorkerProfile struct { + // Count: The number of worker VMs. + Count *int `json:"count,omitempty"` + + // DiskEncryptionSetReference: The resource ID of an associated DiskEncryptionSet, if applicable. + DiskEncryptionSetReference *genruntime.ResourceReference `armReference:"DiskEncryptionSetId" json:"diskEncryptionSetReference,omitempty"` + + // DiskSizeGB: The disk size of the worker VMs. + DiskSizeGB *int `json:"diskSizeGB,omitempty"` + + // EncryptionAtHost: Whether master virtual machines are encrypted at host. + EncryptionAtHost *EncryptionAtHost `json:"encryptionAtHost,omitempty"` + + // Name: The worker profile name. + Name *string `json:"name,omitempty"` + + // SubnetReference: The Azure resource ID of the worker subnet. + SubnetReference *genruntime.ResourceReference `armReference:"SubnetId" json:"subnetReference,omitempty"` + + // VmSize: The size of the worker VMs. + VmSize *string `json:"vmSize,omitempty"` +} + +var _ genruntime.ARMTransformer = &WorkerProfile{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (profile *WorkerProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if profile == nil { + return nil, nil + } + result := &WorkerProfile_ARM{} + + // Set property "Count": + if profile.Count != nil { + count := *profile.Count + result.Count = &count + } + + // Set property "DiskEncryptionSetId": + if profile.DiskEncryptionSetReference != nil { + diskEncryptionSetReferenceARMID, err := resolved.ResolvedReferences.Lookup(*profile.DiskEncryptionSetReference) + if err != nil { + return nil, err + } + diskEncryptionSetReference := diskEncryptionSetReferenceARMID + result.DiskEncryptionSetId = &diskEncryptionSetReference + } + + // Set property "DiskSizeGB": + if profile.DiskSizeGB != nil { + diskSizeGB := *profile.DiskSizeGB + result.DiskSizeGB = &diskSizeGB + } + + // Set property "EncryptionAtHost": + if profile.EncryptionAtHost != nil { + encryptionAtHost := *profile.EncryptionAtHost + result.EncryptionAtHost = &encryptionAtHost + } + + // Set property "Name": + if profile.Name != nil { + name := *profile.Name + result.Name = &name + } + + // Set property "SubnetId": + if profile.SubnetReference != nil { + subnetReferenceARMID, err := resolved.ResolvedReferences.Lookup(*profile.SubnetReference) + if err != nil { + return nil, err + } + subnetReference := subnetReferenceARMID + result.SubnetId = &subnetReference + } + + // Set property "VmSize": + if profile.VmSize != nil { + vmSize := *profile.VmSize + result.VmSize = &vmSize + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *WorkerProfile) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &WorkerProfile_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *WorkerProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(WorkerProfile_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected WorkerProfile_ARM, got %T", armInput) + } + + // Set property "Count": + if typedInput.Count != nil { + count := *typedInput.Count + profile.Count = &count + } + + // no assignment for property "DiskEncryptionSetReference" + + // Set property "DiskSizeGB": + if typedInput.DiskSizeGB != nil { + diskSizeGB := *typedInput.DiskSizeGB + profile.DiskSizeGB = &diskSizeGB + } + + // Set property "EncryptionAtHost": + if typedInput.EncryptionAtHost != nil { + encryptionAtHost := *typedInput.EncryptionAtHost + profile.EncryptionAtHost = &encryptionAtHost + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + profile.Name = &name + } + + // no assignment for property "SubnetReference" + + // Set property "VmSize": + if typedInput.VmSize != nil { + vmSize := *typedInput.VmSize + profile.VmSize = &vmSize + } + + // No error + return nil +} + +// AssignProperties_From_WorkerProfile populates our WorkerProfile from the provided source WorkerProfile +func (profile *WorkerProfile) AssignProperties_From_WorkerProfile(source *storage.WorkerProfile) error { + + // Count + profile.Count = genruntime.ClonePointerToInt(source.Count) + + // DiskEncryptionSetReference + if source.DiskEncryptionSetReference != nil { + diskEncryptionSetReference := source.DiskEncryptionSetReference.Copy() + profile.DiskEncryptionSetReference = &diskEncryptionSetReference + } else { + profile.DiskEncryptionSetReference = nil + } + + // DiskSizeGB + profile.DiskSizeGB = genruntime.ClonePointerToInt(source.DiskSizeGB) + + // EncryptionAtHost + if source.EncryptionAtHost != nil { + encryptionAtHost := *source.EncryptionAtHost + encryptionAtHostTemp := genruntime.ToEnum(encryptionAtHost, encryptionAtHost_Values) + profile.EncryptionAtHost = &encryptionAtHostTemp + } else { + profile.EncryptionAtHost = nil + } + + // Name + profile.Name = genruntime.ClonePointerToString(source.Name) + + // SubnetReference + if source.SubnetReference != nil { + subnetReference := source.SubnetReference.Copy() + profile.SubnetReference = &subnetReference + } else { + profile.SubnetReference = nil + } + + // VmSize + profile.VmSize = genruntime.ClonePointerToString(source.VmSize) + + // No error + return nil +} + +// AssignProperties_To_WorkerProfile populates the provided destination WorkerProfile from our WorkerProfile +func (profile *WorkerProfile) AssignProperties_To_WorkerProfile(destination *storage.WorkerProfile) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Count + destination.Count = genruntime.ClonePointerToInt(profile.Count) + + // DiskEncryptionSetReference + if profile.DiskEncryptionSetReference != nil { + diskEncryptionSetReference := profile.DiskEncryptionSetReference.Copy() + destination.DiskEncryptionSetReference = &diskEncryptionSetReference + } else { + destination.DiskEncryptionSetReference = nil + } + + // DiskSizeGB + destination.DiskSizeGB = genruntime.ClonePointerToInt(profile.DiskSizeGB) + + // EncryptionAtHost + if profile.EncryptionAtHost != nil { + encryptionAtHost := string(*profile.EncryptionAtHost) + destination.EncryptionAtHost = &encryptionAtHost + } else { + destination.EncryptionAtHost = nil + } + + // Name + destination.Name = genruntime.ClonePointerToString(profile.Name) + + // SubnetReference + if profile.SubnetReference != nil { + subnetReference := profile.SubnetReference.Copy() + destination.SubnetReference = &subnetReference + } else { + destination.SubnetReference = nil + } + + // VmSize + destination.VmSize = genruntime.ClonePointerToString(profile.VmSize) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_WorkerProfile_STATUS populates our WorkerProfile from the provided source WorkerProfile_STATUS +func (profile *WorkerProfile) Initialize_From_WorkerProfile_STATUS(source *WorkerProfile_STATUS) error { + + // Count + profile.Count = genruntime.ClonePointerToInt(source.Count) + + // DiskEncryptionSetReference + if source.DiskEncryptionSetId != nil { + diskEncryptionSetReference := genruntime.CreateResourceReferenceFromARMID(*source.DiskEncryptionSetId) + profile.DiskEncryptionSetReference = &diskEncryptionSetReference + } else { + profile.DiskEncryptionSetReference = nil + } + + // DiskSizeGB + profile.DiskSizeGB = genruntime.ClonePointerToInt(source.DiskSizeGB) + + // EncryptionAtHost + if source.EncryptionAtHost != nil { + encryptionAtHost := genruntime.ToEnum(string(*source.EncryptionAtHost), encryptionAtHost_Values) + profile.EncryptionAtHost = &encryptionAtHost + } else { + profile.EncryptionAtHost = nil + } + + // Name + profile.Name = genruntime.ClonePointerToString(source.Name) + + // SubnetReference + if source.SubnetId != nil { + subnetReference := genruntime.CreateResourceReferenceFromARMID(*source.SubnetId) + profile.SubnetReference = &subnetReference + } else { + profile.SubnetReference = nil + } + + // VmSize + profile.VmSize = genruntime.ClonePointerToString(source.VmSize) + + // No error + return nil +} + +// WorkerProfile represents a worker profile. +type WorkerProfile_STATUS struct { + // Count: The number of worker VMs. + Count *int `json:"count,omitempty"` + + // DiskEncryptionSetId: The resource ID of an associated DiskEncryptionSet, if applicable. + DiskEncryptionSetId *string `json:"diskEncryptionSetId,omitempty"` + + // DiskSizeGB: The disk size of the worker VMs. + DiskSizeGB *int `json:"diskSizeGB,omitempty"` + + // EncryptionAtHost: Whether master virtual machines are encrypted at host. + EncryptionAtHost *EncryptionAtHost_STATUS `json:"encryptionAtHost,omitempty"` + + // Name: The worker profile name. + Name *string `json:"name,omitempty"` + + // SubnetId: The Azure resource ID of the worker subnet. + SubnetId *string `json:"subnetId,omitempty"` + + // VmSize: The size of the worker VMs. + VmSize *string `json:"vmSize,omitempty"` +} + +var _ genruntime.FromARMConverter = &WorkerProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *WorkerProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &WorkerProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *WorkerProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(WorkerProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected WorkerProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "Count": + if typedInput.Count != nil { + count := *typedInput.Count + profile.Count = &count + } + + // Set property "DiskEncryptionSetId": + if typedInput.DiskEncryptionSetId != nil { + diskEncryptionSetId := *typedInput.DiskEncryptionSetId + profile.DiskEncryptionSetId = &diskEncryptionSetId + } + + // Set property "DiskSizeGB": + if typedInput.DiskSizeGB != nil { + diskSizeGB := *typedInput.DiskSizeGB + profile.DiskSizeGB = &diskSizeGB + } + + // Set property "EncryptionAtHost": + if typedInput.EncryptionAtHost != nil { + encryptionAtHost := *typedInput.EncryptionAtHost + profile.EncryptionAtHost = &encryptionAtHost + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + profile.Name = &name + } + + // Set property "SubnetId": + if typedInput.SubnetId != nil { + subnetId := *typedInput.SubnetId + profile.SubnetId = &subnetId + } + + // Set property "VmSize": + if typedInput.VmSize != nil { + vmSize := *typedInput.VmSize + profile.VmSize = &vmSize + } + + // No error + return nil +} + +// AssignProperties_From_WorkerProfile_STATUS populates our WorkerProfile_STATUS from the provided source WorkerProfile_STATUS +func (profile *WorkerProfile_STATUS) AssignProperties_From_WorkerProfile_STATUS(source *storage.WorkerProfile_STATUS) error { + + // Count + profile.Count = genruntime.ClonePointerToInt(source.Count) + + // DiskEncryptionSetId + profile.DiskEncryptionSetId = genruntime.ClonePointerToString(source.DiskEncryptionSetId) + + // DiskSizeGB + profile.DiskSizeGB = genruntime.ClonePointerToInt(source.DiskSizeGB) + + // EncryptionAtHost + if source.EncryptionAtHost != nil { + encryptionAtHost := *source.EncryptionAtHost + encryptionAtHostTemp := genruntime.ToEnum(encryptionAtHost, encryptionAtHost_STATUS_Values) + profile.EncryptionAtHost = &encryptionAtHostTemp + } else { + profile.EncryptionAtHost = nil + } + + // Name + profile.Name = genruntime.ClonePointerToString(source.Name) + + // SubnetId + profile.SubnetId = genruntime.ClonePointerToString(source.SubnetId) + + // VmSize + profile.VmSize = genruntime.ClonePointerToString(source.VmSize) + + // No error + return nil +} + +// AssignProperties_To_WorkerProfile_STATUS populates the provided destination WorkerProfile_STATUS from our WorkerProfile_STATUS +func (profile *WorkerProfile_STATUS) AssignProperties_To_WorkerProfile_STATUS(destination *storage.WorkerProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Count + destination.Count = genruntime.ClonePointerToInt(profile.Count) + + // DiskEncryptionSetId + destination.DiskEncryptionSetId = genruntime.ClonePointerToString(profile.DiskEncryptionSetId) + + // DiskSizeGB + destination.DiskSizeGB = genruntime.ClonePointerToInt(profile.DiskSizeGB) + + // EncryptionAtHost + if profile.EncryptionAtHost != nil { + encryptionAtHost := string(*profile.EncryptionAtHost) + destination.EncryptionAtHost = &encryptionAtHost + } else { + destination.EncryptionAtHost = nil + } + + // Name + destination.Name = genruntime.ClonePointerToString(profile.Name) + + // SubnetId + destination.SubnetId = genruntime.ClonePointerToString(profile.SubnetId) + + // VmSize + destination.VmSize = genruntime.ClonePointerToString(profile.VmSize) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// EncryptionAtHost represents encryption at host state +// +kubebuilder:validation:Enum={"Disabled","Enabled"} +type EncryptionAtHost string + +const ( + EncryptionAtHost_Disabled = EncryptionAtHost("Disabled") + EncryptionAtHost_Enabled = EncryptionAtHost("Enabled") +) + +// Mapping from string to EncryptionAtHost +var encryptionAtHost_Values = map[string]EncryptionAtHost{ + "disabled": EncryptionAtHost_Disabled, + "enabled": EncryptionAtHost_Enabled, +} + +// EncryptionAtHost represents encryption at host state +type EncryptionAtHost_STATUS string + +const ( + EncryptionAtHost_STATUS_Disabled = EncryptionAtHost_STATUS("Disabled") + EncryptionAtHost_STATUS_Enabled = EncryptionAtHost_STATUS("Enabled") +) + +// Mapping from string to EncryptionAtHost_STATUS +var encryptionAtHost_STATUS_Values = map[string]EncryptionAtHost_STATUS{ + "disabled": EncryptionAtHost_STATUS_Disabled, + "enabled": EncryptionAtHost_STATUS_Enabled, +} + +// FipsValidatedModules determines if FIPS is used. +// +kubebuilder:validation:Enum={"Disabled","Enabled"} +type FipsValidatedModules string + +const ( + FipsValidatedModules_Disabled = FipsValidatedModules("Disabled") + FipsValidatedModules_Enabled = FipsValidatedModules("Enabled") +) + +// Mapping from string to FipsValidatedModules +var fipsValidatedModules_Values = map[string]FipsValidatedModules{ + "disabled": FipsValidatedModules_Disabled, + "enabled": FipsValidatedModules_Enabled, +} + +// FipsValidatedModules determines if FIPS is used. +type FipsValidatedModules_STATUS string + +const ( + FipsValidatedModules_STATUS_Disabled = FipsValidatedModules_STATUS("Disabled") + FipsValidatedModules_STATUS_Enabled = FipsValidatedModules_STATUS("Enabled") +) + +// Mapping from string to FipsValidatedModules_STATUS +var fipsValidatedModules_STATUS_Values = map[string]FipsValidatedModules_STATUS{ + "disabled": FipsValidatedModules_STATUS_Disabled, + "enabled": FipsValidatedModules_STATUS_Enabled, +} + +// LoadBalancerProfile represents the profile of the cluster public load balancer. +type LoadBalancerProfile struct { + // ManagedOutboundIps: The desired managed outbound IPs for the cluster public load balancer. + ManagedOutboundIps *ManagedOutboundIPs `json:"managedOutboundIps,omitempty"` +} + +var _ genruntime.ARMTransformer = &LoadBalancerProfile{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (profile *LoadBalancerProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if profile == nil { + return nil, nil + } + result := &LoadBalancerProfile_ARM{} + + // Set property "ManagedOutboundIps": + if profile.ManagedOutboundIps != nil { + managedOutboundIps_ARM, err := (*profile.ManagedOutboundIps).ConvertToARM(resolved) + if err != nil { + return nil, err + } + managedOutboundIps := *managedOutboundIps_ARM.(*ManagedOutboundIPs_ARM) + result.ManagedOutboundIps = &managedOutboundIps + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *LoadBalancerProfile) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &LoadBalancerProfile_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *LoadBalancerProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(LoadBalancerProfile_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected LoadBalancerProfile_ARM, got %T", armInput) + } + + // Set property "ManagedOutboundIps": + if typedInput.ManagedOutboundIps != nil { + var managedOutboundIps1 ManagedOutboundIPs + err := managedOutboundIps1.PopulateFromARM(owner, *typedInput.ManagedOutboundIps) + if err != nil { + return err + } + managedOutboundIps := managedOutboundIps1 + profile.ManagedOutboundIps = &managedOutboundIps + } + + // No error + return nil +} + +// AssignProperties_From_LoadBalancerProfile populates our LoadBalancerProfile from the provided source LoadBalancerProfile +func (profile *LoadBalancerProfile) AssignProperties_From_LoadBalancerProfile(source *storage.LoadBalancerProfile) error { + + // ManagedOutboundIps + if source.ManagedOutboundIps != nil { + var managedOutboundIpsIPS ManagedOutboundIPs + err := managedOutboundIpsIPS.AssignProperties_From_ManagedOutboundIPs(source.ManagedOutboundIps) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_ManagedOutboundIPs() to populate field ManagedOutboundIps") + } + profile.ManagedOutboundIps = &managedOutboundIpsIPS + } else { + profile.ManagedOutboundIps = nil + } + + // No error + return nil +} + +// AssignProperties_To_LoadBalancerProfile populates the provided destination LoadBalancerProfile from our LoadBalancerProfile +func (profile *LoadBalancerProfile) AssignProperties_To_LoadBalancerProfile(destination *storage.LoadBalancerProfile) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ManagedOutboundIps + if profile.ManagedOutboundIps != nil { + var managedOutboundIpsIPS storage.ManagedOutboundIPs + err := profile.ManagedOutboundIps.AssignProperties_To_ManagedOutboundIPs(&managedOutboundIpsIPS) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_ManagedOutboundIPs() to populate field ManagedOutboundIps") + } + destination.ManagedOutboundIps = &managedOutboundIpsIPS + } else { + destination.ManagedOutboundIps = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_LoadBalancerProfile_STATUS populates our LoadBalancerProfile from the provided source LoadBalancerProfile_STATUS +func (profile *LoadBalancerProfile) Initialize_From_LoadBalancerProfile_STATUS(source *LoadBalancerProfile_STATUS) error { + + // ManagedOutboundIps + if source.ManagedOutboundIps != nil { + var managedOutboundIpsIPS ManagedOutboundIPs + err := managedOutboundIpsIPS.Initialize_From_ManagedOutboundIPs_STATUS(source.ManagedOutboundIps) + if err != nil { + return errors.Wrap(err, "calling Initialize_From_ManagedOutboundIPs_STATUS() to populate field ManagedOutboundIps") + } + profile.ManagedOutboundIps = &managedOutboundIpsIPS + } else { + profile.ManagedOutboundIps = nil + } + + // No error + return nil +} + +// LoadBalancerProfile represents the profile of the cluster public load balancer. +type LoadBalancerProfile_STATUS struct { + // EffectiveOutboundIps: The list of effective outbound IP addresses of the public load balancer. + EffectiveOutboundIps []EffectiveOutboundIP_STATUS `json:"effectiveOutboundIps,omitempty"` + + // ManagedOutboundIps: The desired managed outbound IPs for the cluster public load balancer. + ManagedOutboundIps *ManagedOutboundIPs_STATUS `json:"managedOutboundIps,omitempty"` +} + +var _ genruntime.FromARMConverter = &LoadBalancerProfile_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (profile *LoadBalancerProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &LoadBalancerProfile_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (profile *LoadBalancerProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(LoadBalancerProfile_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected LoadBalancerProfile_STATUS_ARM, got %T", armInput) + } + + // Set property "EffectiveOutboundIps": + for _, item := range typedInput.EffectiveOutboundIps { + var item1 EffectiveOutboundIP_STATUS + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + profile.EffectiveOutboundIps = append(profile.EffectiveOutboundIps, item1) + } + + // Set property "ManagedOutboundIps": + if typedInput.ManagedOutboundIps != nil { + var managedOutboundIps1 ManagedOutboundIPs_STATUS + err := managedOutboundIps1.PopulateFromARM(owner, *typedInput.ManagedOutboundIps) + if err != nil { + return err + } + managedOutboundIps := managedOutboundIps1 + profile.ManagedOutboundIps = &managedOutboundIps + } + + // No error + return nil +} + +// AssignProperties_From_LoadBalancerProfile_STATUS populates our LoadBalancerProfile_STATUS from the provided source LoadBalancerProfile_STATUS +func (profile *LoadBalancerProfile_STATUS) AssignProperties_From_LoadBalancerProfile_STATUS(source *storage.LoadBalancerProfile_STATUS) error { + + // EffectiveOutboundIps + if source.EffectiveOutboundIps != nil { + effectiveOutboundIpsIPSList := make([]EffectiveOutboundIP_STATUS, len(source.EffectiveOutboundIps)) + for effectiveOutboundIpsIPSIndex, effectiveOutboundIpsIPSItem := range source.EffectiveOutboundIps { + // Shadow the loop variable to avoid aliasing + effectiveOutboundIpsIPSItem := effectiveOutboundIpsIPSItem + var effectiveOutboundIpsIPS EffectiveOutboundIP_STATUS + err := effectiveOutboundIpsIPS.AssignProperties_From_EffectiveOutboundIP_STATUS(&effectiveOutboundIpsIPSItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_EffectiveOutboundIP_STATUS() to populate field EffectiveOutboundIps") + } + effectiveOutboundIpsIPSList[effectiveOutboundIpsIPSIndex] = effectiveOutboundIpsIPS + } + profile.EffectiveOutboundIps = effectiveOutboundIpsIPSList + } else { + profile.EffectiveOutboundIps = nil + } + + // ManagedOutboundIps + if source.ManagedOutboundIps != nil { + var managedOutboundIpsIPS ManagedOutboundIPs_STATUS + err := managedOutboundIpsIPS.AssignProperties_From_ManagedOutboundIPs_STATUS(source.ManagedOutboundIps) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_ManagedOutboundIPs_STATUS() to populate field ManagedOutboundIps") + } + profile.ManagedOutboundIps = &managedOutboundIpsIPS + } else { + profile.ManagedOutboundIps = nil + } + + // No error + return nil +} + +// AssignProperties_To_LoadBalancerProfile_STATUS populates the provided destination LoadBalancerProfile_STATUS from our LoadBalancerProfile_STATUS +func (profile *LoadBalancerProfile_STATUS) AssignProperties_To_LoadBalancerProfile_STATUS(destination *storage.LoadBalancerProfile_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // EffectiveOutboundIps + if profile.EffectiveOutboundIps != nil { + effectiveOutboundIpsIPSList := make([]storage.EffectiveOutboundIP_STATUS, len(profile.EffectiveOutboundIps)) + for effectiveOutboundIpsIPSIndex, effectiveOutboundIpsIPSItem := range profile.EffectiveOutboundIps { + // Shadow the loop variable to avoid aliasing + effectiveOutboundIpsIPSItem := effectiveOutboundIpsIPSItem + var effectiveOutboundIpsIPS storage.EffectiveOutboundIP_STATUS + err := effectiveOutboundIpsIPSItem.AssignProperties_To_EffectiveOutboundIP_STATUS(&effectiveOutboundIpsIPS) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_EffectiveOutboundIP_STATUS() to populate field EffectiveOutboundIps") + } + effectiveOutboundIpsIPSList[effectiveOutboundIpsIPSIndex] = effectiveOutboundIpsIPS + } + destination.EffectiveOutboundIps = effectiveOutboundIpsIPSList + } else { + destination.EffectiveOutboundIps = nil + } + + // ManagedOutboundIps + if profile.ManagedOutboundIps != nil { + var managedOutboundIpsIPS storage.ManagedOutboundIPs_STATUS + err := profile.ManagedOutboundIps.AssignProperties_To_ManagedOutboundIPs_STATUS(&managedOutboundIpsIPS) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_ManagedOutboundIPs_STATUS() to populate field ManagedOutboundIps") + } + destination.ManagedOutboundIps = &managedOutboundIpsIPS + } else { + destination.ManagedOutboundIps = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// The outbound routing strategy used to provide your cluster egress to the internet. +// +kubebuilder:validation:Enum={"Loadbalancer","UserDefinedRouting"} +type OutboundType string + +const ( + OutboundType_Loadbalancer = OutboundType("Loadbalancer") + OutboundType_UserDefinedRouting = OutboundType("UserDefinedRouting") +) + +// Mapping from string to OutboundType +var outboundType_Values = map[string]OutboundType{ + "loadbalancer": OutboundType_Loadbalancer, + "userdefinedrouting": OutboundType_UserDefinedRouting, +} + +// The outbound routing strategy used to provide your cluster egress to the internet. +type OutboundType_STATUS string + +const ( + OutboundType_STATUS_Loadbalancer = OutboundType_STATUS("Loadbalancer") + OutboundType_STATUS_UserDefinedRouting = OutboundType_STATUS("UserDefinedRouting") +) + +// Mapping from string to OutboundType_STATUS +var outboundType_STATUS_Values = map[string]OutboundType_STATUS{ + "loadbalancer": OutboundType_STATUS_Loadbalancer, + "userdefinedrouting": OutboundType_STATUS_UserDefinedRouting, +} + +// PreconfiguredNSG represents whether customers want to use their own NSG attached to the subnets +// +kubebuilder:validation:Enum={"Disabled","Enabled"} +type PreconfiguredNSG string + +const ( + PreconfiguredNSG_Disabled = PreconfiguredNSG("Disabled") + PreconfiguredNSG_Enabled = PreconfiguredNSG("Enabled") +) + +// Mapping from string to PreconfiguredNSG +var preconfiguredNSG_Values = map[string]PreconfiguredNSG{ + "disabled": PreconfiguredNSG_Disabled, + "enabled": PreconfiguredNSG_Enabled, +} + +// PreconfiguredNSG represents whether customers want to use their own NSG attached to the subnets +type PreconfiguredNSG_STATUS string + +const ( + PreconfiguredNSG_STATUS_Disabled = PreconfiguredNSG_STATUS("Disabled") + PreconfiguredNSG_STATUS_Enabled = PreconfiguredNSG_STATUS("Enabled") +) + +// Mapping from string to PreconfiguredNSG_STATUS +var preconfiguredNSG_STATUS_Values = map[string]PreconfiguredNSG_STATUS{ + "disabled": PreconfiguredNSG_STATUS_Disabled, + "enabled": PreconfiguredNSG_STATUS_Enabled, +} + +// Visibility represents visibility. +// +kubebuilder:validation:Enum={"Private","Public"} +type Visibility string + +const ( + Visibility_Private = Visibility("Private") + Visibility_Public = Visibility("Public") +) + +// Mapping from string to Visibility +var visibility_Values = map[string]Visibility{ + "private": Visibility_Private, + "public": Visibility_Public, +} + +// Visibility represents visibility. +type Visibility_STATUS string + +const ( + Visibility_STATUS_Private = Visibility_STATUS("Private") + Visibility_STATUS_Public = Visibility_STATUS("Public") +) + +// Mapping from string to Visibility_STATUS +var visibility_STATUS_Values = map[string]Visibility_STATUS{ + "private": Visibility_STATUS_Private, + "public": Visibility_STATUS_Public, +} + +// EffectiveOutboundIP represents an effective outbound IP resource of the cluster public load balancer. +type EffectiveOutboundIP_STATUS struct { + // Id: The fully qualified Azure resource id of an IP address resource. + Id *string `json:"id,omitempty"` +} + +var _ genruntime.FromARMConverter = &EffectiveOutboundIP_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (outboundIP *EffectiveOutboundIP_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &EffectiveOutboundIP_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (outboundIP *EffectiveOutboundIP_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(EffectiveOutboundIP_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected EffectiveOutboundIP_STATUS_ARM, got %T", armInput) + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + outboundIP.Id = &id + } + + // No error + return nil +} + +// AssignProperties_From_EffectiveOutboundIP_STATUS populates our EffectiveOutboundIP_STATUS from the provided source EffectiveOutboundIP_STATUS +func (outboundIP *EffectiveOutboundIP_STATUS) AssignProperties_From_EffectiveOutboundIP_STATUS(source *storage.EffectiveOutboundIP_STATUS) error { + + // Id + outboundIP.Id = genruntime.ClonePointerToString(source.Id) + + // No error + return nil +} + +// AssignProperties_To_EffectiveOutboundIP_STATUS populates the provided destination EffectiveOutboundIP_STATUS from our EffectiveOutboundIP_STATUS +func (outboundIP *EffectiveOutboundIP_STATUS) AssignProperties_To_EffectiveOutboundIP_STATUS(destination *storage.EffectiveOutboundIP_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Id + destination.Id = genruntime.ClonePointerToString(outboundIP.Id) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// ManagedOutboundIPs represents the desired managed outbound IPs for the cluster public load balancer. +type ManagedOutboundIPs struct { + // Count: Count represents the desired number of IPv4 outbound IPs created and managed by Azure for the cluster public load + // balancer. Allowed values are in the range of 1 - 20. The default value is 1. + Count *int `json:"count,omitempty"` +} + +var _ genruntime.ARMTransformer = &ManagedOutboundIPs{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (iPs *ManagedOutboundIPs) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if iPs == nil { + return nil, nil + } + result := &ManagedOutboundIPs_ARM{} + + // Set property "Count": + if iPs.Count != nil { + count := *iPs.Count + result.Count = &count + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (iPs *ManagedOutboundIPs) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &ManagedOutboundIPs_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (iPs *ManagedOutboundIPs) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(ManagedOutboundIPs_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected ManagedOutboundIPs_ARM, got %T", armInput) + } + + // Set property "Count": + if typedInput.Count != nil { + count := *typedInput.Count + iPs.Count = &count + } + + // No error + return nil +} + +// AssignProperties_From_ManagedOutboundIPs populates our ManagedOutboundIPs from the provided source ManagedOutboundIPs +func (iPs *ManagedOutboundIPs) AssignProperties_From_ManagedOutboundIPs(source *storage.ManagedOutboundIPs) error { + + // Count + iPs.Count = genruntime.ClonePointerToInt(source.Count) + + // No error + return nil +} + +// AssignProperties_To_ManagedOutboundIPs populates the provided destination ManagedOutboundIPs from our ManagedOutboundIPs +func (iPs *ManagedOutboundIPs) AssignProperties_To_ManagedOutboundIPs(destination *storage.ManagedOutboundIPs) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Count + destination.Count = genruntime.ClonePointerToInt(iPs.Count) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Initialize_From_ManagedOutboundIPs_STATUS populates our ManagedOutboundIPs from the provided source ManagedOutboundIPs_STATUS +func (iPs *ManagedOutboundIPs) Initialize_From_ManagedOutboundIPs_STATUS(source *ManagedOutboundIPs_STATUS) error { + + // Count + iPs.Count = genruntime.ClonePointerToInt(source.Count) + + // No error + return nil +} + +// ManagedOutboundIPs represents the desired managed outbound IPs for the cluster public load balancer. +type ManagedOutboundIPs_STATUS struct { + // Count: Count represents the desired number of IPv4 outbound IPs created and managed by Azure for the cluster public load + // balancer. Allowed values are in the range of 1 - 20. The default value is 1. + Count *int `json:"count,omitempty"` +} + +var _ genruntime.FromARMConverter = &ManagedOutboundIPs_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (iPs *ManagedOutboundIPs_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &ManagedOutboundIPs_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (iPs *ManagedOutboundIPs_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(ManagedOutboundIPs_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected ManagedOutboundIPs_STATUS_ARM, got %T", armInput) + } + + // Set property "Count": + if typedInput.Count != nil { + count := *typedInput.Count + iPs.Count = &count + } + + // No error + return nil +} + +// AssignProperties_From_ManagedOutboundIPs_STATUS populates our ManagedOutboundIPs_STATUS from the provided source ManagedOutboundIPs_STATUS +func (iPs *ManagedOutboundIPs_STATUS) AssignProperties_From_ManagedOutboundIPs_STATUS(source *storage.ManagedOutboundIPs_STATUS) error { + + // Count + iPs.Count = genruntime.ClonePointerToInt(source.Count) + + // No error + return nil +} + +// AssignProperties_To_ManagedOutboundIPs_STATUS populates the provided destination ManagedOutboundIPs_STATUS from our ManagedOutboundIPs_STATUS +func (iPs *ManagedOutboundIPs_STATUS) AssignProperties_To_ManagedOutboundIPs_STATUS(destination *storage.ManagedOutboundIPs_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Count + destination.Count = genruntime.ClonePointerToInt(iPs.Count) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +func init() { + SchemeBuilder.Register(&OpenShiftCluster{}, &OpenShiftClusterList{}) +} diff --git a/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_types_gen_test.go b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_types_gen_test.go new file mode 100644 index 00000000000..503c79d948a --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/open_shift_cluster_types_gen_test.go @@ -0,0 +1,2660 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20231122 + +import ( + "encoding/json" + storage "github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122/storage" + "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_APIServerProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from APIServerProfile to APIServerProfile via AssignProperties_To_APIServerProfile & AssignProperties_From_APIServerProfile returns original", + prop.ForAll(RunPropertyAssignmentTestForAPIServerProfile, APIServerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForAPIServerProfile tests if a specific instance of APIServerProfile can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForAPIServerProfile(subject APIServerProfile) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.APIServerProfile + err := copied.AssignProperties_To_APIServerProfile(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual APIServerProfile + err = actual.AssignProperties_From_APIServerProfile(&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_APIServerProfile_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 APIServerProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForAPIServerProfile, APIServerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForAPIServerProfile runs a test to see if a specific instance of APIServerProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForAPIServerProfile(subject APIServerProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual APIServerProfile + 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 APIServerProfile instances for property testing - lazily instantiated by APIServerProfileGenerator() +var apiServerProfileGenerator gopter.Gen + +// APIServerProfileGenerator returns a generator of APIServerProfile instances for property testing. +func APIServerProfileGenerator() gopter.Gen { + if apiServerProfileGenerator != nil { + return apiServerProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForAPIServerProfile(generators) + apiServerProfileGenerator = gen.Struct(reflect.TypeOf(APIServerProfile{}), generators) + + return apiServerProfileGenerator +} + +// AddIndependentPropertyGeneratorsForAPIServerProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAPIServerProfile(gens map[string]gopter.Gen) { + gens["Visibility"] = gen.PtrOf(gen.OneConstOf(Visibility_Private, Visibility_Public)) +} + +func Test_APIServerProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from APIServerProfile_STATUS to APIServerProfile_STATUS via AssignProperties_To_APIServerProfile_STATUS & AssignProperties_From_APIServerProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForAPIServerProfile_STATUS, APIServerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForAPIServerProfile_STATUS tests if a specific instance of APIServerProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForAPIServerProfile_STATUS(subject APIServerProfile_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 storage.APIServerProfile_STATUS + err := copied.AssignProperties_To_APIServerProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual APIServerProfile_STATUS + err = actual.AssignProperties_From_APIServerProfile_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_APIServerProfile_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 APIServerProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForAPIServerProfile_STATUS, APIServerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForAPIServerProfile_STATUS runs a test to see if a specific instance of APIServerProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForAPIServerProfile_STATUS(subject APIServerProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual APIServerProfile_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 APIServerProfile_STATUS instances for property testing - lazily instantiated by +// APIServerProfile_STATUSGenerator() +var apiServerProfile_STATUSGenerator gopter.Gen + +// APIServerProfile_STATUSGenerator returns a generator of APIServerProfile_STATUS instances for property testing. +func APIServerProfile_STATUSGenerator() gopter.Gen { + if apiServerProfile_STATUSGenerator != nil { + return apiServerProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS(generators) + apiServerProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(APIServerProfile_STATUS{}), generators) + + return apiServerProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS(gens map[string]gopter.Gen) { + gens["Ip"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.OneConstOf(Visibility_STATUS_Private, Visibility_STATUS_Public)) +} + +func Test_ClusterProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from ClusterProfile to ClusterProfile via AssignProperties_To_ClusterProfile & AssignProperties_From_ClusterProfile returns original", + prop.ForAll(RunPropertyAssignmentTestForClusterProfile, ClusterProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForClusterProfile tests if a specific instance of ClusterProfile can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForClusterProfile(subject ClusterProfile) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.ClusterProfile + err := copied.AssignProperties_To_ClusterProfile(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual ClusterProfile + err = actual.AssignProperties_From_ClusterProfile(&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_ClusterProfile_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 ClusterProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForClusterProfile, ClusterProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForClusterProfile runs a test to see if a specific instance of ClusterProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForClusterProfile(subject ClusterProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ClusterProfile + 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 ClusterProfile instances for property testing - lazily instantiated by ClusterProfileGenerator() +var clusterProfileGenerator gopter.Gen + +// ClusterProfileGenerator returns a generator of ClusterProfile instances for property testing. +func ClusterProfileGenerator() gopter.Gen { + if clusterProfileGenerator != nil { + return clusterProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForClusterProfile(generators) + clusterProfileGenerator = gen.Struct(reflect.TypeOf(ClusterProfile{}), generators) + + return clusterProfileGenerator +} + +// AddIndependentPropertyGeneratorsForClusterProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForClusterProfile(gens map[string]gopter.Gen) { + gens["Domain"] = gen.PtrOf(gen.AlphaString()) + gens["FipsValidatedModules"] = gen.PtrOf(gen.OneConstOf(FipsValidatedModules_Disabled, FipsValidatedModules_Enabled)) + gens["ResourceGroupId"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_ClusterProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from ClusterProfile_STATUS to ClusterProfile_STATUS via AssignProperties_To_ClusterProfile_STATUS & AssignProperties_From_ClusterProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForClusterProfile_STATUS, ClusterProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForClusterProfile_STATUS tests if a specific instance of ClusterProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForClusterProfile_STATUS(subject ClusterProfile_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 storage.ClusterProfile_STATUS + err := copied.AssignProperties_To_ClusterProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual ClusterProfile_STATUS + err = actual.AssignProperties_From_ClusterProfile_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_ClusterProfile_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 ClusterProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForClusterProfile_STATUS, ClusterProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForClusterProfile_STATUS runs a test to see if a specific instance of ClusterProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForClusterProfile_STATUS(subject ClusterProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ClusterProfile_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 ClusterProfile_STATUS instances for property testing - lazily instantiated by +// ClusterProfile_STATUSGenerator() +var clusterProfile_STATUSGenerator gopter.Gen + +// ClusterProfile_STATUSGenerator returns a generator of ClusterProfile_STATUS instances for property testing. +func ClusterProfile_STATUSGenerator() gopter.Gen { + if clusterProfile_STATUSGenerator != nil { + return clusterProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForClusterProfile_STATUS(generators) + clusterProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(ClusterProfile_STATUS{}), generators) + + return clusterProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForClusterProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForClusterProfile_STATUS(gens map[string]gopter.Gen) { + gens["Domain"] = gen.PtrOf(gen.AlphaString()) + gens["FipsValidatedModules"] = gen.PtrOf(gen.OneConstOf(FipsValidatedModules_STATUS_Disabled, FipsValidatedModules_STATUS_Enabled)) + gens["ResourceGroupId"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_ConsoleProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from ConsoleProfile_STATUS to ConsoleProfile_STATUS via AssignProperties_To_ConsoleProfile_STATUS & AssignProperties_From_ConsoleProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForConsoleProfile_STATUS, ConsoleProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForConsoleProfile_STATUS tests if a specific instance of ConsoleProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForConsoleProfile_STATUS(subject ConsoleProfile_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 storage.ConsoleProfile_STATUS + err := copied.AssignProperties_To_ConsoleProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual ConsoleProfile_STATUS + err = actual.AssignProperties_From_ConsoleProfile_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_ConsoleProfile_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 ConsoleProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForConsoleProfile_STATUS, ConsoleProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForConsoleProfile_STATUS runs a test to see if a specific instance of ConsoleProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForConsoleProfile_STATUS(subject ConsoleProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ConsoleProfile_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 ConsoleProfile_STATUS instances for property testing - lazily instantiated by +// ConsoleProfile_STATUSGenerator() +var consoleProfile_STATUSGenerator gopter.Gen + +// ConsoleProfile_STATUSGenerator returns a generator of ConsoleProfile_STATUS instances for property testing. +func ConsoleProfile_STATUSGenerator() gopter.Gen { + if consoleProfile_STATUSGenerator != nil { + return consoleProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForConsoleProfile_STATUS(generators) + consoleProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(ConsoleProfile_STATUS{}), generators) + + return consoleProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForConsoleProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForConsoleProfile_STATUS(gens map[string]gopter.Gen) { + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_EffectiveOutboundIP_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from EffectiveOutboundIP_STATUS to EffectiveOutboundIP_STATUS via AssignProperties_To_EffectiveOutboundIP_STATUS & AssignProperties_From_EffectiveOutboundIP_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForEffectiveOutboundIP_STATUS, EffectiveOutboundIP_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForEffectiveOutboundIP_STATUS tests if a specific instance of EffectiveOutboundIP_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForEffectiveOutboundIP_STATUS(subject EffectiveOutboundIP_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 storage.EffectiveOutboundIP_STATUS + err := copied.AssignProperties_To_EffectiveOutboundIP_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual EffectiveOutboundIP_STATUS + err = actual.AssignProperties_From_EffectiveOutboundIP_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_EffectiveOutboundIP_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 EffectiveOutboundIP_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForEffectiveOutboundIP_STATUS, EffectiveOutboundIP_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForEffectiveOutboundIP_STATUS runs a test to see if a specific instance of EffectiveOutboundIP_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForEffectiveOutboundIP_STATUS(subject EffectiveOutboundIP_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual EffectiveOutboundIP_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 EffectiveOutboundIP_STATUS instances for property testing - lazily instantiated by +// EffectiveOutboundIP_STATUSGenerator() +var effectiveOutboundIP_STATUSGenerator gopter.Gen + +// EffectiveOutboundIP_STATUSGenerator returns a generator of EffectiveOutboundIP_STATUS instances for property testing. +func EffectiveOutboundIP_STATUSGenerator() gopter.Gen { + if effectiveOutboundIP_STATUSGenerator != nil { + return effectiveOutboundIP_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS(generators) + effectiveOutboundIP_STATUSGenerator = gen.Struct(reflect.TypeOf(EffectiveOutboundIP_STATUS{}), generators) + + return effectiveOutboundIP_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_IngressProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from IngressProfile to IngressProfile via AssignProperties_To_IngressProfile & AssignProperties_From_IngressProfile returns original", + prop.ForAll(RunPropertyAssignmentTestForIngressProfile, IngressProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForIngressProfile tests if a specific instance of IngressProfile can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForIngressProfile(subject IngressProfile) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.IngressProfile + err := copied.AssignProperties_To_IngressProfile(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual IngressProfile + err = actual.AssignProperties_From_IngressProfile(&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_IngressProfile_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 IngressProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForIngressProfile, IngressProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForIngressProfile runs a test to see if a specific instance of IngressProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForIngressProfile(subject IngressProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual IngressProfile + 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 IngressProfile instances for property testing - lazily instantiated by IngressProfileGenerator() +var ingressProfileGenerator gopter.Gen + +// IngressProfileGenerator returns a generator of IngressProfile instances for property testing. +func IngressProfileGenerator() gopter.Gen { + if ingressProfileGenerator != nil { + return ingressProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForIngressProfile(generators) + ingressProfileGenerator = gen.Struct(reflect.TypeOf(IngressProfile{}), generators) + + return ingressProfileGenerator +} + +// AddIndependentPropertyGeneratorsForIngressProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForIngressProfile(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.OneConstOf(Visibility_Private, Visibility_Public)) +} + +func Test_IngressProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from IngressProfile_STATUS to IngressProfile_STATUS via AssignProperties_To_IngressProfile_STATUS & AssignProperties_From_IngressProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForIngressProfile_STATUS, IngressProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForIngressProfile_STATUS tests if a specific instance of IngressProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForIngressProfile_STATUS(subject IngressProfile_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 storage.IngressProfile_STATUS + err := copied.AssignProperties_To_IngressProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual IngressProfile_STATUS + err = actual.AssignProperties_From_IngressProfile_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_IngressProfile_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 IngressProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForIngressProfile_STATUS, IngressProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForIngressProfile_STATUS runs a test to see if a specific instance of IngressProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForIngressProfile_STATUS(subject IngressProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual IngressProfile_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 IngressProfile_STATUS instances for property testing - lazily instantiated by +// IngressProfile_STATUSGenerator() +var ingressProfile_STATUSGenerator gopter.Gen + +// IngressProfile_STATUSGenerator returns a generator of IngressProfile_STATUS instances for property testing. +func IngressProfile_STATUSGenerator() gopter.Gen { + if ingressProfile_STATUSGenerator != nil { + return ingressProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForIngressProfile_STATUS(generators) + ingressProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(IngressProfile_STATUS{}), generators) + + return ingressProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForIngressProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForIngressProfile_STATUS(gens map[string]gopter.Gen) { + gens["Ip"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.OneConstOf(Visibility_STATUS_Private, Visibility_STATUS_Public)) +} + +func Test_LoadBalancerProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from LoadBalancerProfile to LoadBalancerProfile via AssignProperties_To_LoadBalancerProfile & AssignProperties_From_LoadBalancerProfile returns original", + prop.ForAll(RunPropertyAssignmentTestForLoadBalancerProfile, LoadBalancerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForLoadBalancerProfile tests if a specific instance of LoadBalancerProfile can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForLoadBalancerProfile(subject LoadBalancerProfile) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.LoadBalancerProfile + err := copied.AssignProperties_To_LoadBalancerProfile(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual LoadBalancerProfile + err = actual.AssignProperties_From_LoadBalancerProfile(&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_LoadBalancerProfile_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 LoadBalancerProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForLoadBalancerProfile, LoadBalancerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForLoadBalancerProfile runs a test to see if a specific instance of LoadBalancerProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForLoadBalancerProfile(subject LoadBalancerProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual LoadBalancerProfile + 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 LoadBalancerProfile instances for property testing - lazily instantiated by +// LoadBalancerProfileGenerator() +var loadBalancerProfileGenerator gopter.Gen + +// LoadBalancerProfileGenerator returns a generator of LoadBalancerProfile instances for property testing. +func LoadBalancerProfileGenerator() gopter.Gen { + if loadBalancerProfileGenerator != nil { + return loadBalancerProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForLoadBalancerProfile(generators) + loadBalancerProfileGenerator = gen.Struct(reflect.TypeOf(LoadBalancerProfile{}), generators) + + return loadBalancerProfileGenerator +} + +// AddRelatedPropertyGeneratorsForLoadBalancerProfile is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForLoadBalancerProfile(gens map[string]gopter.Gen) { + gens["ManagedOutboundIps"] = gen.PtrOf(ManagedOutboundIPsGenerator()) +} + +func Test_LoadBalancerProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from LoadBalancerProfile_STATUS to LoadBalancerProfile_STATUS via AssignProperties_To_LoadBalancerProfile_STATUS & AssignProperties_From_LoadBalancerProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForLoadBalancerProfile_STATUS, LoadBalancerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForLoadBalancerProfile_STATUS tests if a specific instance of LoadBalancerProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForLoadBalancerProfile_STATUS(subject LoadBalancerProfile_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 storage.LoadBalancerProfile_STATUS + err := copied.AssignProperties_To_LoadBalancerProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual LoadBalancerProfile_STATUS + err = actual.AssignProperties_From_LoadBalancerProfile_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_LoadBalancerProfile_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 LoadBalancerProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForLoadBalancerProfile_STATUS, LoadBalancerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForLoadBalancerProfile_STATUS runs a test to see if a specific instance of LoadBalancerProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForLoadBalancerProfile_STATUS(subject LoadBalancerProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual LoadBalancerProfile_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 LoadBalancerProfile_STATUS instances for property testing - lazily instantiated by +// LoadBalancerProfile_STATUSGenerator() +var loadBalancerProfile_STATUSGenerator gopter.Gen + +// LoadBalancerProfile_STATUSGenerator returns a generator of LoadBalancerProfile_STATUS instances for property testing. +func LoadBalancerProfile_STATUSGenerator() gopter.Gen { + if loadBalancerProfile_STATUSGenerator != nil { + return loadBalancerProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS(generators) + loadBalancerProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(LoadBalancerProfile_STATUS{}), generators) + + return loadBalancerProfile_STATUSGenerator +} + +// AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS(gens map[string]gopter.Gen) { + gens["EffectiveOutboundIps"] = gen.SliceOf(EffectiveOutboundIP_STATUSGenerator()) + gens["ManagedOutboundIps"] = gen.PtrOf(ManagedOutboundIPs_STATUSGenerator()) +} + +func Test_ManagedOutboundIPs_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from ManagedOutboundIPs to ManagedOutboundIPs via AssignProperties_To_ManagedOutboundIPs & AssignProperties_From_ManagedOutboundIPs returns original", + prop.ForAll(RunPropertyAssignmentTestForManagedOutboundIPs, ManagedOutboundIPsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForManagedOutboundIPs tests if a specific instance of ManagedOutboundIPs can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForManagedOutboundIPs(subject ManagedOutboundIPs) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.ManagedOutboundIPs + err := copied.AssignProperties_To_ManagedOutboundIPs(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual ManagedOutboundIPs + err = actual.AssignProperties_From_ManagedOutboundIPs(&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_ManagedOutboundIPs_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 ManagedOutboundIPs via JSON returns original", + prop.ForAll(RunJSONSerializationTestForManagedOutboundIPs, ManagedOutboundIPsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForManagedOutboundIPs runs a test to see if a specific instance of ManagedOutboundIPs round trips to JSON and back losslessly +func RunJSONSerializationTestForManagedOutboundIPs(subject ManagedOutboundIPs) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ManagedOutboundIPs + 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 ManagedOutboundIPs instances for property testing - lazily instantiated by ManagedOutboundIPsGenerator() +var managedOutboundIPsGenerator gopter.Gen + +// ManagedOutboundIPsGenerator returns a generator of ManagedOutboundIPs instances for property testing. +func ManagedOutboundIPsGenerator() gopter.Gen { + if managedOutboundIPsGenerator != nil { + return managedOutboundIPsGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForManagedOutboundIPs(generators) + managedOutboundIPsGenerator = gen.Struct(reflect.TypeOf(ManagedOutboundIPs{}), generators) + + return managedOutboundIPsGenerator +} + +// AddIndependentPropertyGeneratorsForManagedOutboundIPs is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForManagedOutboundIPs(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) +} + +func Test_ManagedOutboundIPs_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from ManagedOutboundIPs_STATUS to ManagedOutboundIPs_STATUS via AssignProperties_To_ManagedOutboundIPs_STATUS & AssignProperties_From_ManagedOutboundIPs_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForManagedOutboundIPs_STATUS, ManagedOutboundIPs_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForManagedOutboundIPs_STATUS tests if a specific instance of ManagedOutboundIPs_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForManagedOutboundIPs_STATUS(subject ManagedOutboundIPs_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 storage.ManagedOutboundIPs_STATUS + err := copied.AssignProperties_To_ManagedOutboundIPs_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual ManagedOutboundIPs_STATUS + err = actual.AssignProperties_From_ManagedOutboundIPs_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_ManagedOutboundIPs_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 ManagedOutboundIPs_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForManagedOutboundIPs_STATUS, ManagedOutboundIPs_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForManagedOutboundIPs_STATUS runs a test to see if a specific instance of ManagedOutboundIPs_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForManagedOutboundIPs_STATUS(subject ManagedOutboundIPs_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ManagedOutboundIPs_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 ManagedOutboundIPs_STATUS instances for property testing - lazily instantiated by +// ManagedOutboundIPs_STATUSGenerator() +var managedOutboundIPs_STATUSGenerator gopter.Gen + +// ManagedOutboundIPs_STATUSGenerator returns a generator of ManagedOutboundIPs_STATUS instances for property testing. +func ManagedOutboundIPs_STATUSGenerator() gopter.Gen { + if managedOutboundIPs_STATUSGenerator != nil { + return managedOutboundIPs_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS(generators) + managedOutboundIPs_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedOutboundIPs_STATUS{}), generators) + + return managedOutboundIPs_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) +} + +func Test_MasterProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from MasterProfile to MasterProfile via AssignProperties_To_MasterProfile & AssignProperties_From_MasterProfile returns original", + prop.ForAll(RunPropertyAssignmentTestForMasterProfile, MasterProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForMasterProfile tests if a specific instance of MasterProfile can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForMasterProfile(subject MasterProfile) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.MasterProfile + err := copied.AssignProperties_To_MasterProfile(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual MasterProfile + err = actual.AssignProperties_From_MasterProfile(&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_MasterProfile_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 MasterProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMasterProfile, MasterProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMasterProfile runs a test to see if a specific instance of MasterProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForMasterProfile(subject MasterProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MasterProfile + 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 MasterProfile instances for property testing - lazily instantiated by MasterProfileGenerator() +var masterProfileGenerator gopter.Gen + +// MasterProfileGenerator returns a generator of MasterProfile instances for property testing. +func MasterProfileGenerator() gopter.Gen { + if masterProfileGenerator != nil { + return masterProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMasterProfile(generators) + masterProfileGenerator = gen.Struct(reflect.TypeOf(MasterProfile{}), generators) + + return masterProfileGenerator +} + +// AddIndependentPropertyGeneratorsForMasterProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMasterProfile(gens map[string]gopter.Gen) { + gens["EncryptionAtHost"] = gen.PtrOf(gen.OneConstOf(EncryptionAtHost_Disabled, EncryptionAtHost_Enabled)) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_MasterProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from MasterProfile_STATUS to MasterProfile_STATUS via AssignProperties_To_MasterProfile_STATUS & AssignProperties_From_MasterProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForMasterProfile_STATUS, MasterProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForMasterProfile_STATUS tests if a specific instance of MasterProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForMasterProfile_STATUS(subject MasterProfile_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 storage.MasterProfile_STATUS + err := copied.AssignProperties_To_MasterProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual MasterProfile_STATUS + err = actual.AssignProperties_From_MasterProfile_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_MasterProfile_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 MasterProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMasterProfile_STATUS, MasterProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMasterProfile_STATUS runs a test to see if a specific instance of MasterProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForMasterProfile_STATUS(subject MasterProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MasterProfile_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 MasterProfile_STATUS instances for property testing - lazily instantiated by +// MasterProfile_STATUSGenerator() +var masterProfile_STATUSGenerator gopter.Gen + +// MasterProfile_STATUSGenerator returns a generator of MasterProfile_STATUS instances for property testing. +func MasterProfile_STATUSGenerator() gopter.Gen { + if masterProfile_STATUSGenerator != nil { + return masterProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMasterProfile_STATUS(generators) + masterProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(MasterProfile_STATUS{}), generators) + + return masterProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForMasterProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMasterProfile_STATUS(gens map[string]gopter.Gen) { + gens["DiskEncryptionSetId"] = gen.PtrOf(gen.AlphaString()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.OneConstOf(EncryptionAtHost_STATUS_Disabled, EncryptionAtHost_STATUS_Enabled)) + gens["SubnetId"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_NetworkProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from NetworkProfile to NetworkProfile via AssignProperties_To_NetworkProfile & AssignProperties_From_NetworkProfile returns original", + prop.ForAll(RunPropertyAssignmentTestForNetworkProfile, NetworkProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForNetworkProfile tests if a specific instance of NetworkProfile can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForNetworkProfile(subject NetworkProfile) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.NetworkProfile + err := copied.AssignProperties_To_NetworkProfile(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual NetworkProfile + err = actual.AssignProperties_From_NetworkProfile(&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_NetworkProfile_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 NetworkProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetworkProfile, NetworkProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetworkProfile runs a test to see if a specific instance of NetworkProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForNetworkProfile(subject NetworkProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NetworkProfile + 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 NetworkProfile instances for property testing - lazily instantiated by NetworkProfileGenerator() +var networkProfileGenerator gopter.Gen + +// NetworkProfileGenerator returns a generator of NetworkProfile instances for property testing. +// We first initialize networkProfileGenerator 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 NetworkProfileGenerator() gopter.Gen { + if networkProfileGenerator != nil { + return networkProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile(generators) + networkProfileGenerator = gen.Struct(reflect.TypeOf(NetworkProfile{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile(generators) + AddRelatedPropertyGeneratorsForNetworkProfile(generators) + networkProfileGenerator = gen.Struct(reflect.TypeOf(NetworkProfile{}), generators) + + return networkProfileGenerator +} + +// AddIndependentPropertyGeneratorsForNetworkProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetworkProfile(gens map[string]gopter.Gen) { + gens["OutboundType"] = gen.PtrOf(gen.OneConstOf(OutboundType_Loadbalancer, OutboundType_UserDefinedRouting)) + gens["PodCidr"] = gen.PtrOf(gen.AlphaString()) + gens["PreconfiguredNSG"] = gen.PtrOf(gen.OneConstOf(PreconfiguredNSG_Disabled, PreconfiguredNSG_Enabled)) + gens["ServiceCidr"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForNetworkProfile is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNetworkProfile(gens map[string]gopter.Gen) { + gens["LoadBalancerProfile"] = gen.PtrOf(LoadBalancerProfileGenerator()) +} + +func Test_NetworkProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from NetworkProfile_STATUS to NetworkProfile_STATUS via AssignProperties_To_NetworkProfile_STATUS & AssignProperties_From_NetworkProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForNetworkProfile_STATUS, NetworkProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForNetworkProfile_STATUS tests if a specific instance of NetworkProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForNetworkProfile_STATUS(subject NetworkProfile_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 storage.NetworkProfile_STATUS + err := copied.AssignProperties_To_NetworkProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual NetworkProfile_STATUS + err = actual.AssignProperties_From_NetworkProfile_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_NetworkProfile_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 NetworkProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetworkProfile_STATUS, NetworkProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetworkProfile_STATUS runs a test to see if a specific instance of NetworkProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForNetworkProfile_STATUS(subject NetworkProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NetworkProfile_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 NetworkProfile_STATUS instances for property testing - lazily instantiated by +// NetworkProfile_STATUSGenerator() +var networkProfile_STATUSGenerator gopter.Gen + +// NetworkProfile_STATUSGenerator returns a generator of NetworkProfile_STATUS instances for property testing. +// We first initialize networkProfile_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 NetworkProfile_STATUSGenerator() gopter.Gen { + if networkProfile_STATUSGenerator != nil { + return networkProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile_STATUS(generators) + networkProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(NetworkProfile_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile_STATUS(generators) + AddRelatedPropertyGeneratorsForNetworkProfile_STATUS(generators) + networkProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(NetworkProfile_STATUS{}), generators) + + return networkProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForNetworkProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetworkProfile_STATUS(gens map[string]gopter.Gen) { + gens["OutboundType"] = gen.PtrOf(gen.OneConstOf(OutboundType_STATUS_Loadbalancer, OutboundType_STATUS_UserDefinedRouting)) + gens["PodCidr"] = gen.PtrOf(gen.AlphaString()) + gens["PreconfiguredNSG"] = gen.PtrOf(gen.OneConstOf(PreconfiguredNSG_STATUS_Disabled, PreconfiguredNSG_STATUS_Enabled)) + gens["ServiceCidr"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForNetworkProfile_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNetworkProfile_STATUS(gens map[string]gopter.Gen) { + gens["LoadBalancerProfile"] = gen.PtrOf(LoadBalancerProfile_STATUSGenerator()) +} + +func Test_OpenShiftCluster_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 OpenShiftCluster to hub returns original", + prop.ForAll(RunResourceConversionTestForOpenShiftCluster, OpenShiftClusterGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForOpenShiftCluster tests if a specific instance of OpenShiftCluster round trips to the hub storage version and back losslessly +func RunResourceConversionTestForOpenShiftCluster(subject OpenShiftCluster) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub storage.OpenShiftCluster + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual OpenShiftCluster + 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_OpenShiftCluster_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from OpenShiftCluster to OpenShiftCluster via AssignProperties_To_OpenShiftCluster & AssignProperties_From_OpenShiftCluster returns original", + prop.ForAll(RunPropertyAssignmentTestForOpenShiftCluster, OpenShiftClusterGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForOpenShiftCluster tests if a specific instance of OpenShiftCluster can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForOpenShiftCluster(subject OpenShiftCluster) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.OpenShiftCluster + err := copied.AssignProperties_To_OpenShiftCluster(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual OpenShiftCluster + err = actual.AssignProperties_From_OpenShiftCluster(&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_OpenShiftCluster_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 OpenShiftCluster via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftCluster, OpenShiftClusterGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftCluster runs a test to see if a specific instance of OpenShiftCluster round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftCluster(subject OpenShiftCluster) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftCluster + 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 OpenShiftCluster instances for property testing - lazily instantiated by OpenShiftClusterGenerator() +var openShiftClusterGenerator gopter.Gen + +// OpenShiftClusterGenerator returns a generator of OpenShiftCluster instances for property testing. +func OpenShiftClusterGenerator() gopter.Gen { + if openShiftClusterGenerator != nil { + return openShiftClusterGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForOpenShiftCluster(generators) + openShiftClusterGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster{}), generators) + + return openShiftClusterGenerator +} + +// AddRelatedPropertyGeneratorsForOpenShiftCluster is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftCluster(gens map[string]gopter.Gen) { + gens["Spec"] = OpenShiftCluster_SpecGenerator() + gens["Status"] = OpenShiftCluster_STATUSGenerator() +} + +func Test_OpenShiftCluster_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from OpenShiftCluster_STATUS to OpenShiftCluster_STATUS via AssignProperties_To_OpenShiftCluster_STATUS & AssignProperties_From_OpenShiftCluster_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForOpenShiftCluster_STATUS, OpenShiftCluster_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForOpenShiftCluster_STATUS tests if a specific instance of OpenShiftCluster_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForOpenShiftCluster_STATUS(subject OpenShiftCluster_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 storage.OpenShiftCluster_STATUS + err := copied.AssignProperties_To_OpenShiftCluster_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual OpenShiftCluster_STATUS + err = actual.AssignProperties_From_OpenShiftCluster_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_OpenShiftCluster_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 OpenShiftCluster_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftCluster_STATUS, OpenShiftCluster_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftCluster_STATUS runs a test to see if a specific instance of OpenShiftCluster_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftCluster_STATUS(subject OpenShiftCluster_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftCluster_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 OpenShiftCluster_STATUS instances for property testing - lazily instantiated by +// OpenShiftCluster_STATUSGenerator() +var openShiftCluster_STATUSGenerator gopter.Gen + +// OpenShiftCluster_STATUSGenerator returns a generator of OpenShiftCluster_STATUS instances for property testing. +// We first initialize openShiftCluster_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 OpenShiftCluster_STATUSGenerator() gopter.Gen { + if openShiftCluster_STATUSGenerator != nil { + return openShiftCluster_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS(generators) + openShiftCluster_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS(generators) + AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS(generators) + openShiftCluster_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_STATUS{}), generators) + + return openShiftCluster_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["ProvisioningState"] = gen.PtrOf(gen.OneConstOf( + ProvisioningState_STATUS_AdminUpdating, + ProvisioningState_STATUS_Canceled, + ProvisioningState_STATUS_Creating, + ProvisioningState_STATUS_Deleting, + ProvisioningState_STATUS_Failed, + ProvisioningState_STATUS_Succeeded, + ProvisioningState_STATUS_Updating)) + gens["Tags"] = gen.MapOf( + gen.AlphaString(), + gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS(gens map[string]gopter.Gen) { + gens["ApiserverProfile"] = gen.PtrOf(APIServerProfile_STATUSGenerator()) + gens["ClusterProfile"] = gen.PtrOf(ClusterProfile_STATUSGenerator()) + gens["ConsoleProfile"] = gen.PtrOf(ConsoleProfile_STATUSGenerator()) + gens["IngressProfiles"] = gen.SliceOf(IngressProfile_STATUSGenerator()) + gens["MasterProfile"] = gen.PtrOf(MasterProfile_STATUSGenerator()) + gens["NetworkProfile"] = gen.PtrOf(NetworkProfile_STATUSGenerator()) + gens["ServicePrincipalProfile"] = gen.PtrOf(ServicePrincipalProfile_STATUSGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) + gens["WorkerProfiles"] = gen.SliceOf(WorkerProfile_STATUSGenerator()) + gens["WorkerProfilesStatus"] = gen.SliceOf(WorkerProfile_STATUSGenerator()) +} + +func Test_OpenShiftCluster_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from OpenShiftCluster_Spec to OpenShiftCluster_Spec via AssignProperties_To_OpenShiftCluster_Spec & AssignProperties_From_OpenShiftCluster_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForOpenShiftCluster_Spec, OpenShiftCluster_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForOpenShiftCluster_Spec tests if a specific instance of OpenShiftCluster_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForOpenShiftCluster_Spec(subject OpenShiftCluster_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 storage.OpenShiftCluster_Spec + err := copied.AssignProperties_To_OpenShiftCluster_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual OpenShiftCluster_Spec + err = actual.AssignProperties_From_OpenShiftCluster_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_OpenShiftCluster_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 OpenShiftCluster_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftCluster_Spec, OpenShiftCluster_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftCluster_Spec runs a test to see if a specific instance of OpenShiftCluster_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftCluster_Spec(subject OpenShiftCluster_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftCluster_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 OpenShiftCluster_Spec instances for property testing - lazily instantiated by +// OpenShiftCluster_SpecGenerator() +var openShiftCluster_SpecGenerator gopter.Gen + +// OpenShiftCluster_SpecGenerator returns a generator of OpenShiftCluster_Spec instances for property testing. +// We first initialize openShiftCluster_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 OpenShiftCluster_SpecGenerator() gopter.Gen { + if openShiftCluster_SpecGenerator != nil { + return openShiftCluster_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec(generators) + openShiftCluster_SpecGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_Spec{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec(generators) + AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec(generators) + openShiftCluster_SpecGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_Spec{}), generators) + + return openShiftCluster_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["Tags"] = gen.MapOf( + gen.AlphaString(), + gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec(gens map[string]gopter.Gen) { + gens["ApiserverProfile"] = gen.PtrOf(APIServerProfileGenerator()) + gens["ClusterProfile"] = gen.PtrOf(ClusterProfileGenerator()) + gens["IngressProfiles"] = gen.SliceOf(IngressProfileGenerator()) + gens["MasterProfile"] = gen.PtrOf(MasterProfileGenerator()) + gens["NetworkProfile"] = gen.PtrOf(NetworkProfileGenerator()) + gens["ServicePrincipalProfile"] = gen.PtrOf(ServicePrincipalProfileGenerator()) + gens["WorkerProfiles"] = gen.SliceOf(WorkerProfileGenerator()) +} + +func Test_ServicePrincipalProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from ServicePrincipalProfile to ServicePrincipalProfile via AssignProperties_To_ServicePrincipalProfile & AssignProperties_From_ServicePrincipalProfile returns original", + prop.ForAll(RunPropertyAssignmentTestForServicePrincipalProfile, ServicePrincipalProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForServicePrincipalProfile tests if a specific instance of ServicePrincipalProfile can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForServicePrincipalProfile(subject ServicePrincipalProfile) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.ServicePrincipalProfile + err := copied.AssignProperties_To_ServicePrincipalProfile(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual ServicePrincipalProfile + err = actual.AssignProperties_From_ServicePrincipalProfile(&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_ServicePrincipalProfile_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 ServicePrincipalProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForServicePrincipalProfile, ServicePrincipalProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForServicePrincipalProfile runs a test to see if a specific instance of ServicePrincipalProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForServicePrincipalProfile(subject ServicePrincipalProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ServicePrincipalProfile + 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 ServicePrincipalProfile instances for property testing - lazily instantiated by +// ServicePrincipalProfileGenerator() +var servicePrincipalProfileGenerator gopter.Gen + +// ServicePrincipalProfileGenerator returns a generator of ServicePrincipalProfile instances for property testing. +func ServicePrincipalProfileGenerator() gopter.Gen { + if servicePrincipalProfileGenerator != nil { + return servicePrincipalProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServicePrincipalProfile(generators) + servicePrincipalProfileGenerator = gen.Struct(reflect.TypeOf(ServicePrincipalProfile{}), generators) + + return servicePrincipalProfileGenerator +} + +// AddIndependentPropertyGeneratorsForServicePrincipalProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForServicePrincipalProfile(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_ServicePrincipalProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from ServicePrincipalProfile_STATUS to ServicePrincipalProfile_STATUS via AssignProperties_To_ServicePrincipalProfile_STATUS & AssignProperties_From_ServicePrincipalProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForServicePrincipalProfile_STATUS, ServicePrincipalProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForServicePrincipalProfile_STATUS tests if a specific instance of ServicePrincipalProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForServicePrincipalProfile_STATUS(subject ServicePrincipalProfile_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 storage.ServicePrincipalProfile_STATUS + err := copied.AssignProperties_To_ServicePrincipalProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual ServicePrincipalProfile_STATUS + err = actual.AssignProperties_From_ServicePrincipalProfile_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_ServicePrincipalProfile_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 ServicePrincipalProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForServicePrincipalProfile_STATUS, ServicePrincipalProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForServicePrincipalProfile_STATUS runs a test to see if a specific instance of ServicePrincipalProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForServicePrincipalProfile_STATUS(subject ServicePrincipalProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ServicePrincipalProfile_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 ServicePrincipalProfile_STATUS instances for property testing - lazily instantiated by +// ServicePrincipalProfile_STATUSGenerator() +var servicePrincipalProfile_STATUSGenerator gopter.Gen + +// ServicePrincipalProfile_STATUSGenerator returns a generator of ServicePrincipalProfile_STATUS instances for property testing. +func ServicePrincipalProfile_STATUSGenerator() gopter.Gen { + if servicePrincipalProfile_STATUSGenerator != nil { + return servicePrincipalProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS(generators) + servicePrincipalProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(ServicePrincipalProfile_STATUS{}), generators) + + return servicePrincipalProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_SystemData_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from SystemData_STATUS to SystemData_STATUS via AssignProperties_To_SystemData_STATUS & AssignProperties_From_SystemData_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForSystemData_STATUS, SystemData_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForSystemData_STATUS tests if a specific instance of SystemData_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForSystemData_STATUS(subject SystemData_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 storage.SystemData_STATUS + err := copied.AssignProperties_To_SystemData_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual SystemData_STATUS + err = actual.AssignProperties_From_SystemData_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_SystemData_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 SystemData_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSystemData_STATUS, SystemData_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSystemData_STATUS runs a test to see if a specific instance of SystemData_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForSystemData_STATUS(subject SystemData_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual SystemData_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 SystemData_STATUS instances for property testing - lazily instantiated by SystemData_STATUSGenerator() +var systemData_STATUSGenerator gopter.Gen + +// SystemData_STATUSGenerator returns a generator of SystemData_STATUS instances for property testing. +func SystemData_STATUSGenerator() gopter.Gen { + if systemData_STATUSGenerator != nil { + return systemData_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSystemData_STATUS(generators) + systemData_STATUSGenerator = gen.Struct(reflect.TypeOf(SystemData_STATUS{}), generators) + + return systemData_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForSystemData_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSystemData_STATUS(gens map[string]gopter.Gen) { + gens["CreatedAt"] = gen.PtrOf(gen.AlphaString()) + gens["CreatedBy"] = gen.PtrOf(gen.AlphaString()) + gens["CreatedByType"] = gen.PtrOf(gen.OneConstOf( + SystemData_CreatedByType_STATUS_Application, + SystemData_CreatedByType_STATUS_Key, + SystemData_CreatedByType_STATUS_ManagedIdentity, + SystemData_CreatedByType_STATUS_User)) + gens["LastModifiedAt"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedBy"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedByType"] = gen.PtrOf(gen.OneConstOf( + SystemData_LastModifiedByType_STATUS_Application, + SystemData_LastModifiedByType_STATUS_Key, + SystemData_LastModifiedByType_STATUS_ManagedIdentity, + SystemData_LastModifiedByType_STATUS_User)) +} + +func Test_WorkerProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from WorkerProfile to WorkerProfile via AssignProperties_To_WorkerProfile & AssignProperties_From_WorkerProfile returns original", + prop.ForAll(RunPropertyAssignmentTestForWorkerProfile, WorkerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForWorkerProfile tests if a specific instance of WorkerProfile can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForWorkerProfile(subject WorkerProfile) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other storage.WorkerProfile + err := copied.AssignProperties_To_WorkerProfile(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual WorkerProfile + err = actual.AssignProperties_From_WorkerProfile(&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_WorkerProfile_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 WorkerProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForWorkerProfile, WorkerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForWorkerProfile runs a test to see if a specific instance of WorkerProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForWorkerProfile(subject WorkerProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual WorkerProfile + 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 WorkerProfile instances for property testing - lazily instantiated by WorkerProfileGenerator() +var workerProfileGenerator gopter.Gen + +// WorkerProfileGenerator returns a generator of WorkerProfile instances for property testing. +func WorkerProfileGenerator() gopter.Gen { + if workerProfileGenerator != nil { + return workerProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForWorkerProfile(generators) + workerProfileGenerator = gen.Struct(reflect.TypeOf(WorkerProfile{}), generators) + + return workerProfileGenerator +} + +// AddIndependentPropertyGeneratorsForWorkerProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForWorkerProfile(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) + gens["DiskSizeGB"] = gen.PtrOf(gen.Int()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.OneConstOf(EncryptionAtHost_Disabled, EncryptionAtHost_Enabled)) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_WorkerProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from WorkerProfile_STATUS to WorkerProfile_STATUS via AssignProperties_To_WorkerProfile_STATUS & AssignProperties_From_WorkerProfile_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForWorkerProfile_STATUS, WorkerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForWorkerProfile_STATUS tests if a specific instance of WorkerProfile_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForWorkerProfile_STATUS(subject WorkerProfile_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 storage.WorkerProfile_STATUS + err := copied.AssignProperties_To_WorkerProfile_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual WorkerProfile_STATUS + err = actual.AssignProperties_From_WorkerProfile_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_WorkerProfile_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 WorkerProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForWorkerProfile_STATUS, WorkerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForWorkerProfile_STATUS runs a test to see if a specific instance of WorkerProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForWorkerProfile_STATUS(subject WorkerProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual WorkerProfile_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 WorkerProfile_STATUS instances for property testing - lazily instantiated by +// WorkerProfile_STATUSGenerator() +var workerProfile_STATUSGenerator gopter.Gen + +// WorkerProfile_STATUSGenerator returns a generator of WorkerProfile_STATUS instances for property testing. +func WorkerProfile_STATUSGenerator() gopter.Gen { + if workerProfile_STATUSGenerator != nil { + return workerProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForWorkerProfile_STATUS(generators) + workerProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(WorkerProfile_STATUS{}), generators) + + return workerProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForWorkerProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForWorkerProfile_STATUS(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) + gens["DiskEncryptionSetId"] = gen.PtrOf(gen.AlphaString()) + gens["DiskSizeGB"] = gen.PtrOf(gen.Int()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.OneConstOf(EncryptionAtHost_STATUS_Disabled, EncryptionAtHost_STATUS_Enabled)) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["SubnetId"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/redhatopenshift/v1api20231122/storage/groupversion_info_gen.go b/v2/api/redhatopenshift/v1api20231122/storage/groupversion_info_gen.go new file mode 100644 index 00000000000..554b3312fa4 --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/storage/groupversion_info_gen.go @@ -0,0 +1,32 @@ +/* +Copyright (c) Microsoft Corporation. +Licensed under the MIT license. +*/ + +// Code generated by azure-service-operator-codegen. DO NOT EDIT. + +// Package storage contains API Schema definitions for the redhatopenshift storage API group +// +kubebuilder:object:generate=true +// All object properties are optional by default, this will be overridden when needed: +// +kubebuilder:validation:Optional +// +groupName=redhatopenshift.azure.com +// +versionName=v1api20231122storage +package storage + +import ( + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/scheme" +) + +var ( + // GroupVersion is group version used to register these objects + GroupVersion = schema.GroupVersion{Group: "redhatopenshift.azure.com", Version: "v1api20231122storage"} + + // SchemeBuilder is used to add go types to the GroupVersionKind scheme + SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} + + // AddToScheme adds the types in this group-version to the given scheme. + AddToScheme = SchemeBuilder.AddToScheme + + localSchemeBuilder = SchemeBuilder.SchemeBuilder +) diff --git a/v2/api/redhatopenshift/v1api20231122/storage/open_shift_cluster_types_gen.go b/v2/api/redhatopenshift/v1api20231122/storage/open_shift_cluster_types_gen.go new file mode 100644 index 00000000000..81487a13ae9 --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/storage/open_shift_cluster_types_gen.go @@ -0,0 +1,437 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +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=redhatopenshift.azure.com,resources=openshiftclusters,verbs=get;list;watch;create;update;patch;delete +// +kubebuilder:rbac:groups=redhatopenshift.azure.com,resources={openshiftclusters/status,openshiftclusters/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 v1api20231122.OpenShiftCluster +// Generator information: +// - Generated from: /redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/openshiftclusters/stable/2023-11-22/redhatopenshift.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters/{resourceName} +type OpenShiftCluster struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec OpenShiftCluster_Spec `json:"spec,omitempty"` + Status OpenShiftCluster_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &OpenShiftCluster{} + +// GetConditions returns the conditions of the resource +func (cluster *OpenShiftCluster) GetConditions() conditions.Conditions { + return cluster.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (cluster *OpenShiftCluster) SetConditions(conditions conditions.Conditions) { + cluster.Status.Conditions = conditions +} + +var _ genruntime.KubernetesResource = &OpenShiftCluster{} + +// AzureName returns the Azure name of the resource +func (cluster *OpenShiftCluster) AzureName() string { + return cluster.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-11-22" +func (cluster OpenShiftCluster) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (cluster *OpenShiftCluster) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (cluster *OpenShiftCluster) GetSpec() genruntime.ConvertibleSpec { + return &cluster.Spec +} + +// GetStatus returns the status of this resource +func (cluster *OpenShiftCluster) GetStatus() genruntime.ConvertibleStatus { + return &cluster.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (cluster *OpenShiftCluster) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationDelete, + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.RedHatOpenShift/openShiftClusters" +func (cluster *OpenShiftCluster) GetType() string { + return "Microsoft.RedHatOpenShift/openShiftClusters" +} + +// NewEmptyStatus returns a new empty (blank) status +func (cluster *OpenShiftCluster) NewEmptyStatus() genruntime.ConvertibleStatus { + return &OpenShiftCluster_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (cluster *OpenShiftCluster) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(cluster.Spec) + return cluster.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (cluster *OpenShiftCluster) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*OpenShiftCluster_STATUS); ok { + cluster.Status = *st + return nil + } + + // Convert status to required version + var st OpenShiftCluster_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + cluster.Status = st + return nil +} + +// Hub marks that this OpenShiftCluster is the hub type for conversion +func (cluster *OpenShiftCluster) Hub() {} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (cluster *OpenShiftCluster) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: cluster.Spec.OriginalVersion, + Kind: "OpenShiftCluster", + } +} + +// +kubebuilder:object:root=true +// Storage version of v1api20231122.OpenShiftCluster +// Generator information: +// - Generated from: /redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/openshiftclusters/stable/2023-11-22/redhatopenshift.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters/{resourceName} +type OpenShiftClusterList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []OpenShiftCluster `json:"items"` +} + +// Storage version of v1api20231122.APIVersion +// +kubebuilder:validation:Enum={"2023-11-22"} +type APIVersion string + +const APIVersion_Value = APIVersion("2023-11-22") + +// Storage version of v1api20231122.OpenShiftCluster_Spec +type OpenShiftCluster_Spec struct { + ApiserverProfile *APIServerProfile `json:"apiserverProfile,omitempty"` + + // 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"` + ClusterProfile *ClusterProfile `json:"clusterProfile,omitempty"` + IngressProfiles []IngressProfile `json:"ingressProfiles,omitempty"` + Location *string `json:"location,omitempty"` + MasterProfile *MasterProfile `json:"masterProfile,omitempty"` + NetworkProfile *NetworkProfile `json:"networkProfile,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 resources.azure.com/ResourceGroup resource + Owner *genruntime.KnownResourceReference `group:"resources.azure.com" json:"owner,omitempty" kind:"ResourceGroup"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ServicePrincipalProfile *ServicePrincipalProfile `json:"servicePrincipalProfile,omitempty"` + Tags map[string]string `json:"tags,omitempty"` + WorkerProfiles []WorkerProfile `json:"workerProfiles,omitempty"` +} + +var _ genruntime.ConvertibleSpec = &OpenShiftCluster_Spec{} + +// ConvertSpecFrom populates our OpenShiftCluster_Spec from the provided source +func (cluster *OpenShiftCluster_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + if source == cluster { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec") + } + + return source.ConvertSpecTo(cluster) +} + +// ConvertSpecTo populates the provided destination from our OpenShiftCluster_Spec +func (cluster *OpenShiftCluster_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + if destination == cluster { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec") + } + + return destination.ConvertSpecFrom(cluster) +} + +// Storage version of v1api20231122.OpenShiftCluster_STATUS +// OpenShiftCluster represents an Azure Red Hat OpenShift cluster. +type OpenShiftCluster_STATUS struct { + ApiserverProfile *APIServerProfile_STATUS `json:"apiserverProfile,omitempty"` + ClusterProfile *ClusterProfile_STATUS `json:"clusterProfile,omitempty"` + Conditions []conditions.Condition `json:"conditions,omitempty"` + ConsoleProfile *ConsoleProfile_STATUS `json:"consoleProfile,omitempty"` + Id *string `json:"id,omitempty"` + IngressProfiles []IngressProfile_STATUS `json:"ingressProfiles,omitempty"` + Location *string `json:"location,omitempty"` + MasterProfile *MasterProfile_STATUS `json:"masterProfile,omitempty"` + Name *string `json:"name,omitempty"` + NetworkProfile *NetworkProfile_STATUS `json:"networkProfile,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ProvisioningState *string `json:"provisioningState,omitempty"` + ServicePrincipalProfile *ServicePrincipalProfile_STATUS `json:"servicePrincipalProfile,omitempty"` + SystemData *SystemData_STATUS `json:"systemData,omitempty"` + Tags map[string]string `json:"tags,omitempty"` + Type *string `json:"type,omitempty"` + WorkerProfiles []WorkerProfile_STATUS `json:"workerProfiles,omitempty"` + WorkerProfilesStatus []WorkerProfile_STATUS `json:"workerProfilesStatus,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &OpenShiftCluster_STATUS{} + +// ConvertStatusFrom populates our OpenShiftCluster_STATUS from the provided source +func (cluster *OpenShiftCluster_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + if source == cluster { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus") + } + + return source.ConvertStatusTo(cluster) +} + +// ConvertStatusTo populates the provided destination from our OpenShiftCluster_STATUS +func (cluster *OpenShiftCluster_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + if destination == cluster { + return errors.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus") + } + + return destination.ConvertStatusFrom(cluster) +} + +// Storage version of v1api20231122.APIServerProfile +// APIServerProfile represents an API server profile. +type APIServerProfile struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Visibility *string `json:"visibility,omitempty"` +} + +// Storage version of v1api20231122.APIServerProfile_STATUS +// APIServerProfile represents an API server profile. +type APIServerProfile_STATUS struct { + Ip *string `json:"ip,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Url *string `json:"url,omitempty"` + Visibility *string `json:"visibility,omitempty"` +} + +// Storage version of v1api20231122.ClusterProfile +// ClusterProfile represents a cluster profile. +type ClusterProfile struct { + Domain *string `json:"domain,omitempty"` + FipsValidatedModules *string `json:"fipsValidatedModules,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + PullSecret *genruntime.SecretReference `json:"pullSecret,omitempty"` + ResourceGroupId *string `json:"resourceGroupId,omitempty"` + Version *string `json:"version,omitempty"` +} + +// Storage version of v1api20231122.ClusterProfile_STATUS +// ClusterProfile represents a cluster profile. +type ClusterProfile_STATUS struct { + Domain *string `json:"domain,omitempty"` + FipsValidatedModules *string `json:"fipsValidatedModules,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ResourceGroupId *string `json:"resourceGroupId,omitempty"` + Version *string `json:"version,omitempty"` +} + +// Storage version of v1api20231122.ConsoleProfile_STATUS +// ConsoleProfile represents a console profile. +type ConsoleProfile_STATUS struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Url *string `json:"url,omitempty"` +} + +// Storage version of v1api20231122.IngressProfile +// IngressProfile represents an ingress profile. +type IngressProfile struct { + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Visibility *string `json:"visibility,omitempty"` +} + +// Storage version of v1api20231122.IngressProfile_STATUS +// IngressProfile represents an ingress profile. +type IngressProfile_STATUS struct { + Ip *string `json:"ip,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Visibility *string `json:"visibility,omitempty"` +} + +// Storage version of v1api20231122.MasterProfile +// MasterProfile represents a master profile. +type MasterProfile struct { + // DiskEncryptionSetReference: The resource ID of an associated DiskEncryptionSet, if applicable. + DiskEncryptionSetReference *genruntime.ResourceReference `armReference:"DiskEncryptionSetId" json:"diskEncryptionSetReference,omitempty"` + EncryptionAtHost *string `json:"encryptionAtHost,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + + // SubnetReference: The Azure resource ID of the master subnet. + SubnetReference *genruntime.ResourceReference `armReference:"SubnetId" json:"subnetReference,omitempty"` + VmSize *string `json:"vmSize,omitempty"` +} + +// Storage version of v1api20231122.MasterProfile_STATUS +// MasterProfile represents a master profile. +type MasterProfile_STATUS struct { + DiskEncryptionSetId *string `json:"diskEncryptionSetId,omitempty"` + EncryptionAtHost *string `json:"encryptionAtHost,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + SubnetId *string `json:"subnetId,omitempty"` + VmSize *string `json:"vmSize,omitempty"` +} + +// Storage version of v1api20231122.NetworkProfile +// NetworkProfile represents a network profile. +type NetworkProfile struct { + LoadBalancerProfile *LoadBalancerProfile `json:"loadBalancerProfile,omitempty"` + OutboundType *string `json:"outboundType,omitempty"` + PodCidr *string `json:"podCidr,omitempty"` + PreconfiguredNSG *string `json:"preconfiguredNSG,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ServiceCidr *string `json:"serviceCidr,omitempty"` +} + +// Storage version of v1api20231122.NetworkProfile_STATUS +// NetworkProfile represents a network profile. +type NetworkProfile_STATUS struct { + LoadBalancerProfile *LoadBalancerProfile_STATUS `json:"loadBalancerProfile,omitempty"` + OutboundType *string `json:"outboundType,omitempty"` + PodCidr *string `json:"podCidr,omitempty"` + PreconfiguredNSG *string `json:"preconfiguredNSG,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ServiceCidr *string `json:"serviceCidr,omitempty"` +} + +// Storage version of v1api20231122.ServicePrincipalProfile +// ServicePrincipalProfile represents a service principal profile. +type ServicePrincipalProfile struct { + ClientId *string `json:"clientId,omitempty" optionalConfigMapPair:"ClientId"` + ClientIdFromConfig *genruntime.ConfigMapReference `json:"clientIdFromConfig,omitempty" optionalConfigMapPair:"ClientId"` + ClientSecret *genruntime.SecretReference `json:"clientSecret,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20231122.ServicePrincipalProfile_STATUS +// ServicePrincipalProfile represents a service principal profile. +type ServicePrincipalProfile_STATUS struct { + ClientId *string `json:"clientId,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20231122.SystemData_STATUS +// Metadata pertaining to creation and last modification of the resource. +type SystemData_STATUS struct { + CreatedAt *string `json:"createdAt,omitempty"` + CreatedBy *string `json:"createdBy,omitempty"` + CreatedByType *string `json:"createdByType,omitempty"` + LastModifiedAt *string `json:"lastModifiedAt,omitempty"` + LastModifiedBy *string `json:"lastModifiedBy,omitempty"` + LastModifiedByType *string `json:"lastModifiedByType,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20231122.WorkerProfile +// WorkerProfile represents a worker profile. +type WorkerProfile struct { + Count *int `json:"count,omitempty"` + + // DiskEncryptionSetReference: The resource ID of an associated DiskEncryptionSet, if applicable. + DiskEncryptionSetReference *genruntime.ResourceReference `armReference:"DiskEncryptionSetId" json:"diskEncryptionSetReference,omitempty"` + DiskSizeGB *int `json:"diskSizeGB,omitempty"` + EncryptionAtHost *string `json:"encryptionAtHost,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + + // SubnetReference: The Azure resource ID of the worker subnet. + SubnetReference *genruntime.ResourceReference `armReference:"SubnetId" json:"subnetReference,omitempty"` + VmSize *string `json:"vmSize,omitempty"` +} + +// Storage version of v1api20231122.WorkerProfile_STATUS +// WorkerProfile represents a worker profile. +type WorkerProfile_STATUS struct { + Count *int `json:"count,omitempty"` + DiskEncryptionSetId *string `json:"diskEncryptionSetId,omitempty"` + DiskSizeGB *int `json:"diskSizeGB,omitempty"` + EncryptionAtHost *string `json:"encryptionAtHost,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + SubnetId *string `json:"subnetId,omitempty"` + VmSize *string `json:"vmSize,omitempty"` +} + +// Storage version of v1api20231122.LoadBalancerProfile +// LoadBalancerProfile represents the profile of the cluster public load balancer. +type LoadBalancerProfile struct { + ManagedOutboundIps *ManagedOutboundIPs `json:"managedOutboundIps,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20231122.LoadBalancerProfile_STATUS +// LoadBalancerProfile represents the profile of the cluster public load balancer. +type LoadBalancerProfile_STATUS struct { + EffectiveOutboundIps []EffectiveOutboundIP_STATUS `json:"effectiveOutboundIps,omitempty"` + ManagedOutboundIps *ManagedOutboundIPs_STATUS `json:"managedOutboundIps,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20231122.EffectiveOutboundIP_STATUS +// EffectiveOutboundIP represents an effective outbound IP resource of the cluster public load balancer. +type EffectiveOutboundIP_STATUS struct { + Id *string `json:"id,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20231122.ManagedOutboundIPs +// ManagedOutboundIPs represents the desired managed outbound IPs for the cluster public load balancer. +type ManagedOutboundIPs struct { + Count *int `json:"count,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20231122.ManagedOutboundIPs_STATUS +// ManagedOutboundIPs represents the desired managed outbound IPs for the cluster public load balancer. +type ManagedOutboundIPs_STATUS struct { + Count *int `json:"count,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +func init() { + SchemeBuilder.Register(&OpenShiftCluster{}, &OpenShiftClusterList{}) +} diff --git a/v2/api/redhatopenshift/v1api20231122/storage/open_shift_cluster_types_gen_test.go b/v2/api/redhatopenshift/v1api20231122/storage/open_shift_cluster_types_gen_test.go new file mode 100644 index 00000000000..d17eabf55ac --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/storage/open_shift_cluster_types_gen_test.go @@ -0,0 +1,1594 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +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_APIServerProfile_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 APIServerProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForAPIServerProfile, APIServerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForAPIServerProfile runs a test to see if a specific instance of APIServerProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForAPIServerProfile(subject APIServerProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual APIServerProfile + 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 APIServerProfile instances for property testing - lazily instantiated by APIServerProfileGenerator() +var apiServerProfileGenerator gopter.Gen + +// APIServerProfileGenerator returns a generator of APIServerProfile instances for property testing. +func APIServerProfileGenerator() gopter.Gen { + if apiServerProfileGenerator != nil { + return apiServerProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForAPIServerProfile(generators) + apiServerProfileGenerator = gen.Struct(reflect.TypeOf(APIServerProfile{}), generators) + + return apiServerProfileGenerator +} + +// AddIndependentPropertyGeneratorsForAPIServerProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAPIServerProfile(gens map[string]gopter.Gen) { + gens["Visibility"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_APIServerProfile_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 APIServerProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForAPIServerProfile_STATUS, APIServerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForAPIServerProfile_STATUS runs a test to see if a specific instance of APIServerProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForAPIServerProfile_STATUS(subject APIServerProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual APIServerProfile_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 APIServerProfile_STATUS instances for property testing - lazily instantiated by +// APIServerProfile_STATUSGenerator() +var apiServerProfile_STATUSGenerator gopter.Gen + +// APIServerProfile_STATUSGenerator returns a generator of APIServerProfile_STATUS instances for property testing. +func APIServerProfile_STATUSGenerator() gopter.Gen { + if apiServerProfile_STATUSGenerator != nil { + return apiServerProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS(generators) + apiServerProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(APIServerProfile_STATUS{}), generators) + + return apiServerProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAPIServerProfile_STATUS(gens map[string]gopter.Gen) { + gens["Ip"] = gen.PtrOf(gen.AlphaString()) + gens["Url"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_ClusterProfile_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 ClusterProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForClusterProfile, ClusterProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForClusterProfile runs a test to see if a specific instance of ClusterProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForClusterProfile(subject ClusterProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ClusterProfile + 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 ClusterProfile instances for property testing - lazily instantiated by ClusterProfileGenerator() +var clusterProfileGenerator gopter.Gen + +// ClusterProfileGenerator returns a generator of ClusterProfile instances for property testing. +func ClusterProfileGenerator() gopter.Gen { + if clusterProfileGenerator != nil { + return clusterProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForClusterProfile(generators) + clusterProfileGenerator = gen.Struct(reflect.TypeOf(ClusterProfile{}), generators) + + return clusterProfileGenerator +} + +// AddIndependentPropertyGeneratorsForClusterProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForClusterProfile(gens map[string]gopter.Gen) { + gens["Domain"] = gen.PtrOf(gen.AlphaString()) + gens["FipsValidatedModules"] = gen.PtrOf(gen.AlphaString()) + gens["ResourceGroupId"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_ClusterProfile_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 ClusterProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForClusterProfile_STATUS, ClusterProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForClusterProfile_STATUS runs a test to see if a specific instance of ClusterProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForClusterProfile_STATUS(subject ClusterProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ClusterProfile_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 ClusterProfile_STATUS instances for property testing - lazily instantiated by +// ClusterProfile_STATUSGenerator() +var clusterProfile_STATUSGenerator gopter.Gen + +// ClusterProfile_STATUSGenerator returns a generator of ClusterProfile_STATUS instances for property testing. +func ClusterProfile_STATUSGenerator() gopter.Gen { + if clusterProfile_STATUSGenerator != nil { + return clusterProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForClusterProfile_STATUS(generators) + clusterProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(ClusterProfile_STATUS{}), generators) + + return clusterProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForClusterProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForClusterProfile_STATUS(gens map[string]gopter.Gen) { + gens["Domain"] = gen.PtrOf(gen.AlphaString()) + gens["FipsValidatedModules"] = gen.PtrOf(gen.AlphaString()) + gens["ResourceGroupId"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_ConsoleProfile_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 ConsoleProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForConsoleProfile_STATUS, ConsoleProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForConsoleProfile_STATUS runs a test to see if a specific instance of ConsoleProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForConsoleProfile_STATUS(subject ConsoleProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ConsoleProfile_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 ConsoleProfile_STATUS instances for property testing - lazily instantiated by +// ConsoleProfile_STATUSGenerator() +var consoleProfile_STATUSGenerator gopter.Gen + +// ConsoleProfile_STATUSGenerator returns a generator of ConsoleProfile_STATUS instances for property testing. +func ConsoleProfile_STATUSGenerator() gopter.Gen { + if consoleProfile_STATUSGenerator != nil { + return consoleProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForConsoleProfile_STATUS(generators) + consoleProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(ConsoleProfile_STATUS{}), generators) + + return consoleProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForConsoleProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForConsoleProfile_STATUS(gens map[string]gopter.Gen) { + gens["Url"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_EffectiveOutboundIP_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 EffectiveOutboundIP_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForEffectiveOutboundIP_STATUS, EffectiveOutboundIP_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForEffectiveOutboundIP_STATUS runs a test to see if a specific instance of EffectiveOutboundIP_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForEffectiveOutboundIP_STATUS(subject EffectiveOutboundIP_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual EffectiveOutboundIP_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 EffectiveOutboundIP_STATUS instances for property testing - lazily instantiated by +// EffectiveOutboundIP_STATUSGenerator() +var effectiveOutboundIP_STATUSGenerator gopter.Gen + +// EffectiveOutboundIP_STATUSGenerator returns a generator of EffectiveOutboundIP_STATUS instances for property testing. +func EffectiveOutboundIP_STATUSGenerator() gopter.Gen { + if effectiveOutboundIP_STATUSGenerator != nil { + return effectiveOutboundIP_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS(generators) + effectiveOutboundIP_STATUSGenerator = gen.Struct(reflect.TypeOf(EffectiveOutboundIP_STATUS{}), generators) + + return effectiveOutboundIP_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForEffectiveOutboundIP_STATUS(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_IngressProfile_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 IngressProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForIngressProfile, IngressProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForIngressProfile runs a test to see if a specific instance of IngressProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForIngressProfile(subject IngressProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual IngressProfile + 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 IngressProfile instances for property testing - lazily instantiated by IngressProfileGenerator() +var ingressProfileGenerator gopter.Gen + +// IngressProfileGenerator returns a generator of IngressProfile instances for property testing. +func IngressProfileGenerator() gopter.Gen { + if ingressProfileGenerator != nil { + return ingressProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForIngressProfile(generators) + ingressProfileGenerator = gen.Struct(reflect.TypeOf(IngressProfile{}), generators) + + return ingressProfileGenerator +} + +// AddIndependentPropertyGeneratorsForIngressProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForIngressProfile(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_IngressProfile_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 IngressProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForIngressProfile_STATUS, IngressProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForIngressProfile_STATUS runs a test to see if a specific instance of IngressProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForIngressProfile_STATUS(subject IngressProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual IngressProfile_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 IngressProfile_STATUS instances for property testing - lazily instantiated by +// IngressProfile_STATUSGenerator() +var ingressProfile_STATUSGenerator gopter.Gen + +// IngressProfile_STATUSGenerator returns a generator of IngressProfile_STATUS instances for property testing. +func IngressProfile_STATUSGenerator() gopter.Gen { + if ingressProfile_STATUSGenerator != nil { + return ingressProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForIngressProfile_STATUS(generators) + ingressProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(IngressProfile_STATUS{}), generators) + + return ingressProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForIngressProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForIngressProfile_STATUS(gens map[string]gopter.Gen) { + gens["Ip"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Visibility"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_LoadBalancerProfile_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 LoadBalancerProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForLoadBalancerProfile, LoadBalancerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForLoadBalancerProfile runs a test to see if a specific instance of LoadBalancerProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForLoadBalancerProfile(subject LoadBalancerProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual LoadBalancerProfile + 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 LoadBalancerProfile instances for property testing - lazily instantiated by +// LoadBalancerProfileGenerator() +var loadBalancerProfileGenerator gopter.Gen + +// LoadBalancerProfileGenerator returns a generator of LoadBalancerProfile instances for property testing. +func LoadBalancerProfileGenerator() gopter.Gen { + if loadBalancerProfileGenerator != nil { + return loadBalancerProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForLoadBalancerProfile(generators) + loadBalancerProfileGenerator = gen.Struct(reflect.TypeOf(LoadBalancerProfile{}), generators) + + return loadBalancerProfileGenerator +} + +// AddRelatedPropertyGeneratorsForLoadBalancerProfile is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForLoadBalancerProfile(gens map[string]gopter.Gen) { + gens["ManagedOutboundIps"] = gen.PtrOf(ManagedOutboundIPsGenerator()) +} + +func Test_LoadBalancerProfile_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 LoadBalancerProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForLoadBalancerProfile_STATUS, LoadBalancerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForLoadBalancerProfile_STATUS runs a test to see if a specific instance of LoadBalancerProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForLoadBalancerProfile_STATUS(subject LoadBalancerProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual LoadBalancerProfile_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 LoadBalancerProfile_STATUS instances for property testing - lazily instantiated by +// LoadBalancerProfile_STATUSGenerator() +var loadBalancerProfile_STATUSGenerator gopter.Gen + +// LoadBalancerProfile_STATUSGenerator returns a generator of LoadBalancerProfile_STATUS instances for property testing. +func LoadBalancerProfile_STATUSGenerator() gopter.Gen { + if loadBalancerProfile_STATUSGenerator != nil { + return loadBalancerProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS(generators) + loadBalancerProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(LoadBalancerProfile_STATUS{}), generators) + + return loadBalancerProfile_STATUSGenerator +} + +// AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForLoadBalancerProfile_STATUS(gens map[string]gopter.Gen) { + gens["EffectiveOutboundIps"] = gen.SliceOf(EffectiveOutboundIP_STATUSGenerator()) + gens["ManagedOutboundIps"] = gen.PtrOf(ManagedOutboundIPs_STATUSGenerator()) +} + +func Test_ManagedOutboundIPs_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 ManagedOutboundIPs via JSON returns original", + prop.ForAll(RunJSONSerializationTestForManagedOutboundIPs, ManagedOutboundIPsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForManagedOutboundIPs runs a test to see if a specific instance of ManagedOutboundIPs round trips to JSON and back losslessly +func RunJSONSerializationTestForManagedOutboundIPs(subject ManagedOutboundIPs) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ManagedOutboundIPs + 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 ManagedOutboundIPs instances for property testing - lazily instantiated by ManagedOutboundIPsGenerator() +var managedOutboundIPsGenerator gopter.Gen + +// ManagedOutboundIPsGenerator returns a generator of ManagedOutboundIPs instances for property testing. +func ManagedOutboundIPsGenerator() gopter.Gen { + if managedOutboundIPsGenerator != nil { + return managedOutboundIPsGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForManagedOutboundIPs(generators) + managedOutboundIPsGenerator = gen.Struct(reflect.TypeOf(ManagedOutboundIPs{}), generators) + + return managedOutboundIPsGenerator +} + +// AddIndependentPropertyGeneratorsForManagedOutboundIPs is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForManagedOutboundIPs(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) +} + +func Test_ManagedOutboundIPs_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 ManagedOutboundIPs_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForManagedOutboundIPs_STATUS, ManagedOutboundIPs_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForManagedOutboundIPs_STATUS runs a test to see if a specific instance of ManagedOutboundIPs_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForManagedOutboundIPs_STATUS(subject ManagedOutboundIPs_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ManagedOutboundIPs_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 ManagedOutboundIPs_STATUS instances for property testing - lazily instantiated by +// ManagedOutboundIPs_STATUSGenerator() +var managedOutboundIPs_STATUSGenerator gopter.Gen + +// ManagedOutboundIPs_STATUSGenerator returns a generator of ManagedOutboundIPs_STATUS instances for property testing. +func ManagedOutboundIPs_STATUSGenerator() gopter.Gen { + if managedOutboundIPs_STATUSGenerator != nil { + return managedOutboundIPs_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS(generators) + managedOutboundIPs_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedOutboundIPs_STATUS{}), generators) + + return managedOutboundIPs_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForManagedOutboundIPs_STATUS(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) +} + +func Test_MasterProfile_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 MasterProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMasterProfile, MasterProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMasterProfile runs a test to see if a specific instance of MasterProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForMasterProfile(subject MasterProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MasterProfile + 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 MasterProfile instances for property testing - lazily instantiated by MasterProfileGenerator() +var masterProfileGenerator gopter.Gen + +// MasterProfileGenerator returns a generator of MasterProfile instances for property testing. +func MasterProfileGenerator() gopter.Gen { + if masterProfileGenerator != nil { + return masterProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMasterProfile(generators) + masterProfileGenerator = gen.Struct(reflect.TypeOf(MasterProfile{}), generators) + + return masterProfileGenerator +} + +// AddIndependentPropertyGeneratorsForMasterProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMasterProfile(gens map[string]gopter.Gen) { + gens["EncryptionAtHost"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_MasterProfile_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 MasterProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMasterProfile_STATUS, MasterProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMasterProfile_STATUS runs a test to see if a specific instance of MasterProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForMasterProfile_STATUS(subject MasterProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MasterProfile_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 MasterProfile_STATUS instances for property testing - lazily instantiated by +// MasterProfile_STATUSGenerator() +var masterProfile_STATUSGenerator gopter.Gen + +// MasterProfile_STATUSGenerator returns a generator of MasterProfile_STATUS instances for property testing. +func MasterProfile_STATUSGenerator() gopter.Gen { + if masterProfile_STATUSGenerator != nil { + return masterProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMasterProfile_STATUS(generators) + masterProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(MasterProfile_STATUS{}), generators) + + return masterProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForMasterProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMasterProfile_STATUS(gens map[string]gopter.Gen) { + gens["DiskEncryptionSetId"] = gen.PtrOf(gen.AlphaString()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.AlphaString()) + gens["SubnetId"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_NetworkProfile_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 NetworkProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetworkProfile, NetworkProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetworkProfile runs a test to see if a specific instance of NetworkProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForNetworkProfile(subject NetworkProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NetworkProfile + 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 NetworkProfile instances for property testing - lazily instantiated by NetworkProfileGenerator() +var networkProfileGenerator gopter.Gen + +// NetworkProfileGenerator returns a generator of NetworkProfile instances for property testing. +// We first initialize networkProfileGenerator 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 NetworkProfileGenerator() gopter.Gen { + if networkProfileGenerator != nil { + return networkProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile(generators) + networkProfileGenerator = gen.Struct(reflect.TypeOf(NetworkProfile{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile(generators) + AddRelatedPropertyGeneratorsForNetworkProfile(generators) + networkProfileGenerator = gen.Struct(reflect.TypeOf(NetworkProfile{}), generators) + + return networkProfileGenerator +} + +// AddIndependentPropertyGeneratorsForNetworkProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetworkProfile(gens map[string]gopter.Gen) { + gens["OutboundType"] = gen.PtrOf(gen.AlphaString()) + gens["PodCidr"] = gen.PtrOf(gen.AlphaString()) + gens["PreconfiguredNSG"] = gen.PtrOf(gen.AlphaString()) + gens["ServiceCidr"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForNetworkProfile is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNetworkProfile(gens map[string]gopter.Gen) { + gens["LoadBalancerProfile"] = gen.PtrOf(LoadBalancerProfileGenerator()) +} + +func Test_NetworkProfile_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 NetworkProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetworkProfile_STATUS, NetworkProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetworkProfile_STATUS runs a test to see if a specific instance of NetworkProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForNetworkProfile_STATUS(subject NetworkProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual NetworkProfile_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 NetworkProfile_STATUS instances for property testing - lazily instantiated by +// NetworkProfile_STATUSGenerator() +var networkProfile_STATUSGenerator gopter.Gen + +// NetworkProfile_STATUSGenerator returns a generator of NetworkProfile_STATUS instances for property testing. +// We first initialize networkProfile_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 NetworkProfile_STATUSGenerator() gopter.Gen { + if networkProfile_STATUSGenerator != nil { + return networkProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile_STATUS(generators) + networkProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(NetworkProfile_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetworkProfile_STATUS(generators) + AddRelatedPropertyGeneratorsForNetworkProfile_STATUS(generators) + networkProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(NetworkProfile_STATUS{}), generators) + + return networkProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForNetworkProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetworkProfile_STATUS(gens map[string]gopter.Gen) { + gens["OutboundType"] = gen.PtrOf(gen.AlphaString()) + gens["PodCidr"] = gen.PtrOf(gen.AlphaString()) + gens["PreconfiguredNSG"] = gen.PtrOf(gen.AlphaString()) + gens["ServiceCidr"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForNetworkProfile_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForNetworkProfile_STATUS(gens map[string]gopter.Gen) { + gens["LoadBalancerProfile"] = gen.PtrOf(LoadBalancerProfile_STATUSGenerator()) +} + +func Test_OpenShiftCluster_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 OpenShiftCluster via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftCluster, OpenShiftClusterGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftCluster runs a test to see if a specific instance of OpenShiftCluster round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftCluster(subject OpenShiftCluster) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftCluster + 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 OpenShiftCluster instances for property testing - lazily instantiated by OpenShiftClusterGenerator() +var openShiftClusterGenerator gopter.Gen + +// OpenShiftClusterGenerator returns a generator of OpenShiftCluster instances for property testing. +func OpenShiftClusterGenerator() gopter.Gen { + if openShiftClusterGenerator != nil { + return openShiftClusterGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForOpenShiftCluster(generators) + openShiftClusterGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster{}), generators) + + return openShiftClusterGenerator +} + +// AddRelatedPropertyGeneratorsForOpenShiftCluster is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftCluster(gens map[string]gopter.Gen) { + gens["Spec"] = OpenShiftCluster_SpecGenerator() + gens["Status"] = OpenShiftCluster_STATUSGenerator() +} + +func Test_OpenShiftCluster_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 OpenShiftCluster_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftCluster_STATUS, OpenShiftCluster_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftCluster_STATUS runs a test to see if a specific instance of OpenShiftCluster_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftCluster_STATUS(subject OpenShiftCluster_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftCluster_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 OpenShiftCluster_STATUS instances for property testing - lazily instantiated by +// OpenShiftCluster_STATUSGenerator() +var openShiftCluster_STATUSGenerator gopter.Gen + +// OpenShiftCluster_STATUSGenerator returns a generator of OpenShiftCluster_STATUS instances for property testing. +// We first initialize openShiftCluster_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 OpenShiftCluster_STATUSGenerator() gopter.Gen { + if openShiftCluster_STATUSGenerator != nil { + return openShiftCluster_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS(generators) + openShiftCluster_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS(generators) + AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS(generators) + openShiftCluster_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_STATUS{}), generators) + + return openShiftCluster_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForOpenShiftCluster_STATUS(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["ProvisioningState"] = gen.PtrOf(gen.AlphaString()) + gens["Tags"] = gen.MapOf( + gen.AlphaString(), + gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftCluster_STATUS(gens map[string]gopter.Gen) { + gens["ApiserverProfile"] = gen.PtrOf(APIServerProfile_STATUSGenerator()) + gens["ClusterProfile"] = gen.PtrOf(ClusterProfile_STATUSGenerator()) + gens["ConsoleProfile"] = gen.PtrOf(ConsoleProfile_STATUSGenerator()) + gens["IngressProfiles"] = gen.SliceOf(IngressProfile_STATUSGenerator()) + gens["MasterProfile"] = gen.PtrOf(MasterProfile_STATUSGenerator()) + gens["NetworkProfile"] = gen.PtrOf(NetworkProfile_STATUSGenerator()) + gens["ServicePrincipalProfile"] = gen.PtrOf(ServicePrincipalProfile_STATUSGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) + gens["WorkerProfiles"] = gen.SliceOf(WorkerProfile_STATUSGenerator()) + gens["WorkerProfilesStatus"] = gen.SliceOf(WorkerProfile_STATUSGenerator()) +} + +func Test_OpenShiftCluster_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 OpenShiftCluster_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForOpenShiftCluster_Spec, OpenShiftCluster_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForOpenShiftCluster_Spec runs a test to see if a specific instance of OpenShiftCluster_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForOpenShiftCluster_Spec(subject OpenShiftCluster_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual OpenShiftCluster_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 OpenShiftCluster_Spec instances for property testing - lazily instantiated by +// OpenShiftCluster_SpecGenerator() +var openShiftCluster_SpecGenerator gopter.Gen + +// OpenShiftCluster_SpecGenerator returns a generator of OpenShiftCluster_Spec instances for property testing. +// We first initialize openShiftCluster_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 OpenShiftCluster_SpecGenerator() gopter.Gen { + if openShiftCluster_SpecGenerator != nil { + return openShiftCluster_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec(generators) + openShiftCluster_SpecGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_Spec{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec(generators) + AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec(generators) + openShiftCluster_SpecGenerator = gen.Struct(reflect.TypeOf(OpenShiftCluster_Spec{}), generators) + + return openShiftCluster_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForOpenShiftCluster_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["OriginalVersion"] = gen.AlphaString() + gens["Tags"] = gen.MapOf( + gen.AlphaString(), + gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForOpenShiftCluster_Spec(gens map[string]gopter.Gen) { + gens["ApiserverProfile"] = gen.PtrOf(APIServerProfileGenerator()) + gens["ClusterProfile"] = gen.PtrOf(ClusterProfileGenerator()) + gens["IngressProfiles"] = gen.SliceOf(IngressProfileGenerator()) + gens["MasterProfile"] = gen.PtrOf(MasterProfileGenerator()) + gens["NetworkProfile"] = gen.PtrOf(NetworkProfileGenerator()) + gens["ServicePrincipalProfile"] = gen.PtrOf(ServicePrincipalProfileGenerator()) + gens["WorkerProfiles"] = gen.SliceOf(WorkerProfileGenerator()) +} + +func Test_ServicePrincipalProfile_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 ServicePrincipalProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForServicePrincipalProfile, ServicePrincipalProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForServicePrincipalProfile runs a test to see if a specific instance of ServicePrincipalProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForServicePrincipalProfile(subject ServicePrincipalProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ServicePrincipalProfile + 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 ServicePrincipalProfile instances for property testing - lazily instantiated by +// ServicePrincipalProfileGenerator() +var servicePrincipalProfileGenerator gopter.Gen + +// ServicePrincipalProfileGenerator returns a generator of ServicePrincipalProfile instances for property testing. +func ServicePrincipalProfileGenerator() gopter.Gen { + if servicePrincipalProfileGenerator != nil { + return servicePrincipalProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServicePrincipalProfile(generators) + servicePrincipalProfileGenerator = gen.Struct(reflect.TypeOf(ServicePrincipalProfile{}), generators) + + return servicePrincipalProfileGenerator +} + +// AddIndependentPropertyGeneratorsForServicePrincipalProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForServicePrincipalProfile(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_ServicePrincipalProfile_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 ServicePrincipalProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForServicePrincipalProfile_STATUS, ServicePrincipalProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForServicePrincipalProfile_STATUS runs a test to see if a specific instance of ServicePrincipalProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForServicePrincipalProfile_STATUS(subject ServicePrincipalProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ServicePrincipalProfile_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 ServicePrincipalProfile_STATUS instances for property testing - lazily instantiated by +// ServicePrincipalProfile_STATUSGenerator() +var servicePrincipalProfile_STATUSGenerator gopter.Gen + +// ServicePrincipalProfile_STATUSGenerator returns a generator of ServicePrincipalProfile_STATUS instances for property testing. +func ServicePrincipalProfile_STATUSGenerator() gopter.Gen { + if servicePrincipalProfile_STATUSGenerator != nil { + return servicePrincipalProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS(generators) + servicePrincipalProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(ServicePrincipalProfile_STATUS{}), generators) + + return servicePrincipalProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForServicePrincipalProfile_STATUS(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_SystemData_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 SystemData_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSystemData_STATUS, SystemData_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSystemData_STATUS runs a test to see if a specific instance of SystemData_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForSystemData_STATUS(subject SystemData_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual SystemData_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 SystemData_STATUS instances for property testing - lazily instantiated by SystemData_STATUSGenerator() +var systemData_STATUSGenerator gopter.Gen + +// SystemData_STATUSGenerator returns a generator of SystemData_STATUS instances for property testing. +func SystemData_STATUSGenerator() gopter.Gen { + if systemData_STATUSGenerator != nil { + return systemData_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSystemData_STATUS(generators) + systemData_STATUSGenerator = gen.Struct(reflect.TypeOf(SystemData_STATUS{}), generators) + + return systemData_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForSystemData_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSystemData_STATUS(gens map[string]gopter.Gen) { + gens["CreatedAt"] = gen.PtrOf(gen.AlphaString()) + gens["CreatedBy"] = gen.PtrOf(gen.AlphaString()) + gens["CreatedByType"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedAt"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedBy"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedByType"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_WorkerProfile_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 WorkerProfile via JSON returns original", + prop.ForAll(RunJSONSerializationTestForWorkerProfile, WorkerProfileGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForWorkerProfile runs a test to see if a specific instance of WorkerProfile round trips to JSON and back losslessly +func RunJSONSerializationTestForWorkerProfile(subject WorkerProfile) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual WorkerProfile + 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 WorkerProfile instances for property testing - lazily instantiated by WorkerProfileGenerator() +var workerProfileGenerator gopter.Gen + +// WorkerProfileGenerator returns a generator of WorkerProfile instances for property testing. +func WorkerProfileGenerator() gopter.Gen { + if workerProfileGenerator != nil { + return workerProfileGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForWorkerProfile(generators) + workerProfileGenerator = gen.Struct(reflect.TypeOf(WorkerProfile{}), generators) + + return workerProfileGenerator +} + +// AddIndependentPropertyGeneratorsForWorkerProfile is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForWorkerProfile(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) + gens["DiskSizeGB"] = gen.PtrOf(gen.Int()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_WorkerProfile_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 WorkerProfile_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForWorkerProfile_STATUS, WorkerProfile_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForWorkerProfile_STATUS runs a test to see if a specific instance of WorkerProfile_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForWorkerProfile_STATUS(subject WorkerProfile_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual WorkerProfile_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 WorkerProfile_STATUS instances for property testing - lazily instantiated by +// WorkerProfile_STATUSGenerator() +var workerProfile_STATUSGenerator gopter.Gen + +// WorkerProfile_STATUSGenerator returns a generator of WorkerProfile_STATUS instances for property testing. +func WorkerProfile_STATUSGenerator() gopter.Gen { + if workerProfile_STATUSGenerator != nil { + return workerProfile_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForWorkerProfile_STATUS(generators) + workerProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(WorkerProfile_STATUS{}), generators) + + return workerProfile_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForWorkerProfile_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForWorkerProfile_STATUS(gens map[string]gopter.Gen) { + gens["Count"] = gen.PtrOf(gen.Int()) + gens["DiskEncryptionSetId"] = gen.PtrOf(gen.AlphaString()) + gens["DiskSizeGB"] = gen.PtrOf(gen.Int()) + gens["EncryptionAtHost"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["SubnetId"] = gen.PtrOf(gen.AlphaString()) + gens["VmSize"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/redhatopenshift/v1api20231122/storage/structure.txt b/v2/api/redhatopenshift/v1api20231122/storage/structure.txt new file mode 100644 index 00000000000..5dd53222153 --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/storage/structure.txt @@ -0,0 +1,136 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122/storage +------------------------------------------------------------------------------------ +APIVersion: Enum (1 value) +└── "2023-11-22" +OpenShiftCluster: Resource +├── Owner: resources/v1apiv20191001.ResourceGroup +├── Spec: Object (13 properties) +│ ├── ApiserverProfile: *Object (2 properties) +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── Visibility: *string +│ ├── AzureName: string +│ ├── ClusterProfile: *Object (6 properties) +│ │ ├── Domain: *string +│ │ ├── FipsValidatedModules: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── PullSecret: *genruntime.SecretReference +│ │ ├── ResourceGroupId: *string +│ │ └── Version: *string +│ ├── IngressProfiles: Object (3 properties)[] +│ │ ├── Name: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── Visibility: *string +│ ├── Location: *string +│ ├── MasterProfile: *Object (5 properties) +│ │ ├── DiskEncryptionSetReference: *genruntime.ResourceReference +│ │ ├── EncryptionAtHost: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── SubnetReference: *genruntime.ResourceReference +│ │ └── VmSize: *string +│ ├── NetworkProfile: *Object (6 properties) +│ │ ├── LoadBalancerProfile: *Object (2 properties) +│ │ │ ├── ManagedOutboundIps: *Object (2 properties) +│ │ │ │ ├── Count: *int +│ │ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ ├── OutboundType: *string +│ │ ├── PodCidr: *string +│ │ ├── PreconfiguredNSG: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── ServiceCidr: *string +│ ├── OriginalVersion: string +│ ├── Owner: *genruntime.KnownResourceReference +│ ├── PropertyBag: genruntime.PropertyBag +│ ├── ServicePrincipalProfile: *Object (4 properties) +│ │ ├── ClientId: *string +│ │ ├── ClientIdFromConfig: *genruntime.ConfigMapReference +│ │ ├── ClientSecret: *genruntime.SecretReference +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── Tags: map[string]string +│ └── WorkerProfiles: Object (8 properties)[] +│ ├── Count: *int +│ ├── DiskEncryptionSetReference: *genruntime.ResourceReference +│ ├── DiskSizeGB: *int +│ ├── EncryptionAtHost: *string +│ ├── Name: *string +│ ├── PropertyBag: genruntime.PropertyBag +│ ├── SubnetReference: *genruntime.ResourceReference +│ └── VmSize: *string +└── Status: Object (18 properties) + ├── ApiserverProfile: *Object (4 properties) + │ ├── Ip: *string + │ ├── PropertyBag: genruntime.PropertyBag + │ ├── Url: *string + │ └── Visibility: *string + ├── ClusterProfile: *Object (5 properties) + │ ├── Domain: *string + │ ├── FipsValidatedModules: *string + │ ├── PropertyBag: genruntime.PropertyBag + │ ├── ResourceGroupId: *string + │ └── Version: *string + ├── Conditions: conditions.Condition[] + ├── ConsoleProfile: *Object (2 properties) + │ ├── PropertyBag: genruntime.PropertyBag + │ └── Url: *string + ├── Id: *string + ├── IngressProfiles: Object (4 properties)[] + │ ├── Ip: *string + │ ├── Name: *string + │ ├── PropertyBag: genruntime.PropertyBag + │ └── Visibility: *string + ├── Location: *string + ├── MasterProfile: *Object (5 properties) + │ ├── DiskEncryptionSetId: *string + │ ├── EncryptionAtHost: *string + │ ├── PropertyBag: genruntime.PropertyBag + │ ├── SubnetId: *string + │ └── VmSize: *string + ├── Name: *string + ├── NetworkProfile: *Object (6 properties) + │ ├── LoadBalancerProfile: *Object (3 properties) + │ │ ├── EffectiveOutboundIps: Object (2 properties)[] + │ │ │ ├── Id: *string + │ │ │ └── PropertyBag: genruntime.PropertyBag + │ │ ├── ManagedOutboundIps: *Object (2 properties) + │ │ │ ├── Count: *int + │ │ │ └── PropertyBag: genruntime.PropertyBag + │ │ └── PropertyBag: genruntime.PropertyBag + │ ├── OutboundType: *string + │ ├── PodCidr: *string + │ ├── PreconfiguredNSG: *string + │ ├── PropertyBag: genruntime.PropertyBag + │ └── ServiceCidr: *string + ├── PropertyBag: genruntime.PropertyBag + ├── ProvisioningState: *string + ├── ServicePrincipalProfile: *Object (2 properties) + │ ├── ClientId: *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 + ├── Type: *string + ├── WorkerProfiles: Object (8 properties)[] + │ ├── Count: *int + │ ├── DiskEncryptionSetId: *string + │ ├── DiskSizeGB: *int + │ ├── EncryptionAtHost: *string + │ ├── Name: *string + │ ├── PropertyBag: genruntime.PropertyBag + │ ├── SubnetId: *string + │ └── VmSize: *string + └── WorkerProfilesStatus: Object (8 properties)[] + ├── Count: *int + ├── DiskEncryptionSetId: *string + ├── DiskSizeGB: *int + ├── EncryptionAtHost: *string + ├── Name: *string + ├── PropertyBag: genruntime.PropertyBag + ├── SubnetId: *string + └── VmSize: *string diff --git a/v2/api/redhatopenshift/v1api20231122/storage/zz_generated.deepcopy.go b/v2/api/redhatopenshift/v1api20231122/storage/zz_generated.deepcopy.go new file mode 100644 index 00000000000..9bd58c4ea1a --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/storage/zz_generated.deepcopy.go @@ -0,0 +1,1069 @@ +//go:build !ignore_autogenerated + +/* +Copyright (c) Microsoft Corporation. +Licensed under the MIT license. +*/ + +// Code generated by controller-gen. DO NOT EDIT. + +package storage + +import ( + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIServerProfile) DeepCopyInto(out *APIServerProfile) { + *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.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerProfile. +func (in *APIServerProfile) DeepCopy() *APIServerProfile { + if in == nil { + return nil + } + out := new(APIServerProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIServerProfile_STATUS) DeepCopyInto(out *APIServerProfile_STATUS) { + *out = *in + if in.Ip != nil { + in, out := &in.Ip, &out.Ip + *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.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerProfile_STATUS. +func (in *APIServerProfile_STATUS) DeepCopy() *APIServerProfile_STATUS { + if in == nil { + return nil + } + out := new(APIServerProfile_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 *ClusterProfile) DeepCopyInto(out *ClusterProfile) { + *out = *in + if in.Domain != nil { + in, out := &in.Domain, &out.Domain + *out = new(string) + **out = **in + } + if in.FipsValidatedModules != nil { + in, out := &in.FipsValidatedModules, &out.FipsValidatedModules + *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.PullSecret != nil { + in, out := &in.PullSecret, &out.PullSecret + *out = new(genruntime.SecretReference) + **out = **in + } + if in.ResourceGroupId != nil { + in, out := &in.ResourceGroupId, &out.ResourceGroupId + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterProfile. +func (in *ClusterProfile) DeepCopy() *ClusterProfile { + if in == nil { + return nil + } + out := new(ClusterProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterProfile_STATUS) DeepCopyInto(out *ClusterProfile_STATUS) { + *out = *in + if in.Domain != nil { + in, out := &in.Domain, &out.Domain + *out = new(string) + **out = **in + } + if in.FipsValidatedModules != nil { + in, out := &in.FipsValidatedModules, &out.FipsValidatedModules + *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.ResourceGroupId != nil { + in, out := &in.ResourceGroupId, &out.ResourceGroupId + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterProfile_STATUS. +func (in *ClusterProfile_STATUS) DeepCopy() *ClusterProfile_STATUS { + if in == nil { + return nil + } + out := new(ClusterProfile_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 *ConsoleProfile_STATUS) DeepCopyInto(out *ConsoleProfile_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 + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConsoleProfile_STATUS. +func (in *ConsoleProfile_STATUS) DeepCopy() *ConsoleProfile_STATUS { + if in == nil { + return nil + } + out := new(ConsoleProfile_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 *EffectiveOutboundIP_STATUS) DeepCopyInto(out *EffectiveOutboundIP_STATUS) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *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 EffectiveOutboundIP_STATUS. +func (in *EffectiveOutboundIP_STATUS) DeepCopy() *EffectiveOutboundIP_STATUS { + if in == nil { + return nil + } + out := new(EffectiveOutboundIP_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 *IngressProfile) DeepCopyInto(out *IngressProfile) { + *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 + } + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressProfile. +func (in *IngressProfile) DeepCopy() *IngressProfile { + if in == nil { + return nil + } + out := new(IngressProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IngressProfile_STATUS) DeepCopyInto(out *IngressProfile_STATUS) { + *out = *in + if in.Ip != nil { + in, out := &in.Ip, &out.Ip + *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 + } + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressProfile_STATUS. +func (in *IngressProfile_STATUS) DeepCopy() *IngressProfile_STATUS { + if in == nil { + return nil + } + out := new(IngressProfile_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 *LoadBalancerProfile) DeepCopyInto(out *LoadBalancerProfile) { + *out = *in + if in.ManagedOutboundIps != nil { + in, out := &in.ManagedOutboundIps, &out.ManagedOutboundIps + *out = new(ManagedOutboundIPs) + (*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 + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProfile. +func (in *LoadBalancerProfile) DeepCopy() *LoadBalancerProfile { + if in == nil { + return nil + } + out := new(LoadBalancerProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerProfile_STATUS) DeepCopyInto(out *LoadBalancerProfile_STATUS) { + *out = *in + if in.EffectiveOutboundIps != nil { + in, out := &in.EffectiveOutboundIps, &out.EffectiveOutboundIps + *out = make([]EffectiveOutboundIP_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagedOutboundIps != nil { + in, out := &in.ManagedOutboundIps, &out.ManagedOutboundIps + *out = new(ManagedOutboundIPs_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 + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProfile_STATUS. +func (in *LoadBalancerProfile_STATUS) DeepCopy() *LoadBalancerProfile_STATUS { + if in == nil { + return nil + } + out := new(LoadBalancerProfile_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 *ManagedOutboundIPs) DeepCopyInto(out *ManagedOutboundIPs) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *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 + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedOutboundIPs. +func (in *ManagedOutboundIPs) DeepCopy() *ManagedOutboundIPs { + if in == nil { + return nil + } + out := new(ManagedOutboundIPs) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedOutboundIPs_STATUS) DeepCopyInto(out *ManagedOutboundIPs_STATUS) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *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 + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedOutboundIPs_STATUS. +func (in *ManagedOutboundIPs_STATUS) DeepCopy() *ManagedOutboundIPs_STATUS { + if in == nil { + return nil + } + out := new(ManagedOutboundIPs_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 *MasterProfile) DeepCopyInto(out *MasterProfile) { + *out = *in + if in.DiskEncryptionSetReference != nil { + in, out := &in.DiskEncryptionSetReference, &out.DiskEncryptionSetReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *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.SubnetReference != nil { + in, out := &in.SubnetReference, &out.SubnetReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterProfile. +func (in *MasterProfile) DeepCopy() *MasterProfile { + if in == nil { + return nil + } + out := new(MasterProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MasterProfile_STATUS) DeepCopyInto(out *MasterProfile_STATUS) { + *out = *in + if in.DiskEncryptionSetId != nil { + in, out := &in.DiskEncryptionSetId, &out.DiskEncryptionSetId + *out = new(string) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *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.SubnetId != nil { + in, out := &in.SubnetId, &out.SubnetId + *out = new(string) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterProfile_STATUS. +func (in *MasterProfile_STATUS) DeepCopy() *MasterProfile_STATUS { + if in == nil { + return nil + } + out := new(MasterProfile_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 *NetworkProfile) DeepCopyInto(out *NetworkProfile) { + *out = *in + if in.LoadBalancerProfile != nil { + in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile + *out = new(LoadBalancerProfile) + (*in).DeepCopyInto(*out) + } + if in.OutboundType != nil { + in, out := &in.OutboundType, &out.OutboundType + *out = new(string) + **out = **in + } + if in.PodCidr != nil { + in, out := &in.PodCidr, &out.PodCidr + *out = new(string) + **out = **in + } + if in.PreconfiguredNSG != nil { + in, out := &in.PreconfiguredNSG, &out.PreconfiguredNSG + *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.ServiceCidr != nil { + in, out := &in.ServiceCidr, &out.ServiceCidr + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkProfile. +func (in *NetworkProfile) DeepCopy() *NetworkProfile { + if in == nil { + return nil + } + out := new(NetworkProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkProfile_STATUS) DeepCopyInto(out *NetworkProfile_STATUS) { + *out = *in + if in.LoadBalancerProfile != nil { + in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile + *out = new(LoadBalancerProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.OutboundType != nil { + in, out := &in.OutboundType, &out.OutboundType + *out = new(string) + **out = **in + } + if in.PodCidr != nil { + in, out := &in.PodCidr, &out.PodCidr + *out = new(string) + **out = **in + } + if in.PreconfiguredNSG != nil { + in, out := &in.PreconfiguredNSG, &out.PreconfiguredNSG + *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.ServiceCidr != nil { + in, out := &in.ServiceCidr, &out.ServiceCidr + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkProfile_STATUS. +func (in *NetworkProfile_STATUS) DeepCopy() *NetworkProfile_STATUS { + if in == nil { + return nil + } + out := new(NetworkProfile_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 *OpenShiftCluster) DeepCopyInto(out *OpenShiftCluster) { + *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 OpenShiftCluster. +func (in *OpenShiftCluster) DeepCopy() *OpenShiftCluster { + if in == nil { + return nil + } + out := new(OpenShiftCluster) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *OpenShiftCluster) 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 *OpenShiftClusterList) DeepCopyInto(out *OpenShiftClusterList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]OpenShiftCluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftClusterList. +func (in *OpenShiftClusterList) DeepCopy() *OpenShiftClusterList { + if in == nil { + return nil + } + out := new(OpenShiftClusterList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *OpenShiftClusterList) 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 *OpenShiftCluster_STATUS) DeepCopyInto(out *OpenShiftCluster_STATUS) { + *out = *in + if in.ApiserverProfile != nil { + in, out := &in.ApiserverProfile, &out.ApiserverProfile + *out = new(APIServerProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.ClusterProfile != nil { + in, out := &in.ClusterProfile, &out.ClusterProfile + *out = new(ClusterProfile_STATUS) + (*in).DeepCopyInto(*out) + } + 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.ConsoleProfile != nil { + in, out := &in.ConsoleProfile, &out.ConsoleProfile + *out = new(ConsoleProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.IngressProfiles != nil { + in, out := &in.IngressProfiles, &out.IngressProfiles + *out = make([]IngressProfile_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MasterProfile != nil { + in, out := &in.MasterProfile, &out.MasterProfile + *out = new(MasterProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkProfile != nil { + in, out := &in.NetworkProfile, &out.NetworkProfile + *out = new(NetworkProfile_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.ProvisioningState != nil { + in, out := &in.ProvisioningState, &out.ProvisioningState + *out = new(string) + **out = **in + } + if in.ServicePrincipalProfile != nil { + in, out := &in.ServicePrincipalProfile, &out.ServicePrincipalProfile + *out = new(ServicePrincipalProfile_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.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.WorkerProfiles != nil { + in, out := &in.WorkerProfiles, &out.WorkerProfiles + *out = make([]WorkerProfile_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkerProfilesStatus != nil { + in, out := &in.WorkerProfilesStatus, &out.WorkerProfilesStatus + *out = make([]WorkerProfile_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftCluster_STATUS. +func (in *OpenShiftCluster_STATUS) DeepCopy() *OpenShiftCluster_STATUS { + if in == nil { + return nil + } + out := new(OpenShiftCluster_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 *OpenShiftCluster_Spec) DeepCopyInto(out *OpenShiftCluster_Spec) { + *out = *in + if in.ApiserverProfile != nil { + in, out := &in.ApiserverProfile, &out.ApiserverProfile + *out = new(APIServerProfile) + (*in).DeepCopyInto(*out) + } + if in.ClusterProfile != nil { + in, out := &in.ClusterProfile, &out.ClusterProfile + *out = new(ClusterProfile) + (*in).DeepCopyInto(*out) + } + if in.IngressProfiles != nil { + in, out := &in.IngressProfiles, &out.IngressProfiles + *out = make([]IngressProfile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MasterProfile != nil { + in, out := &in.MasterProfile, &out.MasterProfile + *out = new(MasterProfile) + (*in).DeepCopyInto(*out) + } + if in.NetworkProfile != nil { + in, out := &in.NetworkProfile, &out.NetworkProfile + *out = new(NetworkProfile) + (*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.ServicePrincipalProfile != nil { + in, out := &in.ServicePrincipalProfile, &out.ServicePrincipalProfile + *out = new(ServicePrincipalProfile) + (*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.WorkerProfiles != nil { + in, out := &in.WorkerProfiles, &out.WorkerProfiles + *out = make([]WorkerProfile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftCluster_Spec. +func (in *OpenShiftCluster_Spec) DeepCopy() *OpenShiftCluster_Spec { + if in == nil { + return nil + } + out := new(OpenShiftCluster_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 *ServicePrincipalProfile) DeepCopyInto(out *ServicePrincipalProfile) { + *out = *in + if in.ClientId != nil { + in, out := &in.ClientId, &out.ClientId + *out = new(string) + **out = **in + } + if in.ClientIdFromConfig != nil { + in, out := &in.ClientIdFromConfig, &out.ClientIdFromConfig + *out = new(genruntime.ConfigMapReference) + **out = **in + } + if in.ClientSecret != nil { + in, out := &in.ClientSecret, &out.ClientSecret + *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 + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalProfile. +func (in *ServicePrincipalProfile) DeepCopy() *ServicePrincipalProfile { + if in == nil { + return nil + } + out := new(ServicePrincipalProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicePrincipalProfile_STATUS) DeepCopyInto(out *ServicePrincipalProfile_STATUS) { + *out = *in + if in.ClientId != nil { + in, out := &in.ClientId, &out.ClientId + *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 ServicePrincipalProfile_STATUS. +func (in *ServicePrincipalProfile_STATUS) DeepCopy() *ServicePrincipalProfile_STATUS { + if in == nil { + return nil + } + out := new(ServicePrincipalProfile_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 *SystemData_STATUS) DeepCopyInto(out *SystemData_STATUS) { + *out = *in + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } + if in.CreatedBy != nil { + in, out := &in.CreatedBy, &out.CreatedBy + *out = new(string) + **out = **in + } + if in.CreatedByType != nil { + in, out := &in.CreatedByType, &out.CreatedByType + *out = new(string) + **out = **in + } + if in.LastModifiedAt != nil { + in, out := &in.LastModifiedAt, &out.LastModifiedAt + *out = new(string) + **out = **in + } + if in.LastModifiedBy != nil { + in, out := &in.LastModifiedBy, &out.LastModifiedBy + *out = new(string) + **out = **in + } + if in.LastModifiedByType != nil { + in, out := &in.LastModifiedByType, &out.LastModifiedByType + *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 SystemData_STATUS. +func (in *SystemData_STATUS) DeepCopy() *SystemData_STATUS { + if in == nil { + return nil + } + out := new(SystemData_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 *WorkerProfile) DeepCopyInto(out *WorkerProfile) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } + if in.DiskEncryptionSetReference != nil { + in, out := &in.DiskEncryptionSetReference, &out.DiskEncryptionSetReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.DiskSizeGB != nil { + in, out := &in.DiskSizeGB, &out.DiskSizeGB + *out = new(int) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *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 + } + } + if in.SubnetReference != nil { + in, out := &in.SubnetReference, &out.SubnetReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerProfile. +func (in *WorkerProfile) DeepCopy() *WorkerProfile { + if in == nil { + return nil + } + out := new(WorkerProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkerProfile_STATUS) DeepCopyInto(out *WorkerProfile_STATUS) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } + if in.DiskEncryptionSetId != nil { + in, out := &in.DiskEncryptionSetId, &out.DiskEncryptionSetId + *out = new(string) + **out = **in + } + if in.DiskSizeGB != nil { + in, out := &in.DiskSizeGB, &out.DiskSizeGB + *out = new(int) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *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 + } + } + if in.SubnetId != nil { + in, out := &in.SubnetId, &out.SubnetId + *out = new(string) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerProfile_STATUS. +func (in *WorkerProfile_STATUS) DeepCopy() *WorkerProfile_STATUS { + if in == nil { + return nil + } + out := new(WorkerProfile_STATUS) + in.DeepCopyInto(out) + return out +} diff --git a/v2/api/redhatopenshift/v1api20231122/structure.txt b/v2/api/redhatopenshift/v1api20231122/structure.txt new file mode 100644 index 00000000000..c3a0cd502bf --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/structure.txt @@ -0,0 +1,304 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122 +---------------------------------------------------------------------------- +APIVersion: Enum (1 value) +└── "2023-11-22" +OpenShiftCluster: Resource +├── Owner: resources/v1apiv20191001.ResourceGroup +├── Spec: Object (11 properties) +│ ├── ApiserverProfile: *Object (1 property) +│ │ └── Visibility: *Enum (2 values) +│ │ ├── "Private" +│ │ └── "Public" +│ ├── AzureName: string +│ ├── ClusterProfile: *Object (5 properties) +│ │ ├── Domain: *string +│ │ ├── FipsValidatedModules: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── PullSecret: *genruntime.SecretReference +│ │ ├── ResourceGroupId: *string +│ │ └── Version: *string +│ ├── IngressProfiles: Object (2 properties)[] +│ │ ├── Name: *string +│ │ └── Visibility: *Enum (2 values) +│ │ ├── "Private" +│ │ └── "Public" +│ ├── Location: *string +│ ├── MasterProfile: *Object (4 properties) +│ │ ├── DiskEncryptionSetReference: *genruntime.ResourceReference +│ │ ├── EncryptionAtHost: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── SubnetReference: *genruntime.ResourceReference +│ │ └── VmSize: *string +│ ├── NetworkProfile: *Object (5 properties) +│ │ ├── LoadBalancerProfile: *Object (1 property) +│ │ │ └── ManagedOutboundIps: *Object (1 property) +│ │ │ └── Count: *int +│ │ ├── OutboundType: *Enum (2 values) +│ │ │ ├── "Loadbalancer" +│ │ │ └── "UserDefinedRouting" +│ │ ├── PodCidr: *string +│ │ ├── PreconfiguredNSG: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ └── ServiceCidr: *string +│ ├── Owner: *genruntime.KnownResourceReference +│ ├── ServicePrincipalProfile: *Object (3 properties) +│ │ ├── ClientId: *string +│ │ ├── ClientIdFromConfig: *genruntime.ConfigMapReference +│ │ └── ClientSecret: *genruntime.SecretReference +│ ├── Tags: map[string]string +│ └── WorkerProfiles: Object (7 properties)[] +│ ├── Count: *int +│ ├── DiskEncryptionSetReference: *genruntime.ResourceReference +│ ├── DiskSizeGB: *int +│ ├── EncryptionAtHost: *Enum (2 values) +│ │ ├── "Disabled" +│ │ └── "Enabled" +│ ├── Name: *string +│ ├── SubnetReference: *genruntime.ResourceReference +│ └── VmSize: *string +└── Status: Object (17 properties) + ├── ApiserverProfile: *Object (3 properties) + │ ├── Ip: *string + │ ├── Url: *string + │ └── Visibility: *Enum (2 values) + │ ├── "Private" + │ └── "Public" + ├── ClusterProfile: *Object (4 properties) + │ ├── Domain: *string + │ ├── FipsValidatedModules: *Enum (2 values) + │ │ ├── "Disabled" + │ │ └── "Enabled" + │ ├── ResourceGroupId: *string + │ └── Version: *string + ├── Conditions: conditions.Condition[] + ├── ConsoleProfile: *Object (1 property) + │ └── Url: *string + ├── Id: *string + ├── IngressProfiles: Object (3 properties)[] + │ ├── Ip: *string + │ ├── Name: *string + │ └── Visibility: *Enum (2 values) + │ ├── "Private" + │ └── "Public" + ├── Location: *string + ├── MasterProfile: *Object (4 properties) + │ ├── DiskEncryptionSetId: *string + │ ├── EncryptionAtHost: *Enum (2 values) + │ │ ├── "Disabled" + │ │ └── "Enabled" + │ ├── SubnetId: *string + │ └── VmSize: *string + ├── Name: *string + ├── NetworkProfile: *Object (5 properties) + │ ├── LoadBalancerProfile: *Object (2 properties) + │ │ ├── EffectiveOutboundIps: Object (1 property)[] + │ │ │ └── Id: *string + │ │ └── ManagedOutboundIps: *Object (1 property) + │ │ └── Count: *int + │ ├── OutboundType: *Enum (2 values) + │ │ ├── "Loadbalancer" + │ │ └── "UserDefinedRouting" + │ ├── PodCidr: *string + │ ├── PreconfiguredNSG: *Enum (2 values) + │ │ ├── "Disabled" + │ │ └── "Enabled" + │ └── ServiceCidr: *string + ├── ProvisioningState: *Enum (7 values) + │ ├── "AdminUpdating" + │ ├── "Canceled" + │ ├── "Creating" + │ ├── "Deleting" + │ ├── "Failed" + │ ├── "Succeeded" + │ └── "Updating" + ├── ServicePrincipalProfile: *Object (1 property) + │ └── ClientId: *string + ├── SystemData: *Object (6 properties) + │ ├── CreatedAt: *string + │ ├── CreatedBy: *string + │ ├── CreatedByType: *Enum (4 values) + │ │ ├── "Application" + │ │ ├── "Key" + │ │ ├── "ManagedIdentity" + │ │ └── "User" + │ ├── LastModifiedAt: *string + │ ├── LastModifiedBy: *string + │ └── LastModifiedByType: *Enum (4 values) + │ ├── "Application" + │ ├── "Key" + │ ├── "ManagedIdentity" + │ └── "User" + ├── Tags: map[string]string + ├── Type: *string + ├── WorkerProfiles: Object (7 properties)[] + │ ├── Count: *int + │ ├── DiskEncryptionSetId: *string + │ ├── DiskSizeGB: *int + │ ├── EncryptionAtHost: *Enum (2 values) + │ │ ├── "Disabled" + │ │ └── "Enabled" + │ ├── Name: *string + │ ├── SubnetId: *string + │ └── VmSize: *string + └── WorkerProfilesStatus: Object (7 properties)[] + ├── Count: *int + ├── DiskEncryptionSetId: *string + ├── DiskSizeGB: *int + ├── EncryptionAtHost: *Enum (2 values) + │ ├── "Disabled" + │ └── "Enabled" + ├── Name: *string + ├── SubnetId: *string + └── VmSize: *string +OpenShiftCluster_STATUS_ARM: Object (7 properties) +├── Id: *string +├── Location: *string +├── Name: *string +├── Properties: *Object (10 properties) +│ ├── ApiserverProfile: *Object (3 properties) +│ │ ├── Ip: *string +│ │ ├── Url: *string +│ │ └── Visibility: *Enum (2 values) +│ │ ├── "Private" +│ │ └── "Public" +│ ├── ClusterProfile: *Object (4 properties) +│ │ ├── Domain: *string +│ │ ├── FipsValidatedModules: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── ResourceGroupId: *string +│ │ └── Version: *string +│ ├── ConsoleProfile: *Object (1 property) +│ │ └── Url: *string +│ ├── IngressProfiles: Object (3 properties)[] +│ │ ├── Ip: *string +│ │ ├── Name: *string +│ │ └── Visibility: *Enum (2 values) +│ │ ├── "Private" +│ │ └── "Public" +│ ├── MasterProfile: *Object (4 properties) +│ │ ├── DiskEncryptionSetId: *string +│ │ ├── EncryptionAtHost: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── SubnetId: *string +│ │ └── VmSize: *string +│ ├── NetworkProfile: *Object (5 properties) +│ │ ├── LoadBalancerProfile: *Object (2 properties) +│ │ │ ├── EffectiveOutboundIps: Object (1 property)[] +│ │ │ │ └── Id: *string +│ │ │ └── ManagedOutboundIps: *Object (1 property) +│ │ │ └── Count: *int +│ │ ├── OutboundType: *Enum (2 values) +│ │ │ ├── "Loadbalancer" +│ │ │ └── "UserDefinedRouting" +│ │ ├── PodCidr: *string +│ │ ├── PreconfiguredNSG: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ └── ServiceCidr: *string +│ ├── ProvisioningState: *Enum (7 values) +│ │ ├── "AdminUpdating" +│ │ ├── "Canceled" +│ │ ├── "Creating" +│ │ ├── "Deleting" +│ │ ├── "Failed" +│ │ ├── "Succeeded" +│ │ └── "Updating" +│ ├── ServicePrincipalProfile: *Object (1 property) +│ │ └── ClientId: *string +│ ├── WorkerProfiles: Object (7 properties)[] +│ │ ├── Count: *int +│ │ ├── DiskEncryptionSetId: *string +│ │ ├── DiskSizeGB: *int +│ │ ├── EncryptionAtHost: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── Name: *string +│ │ ├── SubnetId: *string +│ │ └── VmSize: *string +│ └── WorkerProfilesStatus: Object (7 properties)[] +│ ├── Count: *int +│ ├── DiskEncryptionSetId: *string +│ ├── DiskSizeGB: *int +│ ├── EncryptionAtHost: *Enum (2 values) +│ │ ├── "Disabled" +│ │ └── "Enabled" +│ ├── Name: *string +│ ├── SubnetId: *string +│ └── VmSize: *string +├── SystemData: *Object (6 properties) +│ ├── CreatedAt: *string +│ ├── CreatedBy: *string +│ ├── CreatedByType: *Enum (4 values) +│ │ ├── "Application" +│ │ ├── "Key" +│ │ ├── "ManagedIdentity" +│ │ └── "User" +│ ├── LastModifiedAt: *string +│ ├── LastModifiedBy: *string +│ └── LastModifiedByType: *Enum (4 values) +│ ├── "Application" +│ ├── "Key" +│ ├── "ManagedIdentity" +│ └── "User" +├── Tags: map[string]string +└── Type: *string +OpenShiftCluster_Spec_ARM: Object (4 properties) +├── Location: *string +├── Name: string +├── Properties: *Object (7 properties) +│ ├── ApiserverProfile: *Object (1 property) +│ │ └── Visibility: *Enum (2 values) +│ │ ├── "Private" +│ │ └── "Public" +│ ├── ClusterProfile: *Object (5 properties) +│ │ ├── Domain: *string +│ │ ├── FipsValidatedModules: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── PullSecret: *string +│ │ ├── ResourceGroupId: *string +│ │ └── Version: *string +│ ├── IngressProfiles: Object (2 properties)[] +│ │ ├── Name: *string +│ │ └── Visibility: *Enum (2 values) +│ │ ├── "Private" +│ │ └── "Public" +│ ├── MasterProfile: *Object (4 properties) +│ │ ├── DiskEncryptionSetId: *string +│ │ ├── EncryptionAtHost: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── SubnetId: *string +│ │ └── VmSize: *string +│ ├── NetworkProfile: *Object (5 properties) +│ │ ├── LoadBalancerProfile: *Object (1 property) +│ │ │ └── ManagedOutboundIps: *Object (1 property) +│ │ │ └── Count: *int +│ │ ├── OutboundType: *Enum (2 values) +│ │ │ ├── "Loadbalancer" +│ │ │ └── "UserDefinedRouting" +│ │ ├── PodCidr: *string +│ │ ├── PreconfiguredNSG: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ └── ServiceCidr: *string +│ ├── ServicePrincipalProfile: *Object (2 properties) +│ │ ├── ClientId: *string +│ │ └── ClientSecret: *string +│ └── WorkerProfiles: Object (7 properties)[] +│ ├── Count: *int +│ ├── DiskEncryptionSetId: *string +│ ├── DiskSizeGB: *int +│ ├── EncryptionAtHost: *Enum (2 values) +│ │ ├── "Disabled" +│ │ └── "Enabled" +│ ├── Name: *string +│ ├── SubnetId: *string +│ └── VmSize: *string +└── Tags: map[string]string diff --git a/v2/api/redhatopenshift/v1api20231122/zz_generated.deepcopy.go b/v2/api/redhatopenshift/v1api20231122/zz_generated.deepcopy.go new file mode 100644 index 00000000000..7f770827d1e --- /dev/null +++ b/v2/api/redhatopenshift/v1api20231122/zz_generated.deepcopy.go @@ -0,0 +1,1764 @@ +//go:build !ignore_autogenerated + +/* +Copyright (c) Microsoft Corporation. +Licensed under the MIT license. +*/ + +// Code generated by controller-gen. DO NOT EDIT. + +package v1api20231122 + +import ( + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIServerProfile) DeepCopyInto(out *APIServerProfile) { + *out = *in + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(Visibility) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerProfile. +func (in *APIServerProfile) DeepCopy() *APIServerProfile { + if in == nil { + return nil + } + out := new(APIServerProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIServerProfile_ARM) DeepCopyInto(out *APIServerProfile_ARM) { + *out = *in + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(Visibility) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerProfile_ARM. +func (in *APIServerProfile_ARM) DeepCopy() *APIServerProfile_ARM { + if in == nil { + return nil + } + out := new(APIServerProfile_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 *APIServerProfile_STATUS) DeepCopyInto(out *APIServerProfile_STATUS) { + *out = *in + if in.Ip != nil { + in, out := &in.Ip, &out.Ip + *out = new(string) + **out = **in + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(Visibility_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerProfile_STATUS. +func (in *APIServerProfile_STATUS) DeepCopy() *APIServerProfile_STATUS { + if in == nil { + return nil + } + out := new(APIServerProfile_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 *APIServerProfile_STATUS_ARM) DeepCopyInto(out *APIServerProfile_STATUS_ARM) { + *out = *in + if in.Ip != nil { + in, out := &in.Ip, &out.Ip + *out = new(string) + **out = **in + } + if in.Url != nil { + in, out := &in.Url, &out.Url + *out = new(string) + **out = **in + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(Visibility_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerProfile_STATUS_ARM. +func (in *APIServerProfile_STATUS_ARM) DeepCopy() *APIServerProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(APIServerProfile_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 *ClusterProfile) DeepCopyInto(out *ClusterProfile) { + *out = *in + if in.Domain != nil { + in, out := &in.Domain, &out.Domain + *out = new(string) + **out = **in + } + if in.FipsValidatedModules != nil { + in, out := &in.FipsValidatedModules, &out.FipsValidatedModules + *out = new(FipsValidatedModules) + **out = **in + } + if in.PullSecret != nil { + in, out := &in.PullSecret, &out.PullSecret + *out = new(genruntime.SecretReference) + **out = **in + } + if in.ResourceGroupId != nil { + in, out := &in.ResourceGroupId, &out.ResourceGroupId + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterProfile. +func (in *ClusterProfile) DeepCopy() *ClusterProfile { + if in == nil { + return nil + } + out := new(ClusterProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterProfile_ARM) DeepCopyInto(out *ClusterProfile_ARM) { + *out = *in + if in.Domain != nil { + in, out := &in.Domain, &out.Domain + *out = new(string) + **out = **in + } + if in.FipsValidatedModules != nil { + in, out := &in.FipsValidatedModules, &out.FipsValidatedModules + *out = new(FipsValidatedModules) + **out = **in + } + if in.PullSecret != nil { + in, out := &in.PullSecret, &out.PullSecret + *out = new(string) + **out = **in + } + if in.ResourceGroupId != nil { + in, out := &in.ResourceGroupId, &out.ResourceGroupId + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterProfile_ARM. +func (in *ClusterProfile_ARM) DeepCopy() *ClusterProfile_ARM { + if in == nil { + return nil + } + out := new(ClusterProfile_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 *ClusterProfile_STATUS) DeepCopyInto(out *ClusterProfile_STATUS) { + *out = *in + if in.Domain != nil { + in, out := &in.Domain, &out.Domain + *out = new(string) + **out = **in + } + if in.FipsValidatedModules != nil { + in, out := &in.FipsValidatedModules, &out.FipsValidatedModules + *out = new(FipsValidatedModules_STATUS) + **out = **in + } + if in.ResourceGroupId != nil { + in, out := &in.ResourceGroupId, &out.ResourceGroupId + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterProfile_STATUS. +func (in *ClusterProfile_STATUS) DeepCopy() *ClusterProfile_STATUS { + if in == nil { + return nil + } + out := new(ClusterProfile_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 *ClusterProfile_STATUS_ARM) DeepCopyInto(out *ClusterProfile_STATUS_ARM) { + *out = *in + if in.Domain != nil { + in, out := &in.Domain, &out.Domain + *out = new(string) + **out = **in + } + if in.FipsValidatedModules != nil { + in, out := &in.FipsValidatedModules, &out.FipsValidatedModules + *out = new(FipsValidatedModules_STATUS) + **out = **in + } + if in.ResourceGroupId != nil { + in, out := &in.ResourceGroupId, &out.ResourceGroupId + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterProfile_STATUS_ARM. +func (in *ClusterProfile_STATUS_ARM) DeepCopy() *ClusterProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(ClusterProfile_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 *ConsoleProfile_STATUS) DeepCopyInto(out *ConsoleProfile_STATUS) { + *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 ConsoleProfile_STATUS. +func (in *ConsoleProfile_STATUS) DeepCopy() *ConsoleProfile_STATUS { + if in == nil { + return nil + } + out := new(ConsoleProfile_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 *ConsoleProfile_STATUS_ARM) DeepCopyInto(out *ConsoleProfile_STATUS_ARM) { + *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 ConsoleProfile_STATUS_ARM. +func (in *ConsoleProfile_STATUS_ARM) DeepCopy() *ConsoleProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(ConsoleProfile_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 *EffectiveOutboundIP_STATUS) DeepCopyInto(out *EffectiveOutboundIP_STATUS) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EffectiveOutboundIP_STATUS. +func (in *EffectiveOutboundIP_STATUS) DeepCopy() *EffectiveOutboundIP_STATUS { + if in == nil { + return nil + } + out := new(EffectiveOutboundIP_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 *EffectiveOutboundIP_STATUS_ARM) DeepCopyInto(out *EffectiveOutboundIP_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EffectiveOutboundIP_STATUS_ARM. +func (in *EffectiveOutboundIP_STATUS_ARM) DeepCopy() *EffectiveOutboundIP_STATUS_ARM { + if in == nil { + return nil + } + out := new(EffectiveOutboundIP_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 *IngressProfile) DeepCopyInto(out *IngressProfile) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(Visibility) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressProfile. +func (in *IngressProfile) DeepCopy() *IngressProfile { + if in == nil { + return nil + } + out := new(IngressProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IngressProfile_ARM) DeepCopyInto(out *IngressProfile_ARM) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(Visibility) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressProfile_ARM. +func (in *IngressProfile_ARM) DeepCopy() *IngressProfile_ARM { + if in == nil { + return nil + } + out := new(IngressProfile_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 *IngressProfile_STATUS) DeepCopyInto(out *IngressProfile_STATUS) { + *out = *in + if in.Ip != nil { + in, out := &in.Ip, &out.Ip + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(Visibility_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressProfile_STATUS. +func (in *IngressProfile_STATUS) DeepCopy() *IngressProfile_STATUS { + if in == nil { + return nil + } + out := new(IngressProfile_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 *IngressProfile_STATUS_ARM) DeepCopyInto(out *IngressProfile_STATUS_ARM) { + *out = *in + if in.Ip != nil { + in, out := &in.Ip, &out.Ip + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(Visibility_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressProfile_STATUS_ARM. +func (in *IngressProfile_STATUS_ARM) DeepCopy() *IngressProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(IngressProfile_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 *LoadBalancerProfile) DeepCopyInto(out *LoadBalancerProfile) { + *out = *in + if in.ManagedOutboundIps != nil { + in, out := &in.ManagedOutboundIps, &out.ManagedOutboundIps + *out = new(ManagedOutboundIPs) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProfile. +func (in *LoadBalancerProfile) DeepCopy() *LoadBalancerProfile { + if in == nil { + return nil + } + out := new(LoadBalancerProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerProfile_ARM) DeepCopyInto(out *LoadBalancerProfile_ARM) { + *out = *in + if in.ManagedOutboundIps != nil { + in, out := &in.ManagedOutboundIps, &out.ManagedOutboundIps + *out = new(ManagedOutboundIPs_ARM) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProfile_ARM. +func (in *LoadBalancerProfile_ARM) DeepCopy() *LoadBalancerProfile_ARM { + if in == nil { + return nil + } + out := new(LoadBalancerProfile_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 *LoadBalancerProfile_STATUS) DeepCopyInto(out *LoadBalancerProfile_STATUS) { + *out = *in + if in.EffectiveOutboundIps != nil { + in, out := &in.EffectiveOutboundIps, &out.EffectiveOutboundIps + *out = make([]EffectiveOutboundIP_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagedOutboundIps != nil { + in, out := &in.ManagedOutboundIps, &out.ManagedOutboundIps + *out = new(ManagedOutboundIPs_STATUS) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProfile_STATUS. +func (in *LoadBalancerProfile_STATUS) DeepCopy() *LoadBalancerProfile_STATUS { + if in == nil { + return nil + } + out := new(LoadBalancerProfile_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 *LoadBalancerProfile_STATUS_ARM) DeepCopyInto(out *LoadBalancerProfile_STATUS_ARM) { + *out = *in + if in.EffectiveOutboundIps != nil { + in, out := &in.EffectiveOutboundIps, &out.EffectiveOutboundIps + *out = make([]EffectiveOutboundIP_STATUS_ARM, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagedOutboundIps != nil { + in, out := &in.ManagedOutboundIps, &out.ManagedOutboundIps + *out = new(ManagedOutboundIPs_STATUS_ARM) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProfile_STATUS_ARM. +func (in *LoadBalancerProfile_STATUS_ARM) DeepCopy() *LoadBalancerProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(LoadBalancerProfile_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 *ManagedOutboundIPs) DeepCopyInto(out *ManagedOutboundIPs) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedOutboundIPs. +func (in *ManagedOutboundIPs) DeepCopy() *ManagedOutboundIPs { + if in == nil { + return nil + } + out := new(ManagedOutboundIPs) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedOutboundIPs_ARM) DeepCopyInto(out *ManagedOutboundIPs_ARM) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedOutboundIPs_ARM. +func (in *ManagedOutboundIPs_ARM) DeepCopy() *ManagedOutboundIPs_ARM { + if in == nil { + return nil + } + out := new(ManagedOutboundIPs_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 *ManagedOutboundIPs_STATUS) DeepCopyInto(out *ManagedOutboundIPs_STATUS) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedOutboundIPs_STATUS. +func (in *ManagedOutboundIPs_STATUS) DeepCopy() *ManagedOutboundIPs_STATUS { + if in == nil { + return nil + } + out := new(ManagedOutboundIPs_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 *ManagedOutboundIPs_STATUS_ARM) DeepCopyInto(out *ManagedOutboundIPs_STATUS_ARM) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedOutboundIPs_STATUS_ARM. +func (in *ManagedOutboundIPs_STATUS_ARM) DeepCopy() *ManagedOutboundIPs_STATUS_ARM { + if in == nil { + return nil + } + out := new(ManagedOutboundIPs_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 *MasterProfile) DeepCopyInto(out *MasterProfile) { + *out = *in + if in.DiskEncryptionSetReference != nil { + in, out := &in.DiskEncryptionSetReference, &out.DiskEncryptionSetReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *out = new(EncryptionAtHost) + **out = **in + } + if in.SubnetReference != nil { + in, out := &in.SubnetReference, &out.SubnetReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterProfile. +func (in *MasterProfile) DeepCopy() *MasterProfile { + if in == nil { + return nil + } + out := new(MasterProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MasterProfile_ARM) DeepCopyInto(out *MasterProfile_ARM) { + *out = *in + if in.DiskEncryptionSetId != nil { + in, out := &in.DiskEncryptionSetId, &out.DiskEncryptionSetId + *out = new(string) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *out = new(EncryptionAtHost) + **out = **in + } + if in.SubnetId != nil { + in, out := &in.SubnetId, &out.SubnetId + *out = new(string) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterProfile_ARM. +func (in *MasterProfile_ARM) DeepCopy() *MasterProfile_ARM { + if in == nil { + return nil + } + out := new(MasterProfile_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 *MasterProfile_STATUS) DeepCopyInto(out *MasterProfile_STATUS) { + *out = *in + if in.DiskEncryptionSetId != nil { + in, out := &in.DiskEncryptionSetId, &out.DiskEncryptionSetId + *out = new(string) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *out = new(EncryptionAtHost_STATUS) + **out = **in + } + if in.SubnetId != nil { + in, out := &in.SubnetId, &out.SubnetId + *out = new(string) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterProfile_STATUS. +func (in *MasterProfile_STATUS) DeepCopy() *MasterProfile_STATUS { + if in == nil { + return nil + } + out := new(MasterProfile_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 *MasterProfile_STATUS_ARM) DeepCopyInto(out *MasterProfile_STATUS_ARM) { + *out = *in + if in.DiskEncryptionSetId != nil { + in, out := &in.DiskEncryptionSetId, &out.DiskEncryptionSetId + *out = new(string) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *out = new(EncryptionAtHost_STATUS) + **out = **in + } + if in.SubnetId != nil { + in, out := &in.SubnetId, &out.SubnetId + *out = new(string) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterProfile_STATUS_ARM. +func (in *MasterProfile_STATUS_ARM) DeepCopy() *MasterProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(MasterProfile_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 *NetworkProfile) DeepCopyInto(out *NetworkProfile) { + *out = *in + if in.LoadBalancerProfile != nil { + in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile + *out = new(LoadBalancerProfile) + (*in).DeepCopyInto(*out) + } + if in.OutboundType != nil { + in, out := &in.OutboundType, &out.OutboundType + *out = new(OutboundType) + **out = **in + } + if in.PodCidr != nil { + in, out := &in.PodCidr, &out.PodCidr + *out = new(string) + **out = **in + } + if in.PreconfiguredNSG != nil { + in, out := &in.PreconfiguredNSG, &out.PreconfiguredNSG + *out = new(PreconfiguredNSG) + **out = **in + } + if in.ServiceCidr != nil { + in, out := &in.ServiceCidr, &out.ServiceCidr + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkProfile. +func (in *NetworkProfile) DeepCopy() *NetworkProfile { + if in == nil { + return nil + } + out := new(NetworkProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkProfile_ARM) DeepCopyInto(out *NetworkProfile_ARM) { + *out = *in + if in.LoadBalancerProfile != nil { + in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile + *out = new(LoadBalancerProfile_ARM) + (*in).DeepCopyInto(*out) + } + if in.OutboundType != nil { + in, out := &in.OutboundType, &out.OutboundType + *out = new(OutboundType) + **out = **in + } + if in.PodCidr != nil { + in, out := &in.PodCidr, &out.PodCidr + *out = new(string) + **out = **in + } + if in.PreconfiguredNSG != nil { + in, out := &in.PreconfiguredNSG, &out.PreconfiguredNSG + *out = new(PreconfiguredNSG) + **out = **in + } + if in.ServiceCidr != nil { + in, out := &in.ServiceCidr, &out.ServiceCidr + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkProfile_ARM. +func (in *NetworkProfile_ARM) DeepCopy() *NetworkProfile_ARM { + if in == nil { + return nil + } + out := new(NetworkProfile_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 *NetworkProfile_STATUS) DeepCopyInto(out *NetworkProfile_STATUS) { + *out = *in + if in.LoadBalancerProfile != nil { + in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile + *out = new(LoadBalancerProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.OutboundType != nil { + in, out := &in.OutboundType, &out.OutboundType + *out = new(OutboundType_STATUS) + **out = **in + } + if in.PodCidr != nil { + in, out := &in.PodCidr, &out.PodCidr + *out = new(string) + **out = **in + } + if in.PreconfiguredNSG != nil { + in, out := &in.PreconfiguredNSG, &out.PreconfiguredNSG + *out = new(PreconfiguredNSG_STATUS) + **out = **in + } + if in.ServiceCidr != nil { + in, out := &in.ServiceCidr, &out.ServiceCidr + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkProfile_STATUS. +func (in *NetworkProfile_STATUS) DeepCopy() *NetworkProfile_STATUS { + if in == nil { + return nil + } + out := new(NetworkProfile_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 *NetworkProfile_STATUS_ARM) DeepCopyInto(out *NetworkProfile_STATUS_ARM) { + *out = *in + if in.LoadBalancerProfile != nil { + in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile + *out = new(LoadBalancerProfile_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.OutboundType != nil { + in, out := &in.OutboundType, &out.OutboundType + *out = new(OutboundType_STATUS) + **out = **in + } + if in.PodCidr != nil { + in, out := &in.PodCidr, &out.PodCidr + *out = new(string) + **out = **in + } + if in.PreconfiguredNSG != nil { + in, out := &in.PreconfiguredNSG, &out.PreconfiguredNSG + *out = new(PreconfiguredNSG_STATUS) + **out = **in + } + if in.ServiceCidr != nil { + in, out := &in.ServiceCidr, &out.ServiceCidr + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkProfile_STATUS_ARM. +func (in *NetworkProfile_STATUS_ARM) DeepCopy() *NetworkProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(NetworkProfile_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 *OpenShiftCluster) DeepCopyInto(out *OpenShiftCluster) { + *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 OpenShiftCluster. +func (in *OpenShiftCluster) DeepCopy() *OpenShiftCluster { + if in == nil { + return nil + } + out := new(OpenShiftCluster) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *OpenShiftCluster) 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 *OpenShiftClusterList) DeepCopyInto(out *OpenShiftClusterList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]OpenShiftCluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftClusterList. +func (in *OpenShiftClusterList) DeepCopy() *OpenShiftClusterList { + if in == nil { + return nil + } + out := new(OpenShiftClusterList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *OpenShiftClusterList) 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 *OpenShiftClusterProperties_ARM) DeepCopyInto(out *OpenShiftClusterProperties_ARM) { + *out = *in + if in.ApiserverProfile != nil { + in, out := &in.ApiserverProfile, &out.ApiserverProfile + *out = new(APIServerProfile_ARM) + (*in).DeepCopyInto(*out) + } + if in.ClusterProfile != nil { + in, out := &in.ClusterProfile, &out.ClusterProfile + *out = new(ClusterProfile_ARM) + (*in).DeepCopyInto(*out) + } + if in.IngressProfiles != nil { + in, out := &in.IngressProfiles, &out.IngressProfiles + *out = make([]IngressProfile_ARM, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MasterProfile != nil { + in, out := &in.MasterProfile, &out.MasterProfile + *out = new(MasterProfile_ARM) + (*in).DeepCopyInto(*out) + } + if in.NetworkProfile != nil { + in, out := &in.NetworkProfile, &out.NetworkProfile + *out = new(NetworkProfile_ARM) + (*in).DeepCopyInto(*out) + } + if in.ServicePrincipalProfile != nil { + in, out := &in.ServicePrincipalProfile, &out.ServicePrincipalProfile + *out = new(ServicePrincipalProfile_ARM) + (*in).DeepCopyInto(*out) + } + if in.WorkerProfiles != nil { + in, out := &in.WorkerProfiles, &out.WorkerProfiles + *out = make([]WorkerProfile_ARM, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftClusterProperties_ARM. +func (in *OpenShiftClusterProperties_ARM) DeepCopy() *OpenShiftClusterProperties_ARM { + if in == nil { + return nil + } + out := new(OpenShiftClusterProperties_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 *OpenShiftClusterProperties_STATUS_ARM) DeepCopyInto(out *OpenShiftClusterProperties_STATUS_ARM) { + *out = *in + if in.ApiserverProfile != nil { + in, out := &in.ApiserverProfile, &out.ApiserverProfile + *out = new(APIServerProfile_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.ClusterProfile != nil { + in, out := &in.ClusterProfile, &out.ClusterProfile + *out = new(ClusterProfile_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.ConsoleProfile != nil { + in, out := &in.ConsoleProfile, &out.ConsoleProfile + *out = new(ConsoleProfile_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.IngressProfiles != nil { + in, out := &in.IngressProfiles, &out.IngressProfiles + *out = make([]IngressProfile_STATUS_ARM, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MasterProfile != nil { + in, out := &in.MasterProfile, &out.MasterProfile + *out = new(MasterProfile_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.NetworkProfile != nil { + in, out := &in.NetworkProfile, &out.NetworkProfile + *out = new(NetworkProfile_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.ProvisioningState != nil { + in, out := &in.ProvisioningState, &out.ProvisioningState + *out = new(ProvisioningState_STATUS) + **out = **in + } + if in.ServicePrincipalProfile != nil { + in, out := &in.ServicePrincipalProfile, &out.ServicePrincipalProfile + *out = new(ServicePrincipalProfile_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.WorkerProfiles != nil { + in, out := &in.WorkerProfiles, &out.WorkerProfiles + *out = make([]WorkerProfile_STATUS_ARM, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkerProfilesStatus != nil { + in, out := &in.WorkerProfilesStatus, &out.WorkerProfilesStatus + *out = make([]WorkerProfile_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 OpenShiftClusterProperties_STATUS_ARM. +func (in *OpenShiftClusterProperties_STATUS_ARM) DeepCopy() *OpenShiftClusterProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(OpenShiftClusterProperties_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 *OpenShiftCluster_STATUS) DeepCopyInto(out *OpenShiftCluster_STATUS) { + *out = *in + if in.ApiserverProfile != nil { + in, out := &in.ApiserverProfile, &out.ApiserverProfile + *out = new(APIServerProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.ClusterProfile != nil { + in, out := &in.ClusterProfile, &out.ClusterProfile + *out = new(ClusterProfile_STATUS) + (*in).DeepCopyInto(*out) + } + 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.ConsoleProfile != nil { + in, out := &in.ConsoleProfile, &out.ConsoleProfile + *out = new(ConsoleProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.IngressProfiles != nil { + in, out := &in.IngressProfiles, &out.IngressProfiles + *out = make([]IngressProfile_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MasterProfile != nil { + in, out := &in.MasterProfile, &out.MasterProfile + *out = new(MasterProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkProfile != nil { + in, out := &in.NetworkProfile, &out.NetworkProfile + *out = new(NetworkProfile_STATUS) + (*in).DeepCopyInto(*out) + } + if in.ProvisioningState != nil { + in, out := &in.ProvisioningState, &out.ProvisioningState + *out = new(ProvisioningState_STATUS) + **out = **in + } + if in.ServicePrincipalProfile != nil { + in, out := &in.ServicePrincipalProfile, &out.ServicePrincipalProfile + *out = new(ServicePrincipalProfile_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.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.WorkerProfiles != nil { + in, out := &in.WorkerProfiles, &out.WorkerProfiles + *out = make([]WorkerProfile_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkerProfilesStatus != nil { + in, out := &in.WorkerProfilesStatus, &out.WorkerProfilesStatus + *out = make([]WorkerProfile_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftCluster_STATUS. +func (in *OpenShiftCluster_STATUS) DeepCopy() *OpenShiftCluster_STATUS { + if in == nil { + return nil + } + out := new(OpenShiftCluster_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 *OpenShiftCluster_STATUS_ARM) DeepCopyInto(out *OpenShiftCluster_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + 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(OpenShiftClusterProperties_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 + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftCluster_STATUS_ARM. +func (in *OpenShiftCluster_STATUS_ARM) DeepCopy() *OpenShiftCluster_STATUS_ARM { + if in == nil { + return nil + } + out := new(OpenShiftCluster_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 *OpenShiftCluster_Spec) DeepCopyInto(out *OpenShiftCluster_Spec) { + *out = *in + if in.ApiserverProfile != nil { + in, out := &in.ApiserverProfile, &out.ApiserverProfile + *out = new(APIServerProfile) + (*in).DeepCopyInto(*out) + } + if in.ClusterProfile != nil { + in, out := &in.ClusterProfile, &out.ClusterProfile + *out = new(ClusterProfile) + (*in).DeepCopyInto(*out) + } + if in.IngressProfiles != nil { + in, out := &in.IngressProfiles, &out.IngressProfiles + *out = make([]IngressProfile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MasterProfile != nil { + in, out := &in.MasterProfile, &out.MasterProfile + *out = new(MasterProfile) + (*in).DeepCopyInto(*out) + } + if in.NetworkProfile != nil { + in, out := &in.NetworkProfile, &out.NetworkProfile + *out = new(NetworkProfile) + (*in).DeepCopyInto(*out) + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.ServicePrincipalProfile != nil { + in, out := &in.ServicePrincipalProfile, &out.ServicePrincipalProfile + *out = new(ServicePrincipalProfile) + (*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.WorkerProfiles != nil { + in, out := &in.WorkerProfiles, &out.WorkerProfiles + *out = make([]WorkerProfile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftCluster_Spec. +func (in *OpenShiftCluster_Spec) DeepCopy() *OpenShiftCluster_Spec { + if in == nil { + return nil + } + out := new(OpenShiftCluster_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 *OpenShiftCluster_Spec_ARM) DeepCopyInto(out *OpenShiftCluster_Spec_ARM) { + *out = *in + 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(OpenShiftClusterProperties_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 + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftCluster_Spec_ARM. +func (in *OpenShiftCluster_Spec_ARM) DeepCopy() *OpenShiftCluster_Spec_ARM { + if in == nil { + return nil + } + out := new(OpenShiftCluster_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 *ServicePrincipalProfile) DeepCopyInto(out *ServicePrincipalProfile) { + *out = *in + if in.ClientId != nil { + in, out := &in.ClientId, &out.ClientId + *out = new(string) + **out = **in + } + if in.ClientIdFromConfig != nil { + in, out := &in.ClientIdFromConfig, &out.ClientIdFromConfig + *out = new(genruntime.ConfigMapReference) + **out = **in + } + if in.ClientSecret != nil { + in, out := &in.ClientSecret, &out.ClientSecret + *out = new(genruntime.SecretReference) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalProfile. +func (in *ServicePrincipalProfile) DeepCopy() *ServicePrincipalProfile { + if in == nil { + return nil + } + out := new(ServicePrincipalProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicePrincipalProfile_ARM) DeepCopyInto(out *ServicePrincipalProfile_ARM) { + *out = *in + if in.ClientId != nil { + in, out := &in.ClientId, &out.ClientId + *out = new(string) + **out = **in + } + if in.ClientSecret != nil { + in, out := &in.ClientSecret, &out.ClientSecret + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalProfile_ARM. +func (in *ServicePrincipalProfile_ARM) DeepCopy() *ServicePrincipalProfile_ARM { + if in == nil { + return nil + } + out := new(ServicePrincipalProfile_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 *ServicePrincipalProfile_STATUS) DeepCopyInto(out *ServicePrincipalProfile_STATUS) { + *out = *in + if in.ClientId != nil { + in, out := &in.ClientId, &out.ClientId + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalProfile_STATUS. +func (in *ServicePrincipalProfile_STATUS) DeepCopy() *ServicePrincipalProfile_STATUS { + if in == nil { + return nil + } + out := new(ServicePrincipalProfile_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 *ServicePrincipalProfile_STATUS_ARM) DeepCopyInto(out *ServicePrincipalProfile_STATUS_ARM) { + *out = *in + if in.ClientId != nil { + in, out := &in.ClientId, &out.ClientId + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalProfile_STATUS_ARM. +func (in *ServicePrincipalProfile_STATUS_ARM) DeepCopy() *ServicePrincipalProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(ServicePrincipalProfile_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 *SystemData_STATUS) DeepCopyInto(out *SystemData_STATUS) { + *out = *in + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } + if in.CreatedBy != nil { + in, out := &in.CreatedBy, &out.CreatedBy + *out = new(string) + **out = **in + } + if in.CreatedByType != nil { + in, out := &in.CreatedByType, &out.CreatedByType + *out = new(SystemData_CreatedByType_STATUS) + **out = **in + } + if in.LastModifiedAt != nil { + in, out := &in.LastModifiedAt, &out.LastModifiedAt + *out = new(string) + **out = **in + } + if in.LastModifiedBy != nil { + in, out := &in.LastModifiedBy, &out.LastModifiedBy + *out = new(string) + **out = **in + } + if in.LastModifiedByType != nil { + in, out := &in.LastModifiedByType, &out.LastModifiedByType + *out = new(SystemData_LastModifiedByType_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemData_STATUS. +func (in *SystemData_STATUS) DeepCopy() *SystemData_STATUS { + if in == nil { + return nil + } + out := new(SystemData_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 *SystemData_STATUS_ARM) DeepCopyInto(out *SystemData_STATUS_ARM) { + *out = *in + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } + if in.CreatedBy != nil { + in, out := &in.CreatedBy, &out.CreatedBy + *out = new(string) + **out = **in + } + if in.CreatedByType != nil { + in, out := &in.CreatedByType, &out.CreatedByType + *out = new(SystemData_CreatedByType_STATUS) + **out = **in + } + if in.LastModifiedAt != nil { + in, out := &in.LastModifiedAt, &out.LastModifiedAt + *out = new(string) + **out = **in + } + if in.LastModifiedBy != nil { + in, out := &in.LastModifiedBy, &out.LastModifiedBy + *out = new(string) + **out = **in + } + if in.LastModifiedByType != nil { + in, out := &in.LastModifiedByType, &out.LastModifiedByType + *out = new(SystemData_LastModifiedByType_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemData_STATUS_ARM. +func (in *SystemData_STATUS_ARM) DeepCopy() *SystemData_STATUS_ARM { + if in == nil { + return nil + } + out := new(SystemData_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 *WorkerProfile) DeepCopyInto(out *WorkerProfile) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } + if in.DiskEncryptionSetReference != nil { + in, out := &in.DiskEncryptionSetReference, &out.DiskEncryptionSetReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.DiskSizeGB != nil { + in, out := &in.DiskSizeGB, &out.DiskSizeGB + *out = new(int) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *out = new(EncryptionAtHost) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubnetReference != nil { + in, out := &in.SubnetReference, &out.SubnetReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerProfile. +func (in *WorkerProfile) DeepCopy() *WorkerProfile { + if in == nil { + return nil + } + out := new(WorkerProfile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkerProfile_ARM) DeepCopyInto(out *WorkerProfile_ARM) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } + if in.DiskEncryptionSetId != nil { + in, out := &in.DiskEncryptionSetId, &out.DiskEncryptionSetId + *out = new(string) + **out = **in + } + if in.DiskSizeGB != nil { + in, out := &in.DiskSizeGB, &out.DiskSizeGB + *out = new(int) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *out = new(EncryptionAtHost) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubnetId != nil { + in, out := &in.SubnetId, &out.SubnetId + *out = new(string) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerProfile_ARM. +func (in *WorkerProfile_ARM) DeepCopy() *WorkerProfile_ARM { + if in == nil { + return nil + } + out := new(WorkerProfile_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 *WorkerProfile_STATUS) DeepCopyInto(out *WorkerProfile_STATUS) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } + if in.DiskEncryptionSetId != nil { + in, out := &in.DiskEncryptionSetId, &out.DiskEncryptionSetId + *out = new(string) + **out = **in + } + if in.DiskSizeGB != nil { + in, out := &in.DiskSizeGB, &out.DiskSizeGB + *out = new(int) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *out = new(EncryptionAtHost_STATUS) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubnetId != nil { + in, out := &in.SubnetId, &out.SubnetId + *out = new(string) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerProfile_STATUS. +func (in *WorkerProfile_STATUS) DeepCopy() *WorkerProfile_STATUS { + if in == nil { + return nil + } + out := new(WorkerProfile_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 *WorkerProfile_STATUS_ARM) DeepCopyInto(out *WorkerProfile_STATUS_ARM) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(int) + **out = **in + } + if in.DiskEncryptionSetId != nil { + in, out := &in.DiskEncryptionSetId, &out.DiskEncryptionSetId + *out = new(string) + **out = **in + } + if in.DiskSizeGB != nil { + in, out := &in.DiskSizeGB, &out.DiskSizeGB + *out = new(int) + **out = **in + } + if in.EncryptionAtHost != nil { + in, out := &in.EncryptionAtHost, &out.EncryptionAtHost + *out = new(EncryptionAtHost_STATUS) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubnetId != nil { + in, out := &in.SubnetId, &out.SubnetId + *out = new(string) + **out = **in + } + if in.VmSize != nil { + in, out := &in.VmSize, &out.VmSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerProfile_STATUS_ARM. +func (in *WorkerProfile_STATUS_ARM) DeepCopy() *WorkerProfile_STATUS_ARM { + if in == nil { + return nil + } + out := new(WorkerProfile_STATUS_ARM) + in.DeepCopyInto(out) + return out +} diff --git a/v2/api/redhatopenshift/versions_matrix.md b/v2/api/redhatopenshift/versions_matrix.md new file mode 100644 index 00000000000..2e114a5c11a --- /dev/null +++ b/v2/api/redhatopenshift/versions_matrix.md @@ -0,0 +1,42 @@ +| Type Definitions in package "redhatopenshift" | v1api20231122 | +|-----------------------------------------------|---------------| +| APIServerProfile | v1api20231122 | +| APIServerProfile_STATUS | v1api20231122 | +| APIVersion | v1api20231122 | +| ClusterProfile | v1api20231122 | +| ClusterProfile_STATUS | v1api20231122 | +| ConsoleProfile_STATUS | v1api20231122 | +| EffectiveOutboundIP_STATUS | v1api20231122 | +| EncryptionAtHost | v1api20231122 | +| EncryptionAtHost_STATUS | v1api20231122 | +| FipsValidatedModules | v1api20231122 | +| FipsValidatedModules_STATUS | v1api20231122 | +| IngressProfile | v1api20231122 | +| IngressProfile_STATUS | v1api20231122 | +| LoadBalancerProfile | v1api20231122 | +| LoadBalancerProfile_STATUS | v1api20231122 | +| ManagedOutboundIPs | v1api20231122 | +| ManagedOutboundIPs_STATUS | v1api20231122 | +| MasterProfile | v1api20231122 | +| MasterProfile_STATUS | v1api20231122 | +| NetworkProfile | v1api20231122 | +| NetworkProfile_STATUS | v1api20231122 | +| OpenShiftCluster | v1api20231122 | +| OpenShiftClusterProperties | v1api20231122 | +| OpenShiftClusterProperties_STATUS | v1api20231122 | +| OpenShiftCluster_STATUS | v1api20231122 | +| OpenShiftCluster_Spec | v1api20231122 | +| OutboundType | v1api20231122 | +| OutboundType_STATUS | v1api20231122 | +| PreconfiguredNSG | v1api20231122 | +| PreconfiguredNSG_STATUS | v1api20231122 | +| ProvisioningState_STATUS | v1api20231122 | +| ServicePrincipalProfile | v1api20231122 | +| ServicePrincipalProfile_STATUS | v1api20231122 | +| SystemData_CreatedByType_STATUS | v1api20231122 | +| SystemData_LastModifiedByType_STATUS | v1api20231122 | +| SystemData_STATUS | v1api20231122 | +| Visibility | v1api20231122 | +| Visibility_STATUS | v1api20231122 | +| WorkerProfile | v1api20231122 | +| WorkerProfile_STATUS | v1api20231122 | diff --git a/v2/azure-arm.yaml b/v2/azure-arm.yaml index 3429c973181..f466f6327e5 100644 --- a/v2/azure-arm.yaml +++ b/v2/azure-arm.yaml @@ -448,6 +448,12 @@ typeTransformers: remove: true because: These properties should be marked readonly + - group: redhatopenshift + name: OpenShiftClusterProperties + property: ProvisioningState + remove: true + because: This property should be marked readonly in Swagger + - group: search name: DataPlaneAuthOptions property: ApiKeyOnly @@ -2838,6 +2844,29 @@ objectModelConfiguration: ResourceGroup: $export: true $supportedFrom: v2.0.0-alpha.1 + redhatopenshift: + 2023-11-22: + OpenShiftCluster: + $export: true + $supportedFrom: v2.9.0 + WorkerProfile: + SubnetId: + $armReference: true + DiskEncryptionSetId: + $armReference: true + MasterProfile: + SubnetId: + $armReference: true + DiskEncryptionSetId: + $armReference: true + ClusterProfile: + PullSecret: + $isSecret: true + ServicePrincipalProfile: + ClientSecret: + $isSecret: true + ClientId: + $importConfigMapMode: optional search: 2022-09-01: SearchService: diff --git a/v2/internal/controllers/controller_resources_gen.go b/v2/internal/controllers/controller_resources_gen.go index 13ea0b90af0..8f89994699f 100644 --- a/v2/internal/controllers/controller_resources_gen.go +++ b/v2/internal/controllers/controller_resources_gen.go @@ -163,6 +163,9 @@ import ( operationalinsights_customizations "github.com/Azure/azure-service-operator/v2/api/operationalinsights/customizations" operationalinsights_v20210601 "github.com/Azure/azure-service-operator/v2/api/operationalinsights/v1api20210601" operationalinsights_v20210601s "github.com/Azure/azure-service-operator/v2/api/operationalinsights/v1api20210601/storage" + redhatopenshift_customizations "github.com/Azure/azure-service-operator/v2/api/redhatopenshift/customizations" + redhatopenshift_v20231122 "github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122" + redhatopenshift_v20231122s "github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122/storage" resources_customizations "github.com/Azure/azure-service-operator/v2/api/resources/customizations" resources_v20200601 "github.com/Azure/azure-service-operator/v2/api/resources/v1api20200601" resources_v20200601s "github.com/Azure/azure-service-operator/v2/api/resources/v1api20200601/storage" @@ -904,6 +907,33 @@ func getKnownStorageTypes() []*registration.StorageType { result = append(result, ®istration.StorageType{Obj: new(network_v20220701s.PublicIPPrefix)}) result = append(result, ®istration.StorageType{Obj: new(networkfrontdoor_v20220501s.WebApplicationFirewallPolicy)}) result = append(result, ®istration.StorageType{Obj: new(operationalinsights_v20210601s.Workspace)}) + result = append(result, ®istration.StorageType{ + Obj: new(redhatopenshift_v20231122s.OpenShiftCluster), + Indexes: []registration.Index{ + { + Key: ".spec.servicePrincipalProfile.clientIdFromConfig", + Func: indexRedhatopenshiftOpenShiftClusterClientIdFromConfig, + }, + { + Key: ".spec.servicePrincipalProfile.clientSecret", + Func: indexRedhatopenshiftOpenShiftClusterClientSecret, + }, + { + Key: ".spec.clusterProfile.pullSecret", + Func: indexRedhatopenshiftOpenShiftClusterPullSecret, + }, + }, + Watches: []registration.Watch{ + { + Type: &v1.Secret{}, + MakeEventHandler: watchSecretsFactory([]string{".spec.clusterProfile.pullSecret", ".spec.servicePrincipalProfile.clientSecret"}, &redhatopenshift_v20231122s.OpenShiftClusterList{}), + }, + { + Type: &v1.ConfigMap{}, + MakeEventHandler: watchConfigMapsFactory([]string{".spec.servicePrincipalProfile.clientIdFromConfig"}, &redhatopenshift_v20231122s.OpenShiftClusterList{}), + }, + }, + }) result = append(result, ®istration.StorageType{Obj: new(resources_v20200601s.ResourceGroup)}) result = append(result, ®istration.StorageType{Obj: new(search_v20220901s.SearchService)}) result = append(result, ®istration.StorageType{Obj: new(servicebus_v20211101s.Namespace)}) @@ -1756,6 +1786,8 @@ func getKnownTypes() []client.Object { result = append(result, new(networkfrontdoor_v20220501s.WebApplicationFirewallPolicy)) result = append(result, new(operationalinsights_v20210601.Workspace)) result = append(result, new(operationalinsights_v20210601s.Workspace)) + result = append(result, new(redhatopenshift_v20231122.OpenShiftCluster)) + result = append(result, new(redhatopenshift_v20231122s.OpenShiftCluster)) result = append(result, new(resources_v20200601.ResourceGroup)) result = append(result, new(resources_v20200601s.ResourceGroup)) result = append(result, new(search_v20220901.SearchService)) @@ -2077,6 +2109,8 @@ func createScheme() *runtime.Scheme { _ = networkfrontdoor_v20220501s.AddToScheme(scheme) _ = operationalinsights_v20210601.AddToScheme(scheme) _ = operationalinsights_v20210601s.AddToScheme(scheme) + _ = redhatopenshift_v20231122.AddToScheme(scheme) + _ = redhatopenshift_v20231122s.AddToScheme(scheme) _ = resources_v20200601.AddToScheme(scheme) _ = resources_v20200601s.AddToScheme(scheme) _ = search_v20220901.AddToScheme(scheme) @@ -2264,6 +2298,7 @@ func getResourceExtensions() []genruntime.ResourceExtension { result = append(result, &network_customizations.VirtualNetworksVirtualNetworkPeeringExtension{}) result = append(result, &networkfrontdoor_customizations.WebApplicationFirewallPolicyExtension{}) result = append(result, &operationalinsights_customizations.WorkspaceExtension{}) + result = append(result, &redhatopenshift_customizations.OpenShiftClusterExtension{}) result = append(result, &resources_customizations.ResourceGroupExtension{}) result = append(result, &search_customizations.SearchServiceExtension{}) result = append(result, &servicebus_customizations.NamespaceExtension{}) @@ -3391,6 +3426,51 @@ func indexNetworkDnsForwardingRuleSetsForwardingRuleIpAddressFromConfig(rawObj c return result } +// indexRedhatopenshiftOpenShiftClusterClientIdFromConfig an index function for redhatopenshift_v20231122s.OpenShiftCluster .spec.servicePrincipalProfile.clientIdFromConfig +func indexRedhatopenshiftOpenShiftClusterClientIdFromConfig(rawObj client.Object) []string { + obj, ok := rawObj.(*redhatopenshift_v20231122s.OpenShiftCluster) + if !ok { + return nil + } + if obj.Spec.ServicePrincipalProfile == nil { + return nil + } + if obj.Spec.ServicePrincipalProfile.ClientIdFromConfig == nil { + return nil + } + return obj.Spec.ServicePrincipalProfile.ClientIdFromConfig.Index() +} + +// indexRedhatopenshiftOpenShiftClusterClientSecret an index function for redhatopenshift_v20231122s.OpenShiftCluster .spec.servicePrincipalProfile.clientSecret +func indexRedhatopenshiftOpenShiftClusterClientSecret(rawObj client.Object) []string { + obj, ok := rawObj.(*redhatopenshift_v20231122s.OpenShiftCluster) + if !ok { + return nil + } + if obj.Spec.ServicePrincipalProfile == nil { + return nil + } + if obj.Spec.ServicePrincipalProfile.ClientSecret == nil { + return nil + } + return obj.Spec.ServicePrincipalProfile.ClientSecret.Index() +} + +// indexRedhatopenshiftOpenShiftClusterPullSecret an index function for redhatopenshift_v20231122s.OpenShiftCluster .spec.clusterProfile.pullSecret +func indexRedhatopenshiftOpenShiftClusterPullSecret(rawObj client.Object) []string { + obj, ok := rawObj.(*redhatopenshift_v20231122s.OpenShiftCluster) + if !ok { + return nil + } + if obj.Spec.ClusterProfile == nil { + return nil + } + if obj.Spec.ClusterProfile.PullSecret == nil { + return nil + } + return obj.Spec.ClusterProfile.PullSecret.Index() +} + // indexSqlServerAdministratorLoginPassword an index function for sql_v20211101s.Server .spec.administratorLoginPassword func indexSqlServerAdministratorLoginPassword(rawObj client.Object) []string { obj, ok := rawObj.(*sql_v20211101s.Server) diff --git a/v2/internal/controllers/crd_dataprotection_backupinstance_20231101_test.go b/v2/internal/controllers/crd_dataprotection_backupinstance_20231101_test.go index 503b95d2e72..e13e52998f2 100644 --- a/v2/internal/controllers/crd_dataprotection_backupinstance_20231101_test.go +++ b/v2/internal/controllers/crd_dataprotection_backupinstance_20231101_test.go @@ -89,27 +89,27 @@ func Test_DataProtection_BackupInstance_20231101_CRUD(t *testing.T) { trustedAccessRoleBinding := newBackupInstanceTrustedAccessRoleinding(tc, cluster, backupVault) // give permission to extension msi over SA - extensionRoleAssignment := newBackupInstanceRoleAssignment(tc, acct, "extensionroleassignment", saContributorRoleId) + extensionRoleAssignment := newRoleAssignment(tc, acct, "extensionroleassignment", saContributorRoleId) extensionRoleAssignment.Spec.PrincipalIdFromConfig = &genruntime.ConfigMapReference{ Name: extConfigMapName, Key: extPrincipalIdKey, } // give read permission to vault msi over cluster - clusterRoleAssignment := newBackupInstanceRoleAssignment(tc, cluster, "clusterroleassignment", readerRoleId) + clusterRoleAssignment := newRoleAssignment(tc, cluster, "clusterroleassignment", readerRoleId) clusterRoleAssignment.Spec.PrincipalIdFromConfig = &genruntime.ConfigMapReference{ Name: backupVaultConfigMapName, Key: backupVaultPrincipalIdKey, } // give cluster msi access over snapshot rg for pv creation - clusterMSIRoleAssignment := newBackupInstanceRoleAssignment(tc, rg, "clustermsiroleassignment", contributorRoleId) + clusterMSIRoleAssignment := newRoleAssignment(tc, rg, "clustermsiroleassignment", contributorRoleId) clusterMSIRoleAssignment.Spec.PrincipalIdFromConfig = &genruntime.ConfigMapReference{ Name: clusterConfigMapName, Key: clusterPrincipalIdKey, } // give read permission to vault msi over SRG - snapshotRGRoleAssignment := newBackupInstanceRoleAssignment(tc, rg, "snapshotrgroleassignment", readerRoleId) + snapshotRGRoleAssignment := newRoleAssignment(tc, rg, "snapshotrgroleassignment", readerRoleId) snapshotRGRoleAssignment.Spec.PrincipalIdFromConfig = &genruntime.ConfigMapReference{ Name: backupVaultConfigMapName, Key: backupVaultPrincipalIdKey, @@ -221,7 +221,7 @@ func checkProtectionSuccess(updated dataprotection.BackupVaultsBackupInstance) b status == dataprotection.ProtectionStatusDetails_Status_STATUS_ConfiguringProtection } -func newBackupInstanceRoleAssignment(tc *testcommon.KubePerTestContext, owner client.Object, name, role string) *authorization.RoleAssignment { +func newRoleAssignment(tc *testcommon.KubePerTestContext, owner client.Object, name, role string) *authorization.RoleAssignment { roleAssignment := &authorization.RoleAssignment{ ObjectMeta: tc.MakeObjectMeta(name), Spec: authorization.RoleAssignment_Spec{ diff --git a/v2/internal/controllers/crd_redhatopenshift_openshiftcluster_20230401_test.go b/v2/internal/controllers/crd_redhatopenshift_openshiftcluster_20230401_test.go new file mode 100644 index 00000000000..65ac3028a1f --- /dev/null +++ b/v2/internal/controllers/crd_redhatopenshift_openshiftcluster_20230401_test.go @@ -0,0 +1,168 @@ +/* +Copyright (c) Microsoft Corporation. +Licensed under the MIT license. +*/ + +package controllers_test + +import ( + "fmt" + "os" + "testing" + + "github.com/google/uuid" + . "github.com/onsi/gomega" + + network "github.com/Azure/azure-service-operator/v2/api/network/v1api20201101" + aro "github.com/Azure/azure-service-operator/v2/api/redhatopenshift/v1api20231122" + + "github.com/Azure/azure-service-operator/v2/internal/testcommon" + "github.com/Azure/azure-service-operator/v2/internal/util/to" +) + +type servicePrincipalDetails struct { + clientId string + objectId string + clientSecret string +} + +// TODO: To re-record this test, create a new service principal and save its details into the +// TODO: ARO_CLIENT_SECRET, ARO_OBJECT_ID, ARO_CLIENT_ID env variables +// TODO: This is required because the ARO resource requires a service principal for input currently. +// TODO: Hopefully we can revisit this in the future when they support other options. +func Test_RedHatOpenShift_OpenShiftCluster_CRUD(t *testing.T) { + t.Parallel() + + if *isLive { + t.Skip("ARO cluster test requires ServicePrincipal creation and referenced in the cluster object.") + } + + tc := globalTestContext.ForTest(t) + rg := tc.CreateTestResourceGroupAndWait() + + secretName := "aro-secret" + secretKey := "client-secret" + details := getIDs(tc) + // This is the RP principalId, no need to change this. + // This can be fetched by using `az ad sp list --display-name "Azure Red Hat OpenShift RP" --query "[0].id" -o tsv` command + azureRedHadOpenshiftRPIdentityPrincipalId := "50c17c64-bc11-4fdd-a339-0ecd396bf911" + + clientSecretRef := tc.CreateSimpleSecret(secretName, secretKey, details.clientSecret) + + serviceEndpoints := []network.ServiceEndpointPropertiesFormat{ + { + Service: to.Ptr("Microsoft.ContainerRegistry"), + }, + } + + vnet := newVNet(tc, testcommon.AsOwner(rg), []string{"10.100.0.0/15"}) + masterSubnet := newSubnet(tc, vnet, "10.100.76.0/24") + masterSubnet.Spec.ServiceEndpoints = serviceEndpoints + workerSubnet := newSubnet(tc, vnet, "10.100.70.0/23") + workerSubnet.Spec.ServiceEndpoints = serviceEndpoints + + contributorRoleId := fmt.Sprintf("/subscriptions/%s/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c", tc.AzureSubscription) + roleAssingmentToVnet := newRoleAssignment(tc, vnet, "roleassingment", contributorRoleId) + roleAssingmentToVnet.Spec.PrincipalId = to.Ptr(details.objectId) + + roleAssingmentFromRPtoVnet := newRoleAssignment(tc, vnet, "rollassginmentrp", contributorRoleId) + roleAssingmentFromRPtoVnet.Spec.PrincipalId = to.Ptr(azureRedHadOpenshiftRPIdentityPrincipalId) + + cluster := &aro.OpenShiftCluster{ + ObjectMeta: tc.MakeObjectMeta("aro-cluster"), + Spec: aro.OpenShiftCluster_Spec{ + Location: tc.AzureRegion, + Owner: testcommon.AsOwner(rg), + ApiserverProfile: &aro.APIServerProfile{ + Visibility: to.Ptr(aro.Visibility_Private), + }, + ClusterProfile: &aro.ClusterProfile{ + Domain: to.Ptr("aro-example.com"), + Version: to.Ptr("4.14.16"), + // This is RG below is created by the RP. + ResourceGroupId: to.Ptr(fmt.Sprintf("/subscriptions/%s/resourceGroups/%s", tc.AzureSubscription, tc.Namer.GenerateName("cluster-rg"))), + FipsValidatedModules: to.Ptr(aro.FipsValidatedModules_Disabled), + }, + IngressProfiles: []aro.IngressProfile{ + { + Name: to.Ptr("default"), + Visibility: to.Ptr(aro.Visibility_Private), + }, + }, + MasterProfile: &aro.MasterProfile{ + SubnetReference: tc.MakeReferenceFromResource(masterSubnet), + VmSize: to.Ptr("Standard_D8s_v3"), + EncryptionAtHost: to.Ptr(aro.EncryptionAtHost_Disabled), + }, + NetworkProfile: &aro.NetworkProfile{ + PodCidr: to.Ptr("10.128.0.0/14"), + ServiceCidr: to.Ptr("172.30.0.0/16"), + }, + ServicePrincipalProfile: &aro.ServicePrincipalProfile{ + ClientId: to.Ptr(details.clientId), + ClientSecret: &clientSecretRef, + }, + WorkerProfiles: []aro.WorkerProfile{ + { + Count: to.Ptr(3), + Name: to.Ptr("worker"), + SubnetReference: tc.MakeReferenceFromResource(workerSubnet), + VmSize: to.Ptr("Standard_D4s_v3"), + DiskSizeGB: to.Ptr(128), + EncryptionAtHost: to.Ptr(aro.EncryptionAtHost_Disabled), + }, + }, + }, + } + + tc.CreateResourcesAndWait( + vnet, + roleAssingmentToVnet, + roleAssingmentFromRPtoVnet, + workerSubnet, + masterSubnet, + cluster) + + tc.Expect(cluster.Status.Id).ToNot(BeNil()) + armId := *cluster.Status.Id + tc.Expect(armId).ToNot(BeNil()) + + tc.DeleteResourceAndWait(cluster) + + // Ensure that the resource was really deleted in Azure + exists, retryAfter, err := tc.AzureClient.CheckExistenceWithGetByID(tc.Ctx, armId, string(aro.APIVersion_Value)) + tc.Expect(err).ToNot(HaveOccurred()) + tc.Expect(retryAfter).To(BeZero()) + tc.Expect(exists).To(BeFalse()) +} + +func getIDs(tc *testcommon.KubePerTestContext) servicePrincipalDetails { + nilUUID := uuid.Nil.String() + + clientId := nilUUID + objectId := nilUUID + clientSecret := tc.Namer.GenerateSecretOfLength(40) + + if id := os.Getenv("ARO_CLIENT_ID"); id != "" { + clientId = id + tc.WithLiteralRedaction(clientId, nilUUID) + } + + if id := os.Getenv("ARO_OBJECT_ID"); id != "" { + objectId = id + tc.WithLiteralRedaction(objectId, nilUUID) + } + + if secret := os.Getenv("ARO_CLIENT_SECRET"); secret != "" { + clientSecret = secret + } + + // We redact the secret anyway since the value is non-deterministic in recording mode + tc.WithLiteralRedaction(clientSecret, "{REDACTED}") + + return servicePrincipalDetails{ + clientId: clientId, + objectId: objectId, + clientSecret: clientSecret, + } +} diff --git a/v2/internal/controllers/recordings/Test_RedHatOpenShift_OpenShiftCluster_CRUD.yaml b/v2/internal/controllers/recordings/Test_RedHatOpenShift_OpenShiftCluster_CRUD.yaml new file mode 100644 index 00000000000..c72728c144a --- /dev/null +++ b/v2/internal/controllers/recordings/Test_RedHatOpenShift_OpenShiftCluster_CRUD.yaml @@ -0,0 +1,6329 @@ +--- +version: 2 +interactions: + - id: 0 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 93 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: '{"location":"westus2","name":"asotest-rg-nsmdfx","tags":{"CreatedAt":"2001-02-03T04:05:06Z"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "93" + Content-Type: + - application/json + Test-Request-Hash: + - ab12197f8f2c8df832967373ab6b2e47f50d2a14f69a90de8c1d8a38264a5ea6 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx?api-version=2020-06-01 + method: PUT + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 276 + uncompressed: false + body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx","name":"asotest-rg-nsmdfx","type":"Microsoft.Resources/resourceGroups","location":"westus2","tags":{"CreatedAt":"2001-02-03T04:05:06Z"},"properties":{"provisioningState":"Succeeded"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "276" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 475F32F24BF54786BD92DDC5E3D2E1A2 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:10Z' + status: 200 OK + code: 200 + duration: 3.178072916s + - id: 1 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx?api-version=2020-06-01 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 276 + uncompressed: false + body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx","name":"asotest-rg-nsmdfx","type":"Microsoft.Resources/resourceGroups","location":"westus2","tags":{"CreatedAt":"2001-02-03T04:05:06Z"},"properties":{"provisioningState":"Succeeded"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "276" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 8B829842C5654BA69AE08099E76C98EE Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:16Z' + status: 200 OK + code: 200 + duration: 65.911834ms + - id: 2 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq?api-version=2020-11-01 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 240 + uncompressed: false + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.Network/virtualNetworks/asotest-vn-lzvddq'' under resource group ''asotest-rg-nsmdfx'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "240" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + X-Msedge-Ref: + - 'Ref A: EA84DA3EF8484E54A09B6A3595884E89 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:22Z' + status: 404 Not Found + code: 404 + duration: 584.49075ms + - id: 3 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 117 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: '{"location":"westus2","name":"asotest-vn-lzvddq","properties":{"addressSpace":{"addressPrefixes":["10.100.0.0/15"]}}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "117" + Content-Type: + - application/json + Test-Request-Hash: + - 6d9e0a86f6c982719f08ffe6459274cc670d89e84736a19fe2935827ff7fab79 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq?api-version=2020-11-01 + method: PUT + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 632 + uncompressed: false + body: "{\r\n \"name\": \"asotest-vn-lzvddq\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq\",\r\n \"etag\": \"W/\\\"05aa6043-2607-4dd8-9e7d-3eebe4dc2e43\\\"\",\r\n \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus2\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"resourceGuid\": \"4ca48f41-5248-4324-a18d-b54e7aabfde9\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.100.0.0/15\"\r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false\r\n }\r\n}" + headers: + Azure-Asyncnotification: + - Enabled + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus2/operations/13fe631c-9352-41d2-bb7c-1d4f86771aab?api-version=2020-11-01&t=638595441864727698&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=iesvmGp-hAxsBUZzU90IBd8y_K7wS2azqk6ifZO6AIbjQELZtFZIjYGq2FL0BEr6ctNZG9d6Zsk7KyFnixSkTp0A4FvLq0ibkSDg6gtcrDRxBjSqMNoDfMp2K9CqCd9JHz9TX50O02vPDiWHZ13881EHqRUWlNckC94vQ1P4e-ReyDxgw_DCygs-66ua5Csjzd6MoZjT_LvHZ8NdyQVj8a27CCskLiu9cOvjisU2mhtr0eIB147IL167nFDQp5EbluIvT_7EVmPiV-vm7bD5Gd5zBIqMaPpku6P2fulJB_fL2ZmIDUlFRqAE9rh5FsrFAzMqwo3TVj8wPqxeYjcYcQ&h=Rbw0BwbRg4s7fjo6kTTMxH5LfeOiFWkx88C5NUBGnUg + Cache-Control: + - no-cache + Content-Length: + - "632" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "3" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: F2CF93553BDC40799853D58E5A6EC699 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:23Z' + status: 201 Created + code: 201 + duration: 2.875297667s + - id: 4 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus2/operations/13fe631c-9352-41d2-bb7c-1d4f86771aab?api-version=2020-11-01&t=638595441864727698&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=iesvmGp-hAxsBUZzU90IBd8y_K7wS2azqk6ifZO6AIbjQELZtFZIjYGq2FL0BEr6ctNZG9d6Zsk7KyFnixSkTp0A4FvLq0ibkSDg6gtcrDRxBjSqMNoDfMp2K9CqCd9JHz9TX50O02vPDiWHZ13881EHqRUWlNckC94vQ1P4e-ReyDxgw_DCygs-66ua5Csjzd6MoZjT_LvHZ8NdyQVj8a27CCskLiu9cOvjisU2mhtr0eIB147IL167nFDQp5EbluIvT_7EVmPiV-vm7bD5Gd5zBIqMaPpku6P2fulJB_fL2ZmIDUlFRqAE9rh5FsrFAzMqwo3TVj8wPqxeYjcYcQ&h=Rbw0BwbRg4s7fjo6kTTMxH5LfeOiFWkx88C5NUBGnUg + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 29 + uncompressed: false + body: "{\r\n \"status\": \"Succeeded\"\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "29" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 22D819467FA84C429D9D2ECD461C2D90 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:31Z' + status: 200 OK + code: 200 + duration: 521.648333ms + - id: 5 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq?api-version=2020-11-01 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 633 + uncompressed: false + body: "{\r\n \"name\": \"asotest-vn-lzvddq\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq\",\r\n \"etag\": \"W/\\\"7fd5be87-ef0b-4c72-96d2-e971ee0c7cd5\\\"\",\r\n \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus2\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": \"4ca48f41-5248-4324-a18d-b54e7aabfde9\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.100.0.0/15\"\r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false\r\n }\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "633" + Content-Type: + - application/json; charset=utf-8 + Etag: + - W/"7fd5be87-ef0b-4c72-96d2-e971ee0c7cd5" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: DC61268A1D8B43B99A87518F6BB25000 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:32Z' + status: 200 OK + code: 200 + duration: 715.462417ms + - id: 6 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq?api-version=2020-11-01 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 633 + uncompressed: false + body: "{\r\n \"name\": \"asotest-vn-lzvddq\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq\",\r\n \"etag\": \"W/\\\"7fd5be87-ef0b-4c72-96d2-e971ee0c7cd5\\\"\",\r\n \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus2\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": \"4ca48f41-5248-4324-a18d-b54e7aabfde9\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.100.0.0/15\"\r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false\r\n }\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "633" + Content-Type: + - application/json; charset=utf-8 + Etag: + - W/"7fd5be87-ef0b-4c72-96d2-e971ee0c7cd5" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: E028F2C11C4B4724AF7A30FBD8C6898D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:34Z' + status: 200 OK + code: 200 + duration: 401.400375ms + - id: 7 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 143 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: '{"name":"asotest-subnet-uxsdco","properties":{"addressPrefix":"10.100.70.0/23","serviceEndpoints":[{"service":"Microsoft.ContainerRegistry"}]}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "143" + Content-Type: + - application/json + Test-Request-Hash: + - 67be0b9b34fdd5c4eaf4f9a1725bf1c80df1285092432f39024955535e4854f8 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco?api-version=2020-11-01 + method: PUT + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 767 + uncompressed: false + body: "{\r\n \"name\": \"asotest-subnet-uxsdco\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco\",\r\n \"etag\": \"W/\\\"2552fd4b-c8fe-47d9-8a91-c159168d7512\\\"\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"addressPrefix\": \"10.100.70.0/23\",\r\n \"serviceEndpoints\": [\r\n {\r\n \"provisioningState\": \"Updating\",\r\n \"service\": \"Microsoft.ContainerRegistry\",\r\n \"locations\": [\r\n \"*\"\r\n ]\r\n }\r\n ],\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\": \"Disabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" + headers: + Azure-Asyncnotification: + - Enabled + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus2/operations/3568a013-8653-4b27-ad85-36816de67bf9?api-version=2020-11-01&t=638595441983543801&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=u-l-qBBcMQgq1RuTVI43P4RDx71MvpXGSWeCadztYo5ZVQSVFXcJhKoXlUz7YPJSsd7njB4DuBVKQavQOrIAQCOOYuddJ2Knfux__xbeyWCobB1VeTqHJDHEm3hfAZdSPxk450fzEtUbDDrq02s5q_DSzhn-4YQhI7IDs_4ObvZGdMXVWcxUDnZgWUn4nzdlS0xMgvHoBnqMlfXNKfSkyEATGMBKlPV1fhENgE49W4kOSamgxeHrYFVnMvXrQaa6AnzmEQyfzhg7ikBs2TFnzWbEGGbjXfxHdhiSA9nuxhjn4yhVkVe7hNpubXX4d0lKbzToQ--hXYBnEOX5IDYWHA&h=o-lx0kWgQMbdXvEnUi4BDibUPR_K9aHaWvwVg6G-7dc + Cache-Control: + - no-cache + Content-Length: + - "767" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "3" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: ADD0834A8A9041ADBD44A766F097A848 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:37Z' + status: 201 Created + code: 201 + duration: 709.829834ms + - id: 8 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 143 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: '{"name":"asotest-subnet-nhqmss","properties":{"addressPrefix":"10.100.76.0/24","serviceEndpoints":[{"service":"Microsoft.ContainerRegistry"}]}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "143" + Content-Type: + - application/json + Test-Request-Hash: + - 87e9e79991684a6bd785525cf124e5d363ff3e387f508d0a16ad885cfcd01b49 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss?api-version=2020-11-01 + method: PUT + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 411 + uncompressed: false + body: "{\r\n \"error\": {\r\n \"code\": \"AnotherOperationInProgress\",\r\n \"message\": \"Another operation on this or dependent resource is in progress. To retrieve status of the operation use uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus2/operations/3568a013-8653-4b27-ad85-36816de67bf9?api-version=2020-11-01.\",\r\n \"details\": []\r\n }\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "411" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: DF9AF2895BF4469989A54227DF99292F Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:37Z' + status: 409 Conflict + code: 409 + duration: 1.15045925s + - id: 9 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus2/operations/3568a013-8653-4b27-ad85-36816de67bf9?api-version=2020-11-01&t=638595441983543801&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=u-l-qBBcMQgq1RuTVI43P4RDx71MvpXGSWeCadztYo5ZVQSVFXcJhKoXlUz7YPJSsd7njB4DuBVKQavQOrIAQCOOYuddJ2Knfux__xbeyWCobB1VeTqHJDHEm3hfAZdSPxk450fzEtUbDDrq02s5q_DSzhn-4YQhI7IDs_4ObvZGdMXVWcxUDnZgWUn4nzdlS0xMgvHoBnqMlfXNKfSkyEATGMBKlPV1fhENgE49W4kOSamgxeHrYFVnMvXrQaa6AnzmEQyfzhg7ikBs2TFnzWbEGGbjXfxHdhiSA9nuxhjn4yhVkVe7hNpubXX4d0lKbzToQ--hXYBnEOX5IDYWHA&h=o-lx0kWgQMbdXvEnUi4BDibUPR_K9aHaWvwVg6G-7dc + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 30 + uncompressed: false + body: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "30" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 0243A872900E4CAF9B71D6DD22FC976C Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:40Z' + status: 200 OK + code: 200 + duration: 487.304917ms + - id: 10 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 275 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: '{"name":"57f98aef-1007-5280-a2aa-01c5a2fc4f6d","properties":{"principalId":"50c17c64-bc11-4fdd-a339-0ecd396bf911","roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "275" + Content-Type: + - application/json + Test-Request-Hash: + - 984bc9a3e6d7a02bff874dc2f58ff51406409863b48f105a602083c757a5b436 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/57f98aef-1007-5280-a2aa-01c5a2fc4f6d?api-version=2020-08-01-preview + method: PUT + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 1013 + uncompressed: false + body: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c","principalId":"50c17c64-bc11-4fdd-a339-0ecd396bf911","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq","condition":null,"conditionVersion":null,"createdOn":"2001-02-03T04:05:06Z","updatedOn":"2001-02-03T04:05:06Z","createdBy":null,"updatedBy":"34e81c0e-d5e6-478f-8544-2686be295567","delegatedManagedIdentityResourceId":null,"description":null},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/57f98aef-1007-5280-a2aa-01c5a2fc4f6d","type":"Microsoft.Authorization/roleAssignments","name":"57f98aef-1007-5280-a2aa-01c5a2fc4f6d"}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "1013" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Set-Cookie: + - x-ms-gateway-slice=Production; path=/; secure; samesite=none; httponly + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: AF5C8C5EEE4B405B92287F13D29A48A6 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:37Z' + status: 201 Created + code: 201 + duration: 3.880786625s + - id: 11 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 275 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: '{"name":"c054cb24-28a4-5035-ae62-e5e1325bc96a","properties":{"principalId":"00000000-0000-0000-0000-000000000000","roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "275" + Content-Type: + - application/json + Test-Request-Hash: + - 18d554928135a9250e60baa107a0213f4eb1ecd64eabe29708aa72fb4d454ec7 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/c054cb24-28a4-5035-ae62-e5e1325bc96a?api-version=2020-08-01-preview + method: PUT + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 1013 + uncompressed: false + body: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c","principalId":"00000000-0000-0000-0000-000000000000","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq","condition":null,"conditionVersion":null,"createdOn":"2001-02-03T04:05:06Z","updatedOn":"2001-02-03T04:05:06Z","createdBy":null,"updatedBy":"34e81c0e-d5e6-478f-8544-2686be295567","delegatedManagedIdentityResourceId":null,"description":null},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/c054cb24-28a4-5035-ae62-e5e1325bc96a","type":"Microsoft.Authorization/roleAssignments","name":"c054cb24-28a4-5035-ae62-e5e1325bc96a"}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "1013" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Set-Cookie: + - x-ms-gateway-slice=Production; path=/; secure; samesite=none; httponly + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: AAEAB8795C43409280C06ACBBEA5CFFA Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:37Z' + status: 201 Created + code: 201 + duration: 4.197011875s + - id: 12 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/57f98aef-1007-5280-a2aa-01c5a2fc4f6d?api-version=2020-08-01-preview + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 1047 + uncompressed: false + body: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c","principalId":"50c17c64-bc11-4fdd-a339-0ecd396bf911","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq","condition":null,"conditionVersion":null,"createdOn":"2001-02-03T04:05:06Z","updatedOn":"2001-02-03T04:05:06Z","createdBy":"34e81c0e-d5e6-478f-8544-2686be295567","updatedBy":"34e81c0e-d5e6-478f-8544-2686be295567","delegatedManagedIdentityResourceId":null,"description":null},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/57f98aef-1007-5280-a2aa-01c5a2fc4f6d","type":"Microsoft.Authorization/roleAssignments","name":"57f98aef-1007-5280-a2aa-01c5a2fc4f6d"}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "1047" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Set-Cookie: + - x-ms-gateway-slice=Production; path=/; secure; samesite=none; httponly + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: F9A16EC61F4142028BFBC26378AF372C Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:46Z' + status: 200 OK + code: 200 + duration: 269.014ms + - id: 13 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/c054cb24-28a4-5035-ae62-e5e1325bc96a?api-version=2020-08-01-preview + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 1047 + uncompressed: false + body: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c","principalId":"00000000-0000-0000-0000-000000000000","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq","condition":null,"conditionVersion":null,"createdOn":"2001-02-03T04:05:06Z","updatedOn":"2001-02-03T04:05:06Z","createdBy":"34e81c0e-d5e6-478f-8544-2686be295567","updatedBy":"34e81c0e-d5e6-478f-8544-2686be295567","delegatedManagedIdentityResourceId":null,"description":null},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/c054cb24-28a4-5035-ae62-e5e1325bc96a","type":"Microsoft.Authorization/roleAssignments","name":"c054cb24-28a4-5035-ae62-e5e1325bc96a"}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "1047" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Set-Cookie: + - x-ms-gateway-slice=Production; path=/; secure; samesite=none; httponly + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 4A68167814504945B0D03DAFD30E2692 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:47Z' + status: 200 OK + code: 200 + duration: 271.771083ms + - id: 14 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/57f98aef-1007-5280-a2aa-01c5a2fc4f6d?api-version=2020-08-01-preview + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 1047 + uncompressed: false + body: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c","principalId":"50c17c64-bc11-4fdd-a339-0ecd396bf911","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq","condition":null,"conditionVersion":null,"createdOn":"2001-02-03T04:05:06Z","updatedOn":"2001-02-03T04:05:06Z","createdBy":"34e81c0e-d5e6-478f-8544-2686be295567","updatedBy":"34e81c0e-d5e6-478f-8544-2686be295567","delegatedManagedIdentityResourceId":null,"description":null},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/57f98aef-1007-5280-a2aa-01c5a2fc4f6d","type":"Microsoft.Authorization/roleAssignments","name":"57f98aef-1007-5280-a2aa-01c5a2fc4f6d"}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "1047" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Set-Cookie: + - x-ms-gateway-slice=Production; path=/; secure; samesite=none; httponly + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: B1B612DDFAC5419BA2E481007F66F6C4 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:47Z' + status: 200 OK + code: 200 + duration: 552.115792ms + - id: 15 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/c054cb24-28a4-5035-ae62-e5e1325bc96a?api-version=2020-08-01-preview + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 1047 + uncompressed: false + body: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c","principalId":"00000000-0000-0000-0000-000000000000","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq","condition":null,"conditionVersion":null,"createdOn":"2001-02-03T04:05:06Z","updatedOn":"2001-02-03T04:05:06Z","createdBy":"34e81c0e-d5e6-478f-8544-2686be295567","updatedBy":"34e81c0e-d5e6-478f-8544-2686be295567","delegatedManagedIdentityResourceId":null,"description":null},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/c054cb24-28a4-5035-ae62-e5e1325bc96a","type":"Microsoft.Authorization/roleAssignments","name":"c054cb24-28a4-5035-ae62-e5e1325bc96a"}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "1047" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Set-Cookie: + - x-ms-gateway-slice=Production; path=/; secure; samesite=none; httponly + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 6CBA681AB2474565A361B3973EA1D9E0 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:47Z' + status: 200 OK + code: 200 + duration: 262.935334ms + - id: 16 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus2/operations/3568a013-8653-4b27-ad85-36816de67bf9?api-version=2020-11-01&t=638595441983543801&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=u-l-qBBcMQgq1RuTVI43P4RDx71MvpXGSWeCadztYo5ZVQSVFXcJhKoXlUz7YPJSsd7njB4DuBVKQavQOrIAQCOOYuddJ2Knfux__xbeyWCobB1VeTqHJDHEm3hfAZdSPxk450fzEtUbDDrq02s5q_DSzhn-4YQhI7IDs_4ObvZGdMXVWcxUDnZgWUn4nzdlS0xMgvHoBnqMlfXNKfSkyEATGMBKlPV1fhENgE49W4kOSamgxeHrYFVnMvXrQaa6AnzmEQyfzhg7ikBs2TFnzWbEGGbjXfxHdhiSA9nuxhjn4yhVkVe7hNpubXX4d0lKbzToQ--hXYBnEOX5IDYWHA&h=o-lx0kWgQMbdXvEnUi4BDibUPR_K9aHaWvwVg6G-7dc + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 29 + uncompressed: false + body: "{\r\n \"status\": \"Succeeded\"\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "29" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: DCD664F8F468484885265416848B1EC9 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:51Z' + status: 200 OK + code: 200 + duration: 1.003406375s + - id: 17 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco?api-version=2020-11-01 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 769 + uncompressed: false + body: "{\r\n \"name\": \"asotest-subnet-uxsdco\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco\",\r\n \"etag\": \"W/\\\"ae3bc7c9-fcbc-41bd-8499-4f89536535a0\\\"\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.100.70.0/23\",\r\n \"serviceEndpoints\": [\r\n {\r\n \"provisioningState\": \"Succeeded\",\r\n \"service\": \"Microsoft.ContainerRegistry\",\r\n \"locations\": [\r\n \"*\"\r\n ]\r\n }\r\n ],\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\": \"Disabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "769" + Content-Type: + - application/json; charset=utf-8 + Etag: + - W/"ae3bc7c9-fcbc-41bd-8499-4f89536535a0" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: D4A5CBB829194F54A165CD198C3FEA81 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:53Z' + status: 200 OK + code: 200 + duration: 692.648916ms + - id: 18 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco?api-version=2020-11-01 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 769 + uncompressed: false + body: "{\r\n \"name\": \"asotest-subnet-uxsdco\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco\",\r\n \"etag\": \"W/\\\"ae3bc7c9-fcbc-41bd-8499-4f89536535a0\\\"\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.100.70.0/23\",\r\n \"serviceEndpoints\": [\r\n {\r\n \"provisioningState\": \"Succeeded\",\r\n \"service\": \"Microsoft.ContainerRegistry\",\r\n \"locations\": [\r\n \"*\"\r\n ]\r\n }\r\n ],\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\": \"Disabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "769" + Content-Type: + - application/json; charset=utf-8 + Etag: + - W/"ae3bc7c9-fcbc-41bd-8499-4f89536535a0" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: ECC3031B358B437E866C81AD31740857 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:54Z' + status: 200 OK + code: 200 + duration: 466.130417ms + - id: 19 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 143 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: '{"name":"asotest-subnet-nhqmss","properties":{"addressPrefix":"10.100.76.0/24","serviceEndpoints":[{"service":"Microsoft.ContainerRegistry"}]}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "143" + Content-Type: + - application/json + Test-Request-Hash: + - 87e9e79991684a6bd785525cf124e5d363ff3e387f508d0a16ad885cfcd01b49 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss?api-version=2020-11-01 + method: PUT + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 767 + uncompressed: false + body: "{\r\n \"name\": \"asotest-subnet-nhqmss\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss\",\r\n \"etag\": \"W/\\\"c12fc91d-8326-4450-9d81-0a0337cf5114\\\"\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"addressPrefix\": \"10.100.76.0/24\",\r\n \"serviceEndpoints\": [\r\n {\r\n \"provisioningState\": \"Updating\",\r\n \"service\": \"Microsoft.ContainerRegistry\",\r\n \"locations\": [\r\n \"*\"\r\n ]\r\n }\r\n ],\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\": \"Disabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" + headers: + Azure-Asyncnotification: + - Enabled + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus2/operations/86c0e62a-a383-4e5c-9026-9c1dbb0c9d3a?api-version=2020-11-01&t=638595442170257339&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=TZZy1nCifvCdP4bR_z8-nKiLOJ0beEcB7syqZ18klfGrMGqbCObjogfxljTpjAiUPjVo3Kou0sBGGo81psIFY8Qwj2MPSziIgotUub42E5r3z8eHdew2eo_0ZygzEwnk172_k8oT5b7RL0qOvGaKY3qbxkL4_OkWpvKhKWVkLWaKGVZMPQxo5Hui2Klp9cdzeZ4kYr4esDh1V07lWLIRYOs4hswu_TJwmy_SM699_uUsEVYgSjeNPQQ5YDe97CBpDgr9NmRQ7LBypchwPKQ_6TGh06surVugVui2Mdd5iXM9KOe8CGZg-cSJEeu8sC9F5Rae97Hww4vRO98TPU-oVQ&h=MbV7XJuW940G1Ov_IJHidWAJYAU4hAjRjXhtSV-Ules + Cache-Control: + - no-cache + Content-Length: + - "767" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "3" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 6509A34CDFE244FE8945169FCEAE7C7A Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:56Z' + status: 201 Created + code: 201 + duration: 1.005847s + - id: 20 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus2/operations/86c0e62a-a383-4e5c-9026-9c1dbb0c9d3a?api-version=2020-11-01&t=638595442170257339&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=TZZy1nCifvCdP4bR_z8-nKiLOJ0beEcB7syqZ18klfGrMGqbCObjogfxljTpjAiUPjVo3Kou0sBGGo81psIFY8Qwj2MPSziIgotUub42E5r3z8eHdew2eo_0ZygzEwnk172_k8oT5b7RL0qOvGaKY3qbxkL4_OkWpvKhKWVkLWaKGVZMPQxo5Hui2Klp9cdzeZ4kYr4esDh1V07lWLIRYOs4hswu_TJwmy_SM699_uUsEVYgSjeNPQQ5YDe97CBpDgr9NmRQ7LBypchwPKQ_6TGh06surVugVui2Mdd5iXM9KOe8CGZg-cSJEeu8sC9F5Rae97Hww4vRO98TPU-oVQ&h=MbV7XJuW940G1Ov_IJHidWAJYAU4hAjRjXhtSV-Ules + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 29 + uncompressed: false + body: "{\r\n \"status\": \"Succeeded\"\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "29" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 01808D0D8FB54D3BAFDDC3B75FF987F5 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:59Z' + status: 200 OK + code: 200 + duration: 589.753125ms + - id: 21 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss?api-version=2020-11-01 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 769 + uncompressed: false + body: "{\r\n \"name\": \"asotest-subnet-nhqmss\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss\",\r\n \"etag\": \"W/\\\"a8e268bb-2df1-4189-8cf2-bb167bfc16ff\\\"\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.100.76.0/24\",\r\n \"serviceEndpoints\": [\r\n {\r\n \"provisioningState\": \"Succeeded\",\r\n \"service\": \"Microsoft.ContainerRegistry\",\r\n \"locations\": [\r\n \"*\"\r\n ]\r\n }\r\n ],\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\": \"Disabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "769" + Content-Type: + - application/json; charset=utf-8 + Etag: + - W/"a8e268bb-2df1-4189-8cf2-bb167bfc16ff" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: BCF6450372DA4D5AAEBD257A46D49250 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:17:00Z' + status: 200 OK + code: 200 + duration: 442.387209ms + - id: 22 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss?api-version=2020-11-01 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 769 + uncompressed: false + body: "{\r\n \"name\": \"asotest-subnet-nhqmss\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss\",\r\n \"etag\": \"W/\\\"a8e268bb-2df1-4189-8cf2-bb167bfc16ff\\\"\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.100.76.0/24\",\r\n \"serviceEndpoints\": [\r\n {\r\n \"provisioningState\": \"Succeeded\",\r\n \"service\": \"Microsoft.ContainerRegistry\",\r\n \"locations\": [\r\n \"*\"\r\n ]\r\n }\r\n ],\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\": \"Disabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" + headers: + Cache-Control: + - no-cache + Content-Length: + - "769" + Content-Type: + - application/json; charset=utf-8 + Etag: + - W/"a8e268bb-2df1-4189-8cf2-bb167bfc16ff" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: B0A39ACE42324107B6DCDBF20500254D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:17:01Z' + status: 200 OK + code: 200 + duration: 704.921125ms + - id: 23 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 1179 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: '{"location":"westus2","name":"asotest-aro-cluster-uzditq","properties":{"apiserverProfile":{"visibility":"Private"},"clusterProfile":{"domain":"aro-example.com","fipsValidatedModules":"Disabled","resourceGroupId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-cluster-rg-kjzmai","version":"4.14.16"},"ingressProfiles":[{"name":"default","visibility":"Private"}],"masterProfile":{"encryptionAtHost":"Disabled","subnetId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss","vmSize":"Standard_D8s_v3"},"networkProfile":{"podCidr":"10.128.0.0/14","serviceCidr":"172.30.0.0/16"},"servicePrincipalProfile":{"clientId":"00000000-0000-0000-0000-000000000000","clientSecret":"{REDACTED}"},"workerProfiles":[{"count":3,"diskSizeGB":128,"encryptionAtHost":"Disabled","name":"worker","subnetId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco","vmSize":"Standard_D4s_v3"}]}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "1179" + Content-Type: + - application/json + Test-Request-Hash: + - dea53944549989890885894dbd0bdea081f30ffd23a832e79aafc1ceb82fccc4 + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.RedHatOpenShift/openShiftClusters/asotest-aro-cluster-uzditq?api-version=2023-11-22 + method: PUT + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 2480 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.RedHatOpenShift/openShiftClusters/asotest-aro-cluster-uzditq", + "name": "asotest-aro-cluster-uzditq", + "type": "Microsoft.RedHatOpenShift/openShiftClusters", + "location": "westus2", + "systemData": { + "createdBy": "harshdsingh@microsoft.com", + "createdByType": "User", + "createdAt": "2001-02-03T04:05:06Z", + "lastModifiedBy": "harshdsingh@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2001-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Creating", + "clusterProfile": { + "domain": "aro-example.com", + "version": "4.14.16", + "resourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asotest-cluster-rg-kjzmai", + "fipsValidatedModules": "Disabled" + }, + "consoleProfile": {}, + "servicePrincipalProfile": { + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16", + "outboundType": "Loadbalancer", + "loadBalancerProfile": { + "managedOutboundIps": { + "count": 1 + } + }, + "preconfiguredNSG": "Disabled" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss", + "encryptionAtHost": "Disabled" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 3, + "encryptionAtHost": "Disabled" + } + ], + "apiserverProfile": { + "visibility": "Private" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Private" + } + ] + } + } + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + Cache-Control: + - no-cache + Content-Length: + - "2480" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: C8BB7717F03B48BA87671DADE56404F9 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:16:37Z' + status: 201 Created + code: 201 + duration: 24.470401417s + - id: 24 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: C293AE39C9274DA7877F831FDED2BE30 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:17:27Z' + status: 200 OK + code: 200 + duration: 782.800959ms + - id: 25 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 5CD85716ECF94CB786ADF1D4F697AAEE Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:17:31Z' + status: 200 OK + code: 200 + duration: 870.828375ms + - id: 26 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: F9349A600BC546D584EFA471709F1CF0 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:17:37Z' + status: 200 OK + code: 200 + duration: 864.31925ms + - id: 27 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 129A74EC875246818D3B78D9D5DA5885 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:17:46Z' + status: 200 OK + code: 200 + duration: 758.26825ms + - id: 28 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "4" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 74C4135409E4494B95288DBA28883EF5 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:18:04Z' + status: 200 OK + code: 200 + duration: 822.775167ms + - id: 29 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "5" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 1751D288862B423DA5589C5B819BF022 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:18:38Z' + status: 200 OK + code: 200 + duration: 801.311959ms + - id: 30 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "6" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 33DAA004F5E34D52957D456320806A36 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:19:39Z' + status: 200 OK + code: 200 + duration: 786.686375ms + - id: 31 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "7" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 179610C702384EEF89CE2051CC740A26 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:20:41Z' + status: 200 OK + code: 200 + duration: 762.540625ms + - id: 32 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "8" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 6F47AB8F1B72423295846C9D76235DDC Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:21:42Z' + status: 200 OK + code: 200 + duration: 901.089208ms + - id: 33 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "9" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 5CC55FE5AA444DE8A8655B41D58925BA Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:22:44Z' + status: 200 OK + code: 200 + duration: 850.994291ms + - id: 34 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "10" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: B48F91ED606B41A2B242833E81EC9D4C Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:23:46Z' + status: 200 OK + code: 200 + duration: 889.433542ms + - id: 35 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "11" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 9DB855187E6F4EFEB2B5A63EAF5E124D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:24:48Z' + status: 200 OK + code: 200 + duration: 846.833125ms + - id: 36 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "12" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 53F3D0526EAF474C89DF61B28436B101 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:25:49Z' + status: 200 OK + code: 200 + duration: 798.164875ms + - id: 37 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "13" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: E0B39AF30D9D493DB7C36A1126A9ECEA Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:26:51Z' + status: 200 OK + code: 200 + duration: 754.733375ms + - id: 38 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "14" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 636E2F6828E24F8B89A0AA361D002F01 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:27:52Z' + status: 200 OK + code: 200 + duration: 756.882875ms + - id: 39 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "15" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 39E2929736E24EDABFCB218B1E396BD2 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:28:54Z' + status: 200 OK + code: 200 + duration: 870.341667ms + - id: 40 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "16" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: FB7B1BE94932469099919D3DD16A970D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:29:56Z' + status: 200 OK + code: 200 + duration: 802.734791ms + - id: 41 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "17" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: C0D74AE5A1124476B07AF310A20ED7D2 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:30:57Z' + status: 200 OK + code: 200 + duration: 752.043334ms + - id: 42 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "18" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 9C4733AB843540CF99D46DBC29CFD291 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:31:59Z' + status: 200 OK + code: 200 + duration: 824.747292ms + - id: 43 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "19" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: F0CB8DD0A50B4F6DA342CE9F3EF62A4D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:33:01Z' + status: 200 OK + code: 200 + duration: 812.468458ms + - id: 44 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "20" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 89A7D0435D524DC7A968F506E0C093DA Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:34:02Z' + status: 200 OK + code: 200 + duration: 827.300666ms + - id: 45 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "21" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 51B2DBEFC95C45878B0A7605A6DA8091 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:35:04Z' + status: 200 OK + code: 200 + duration: 791.74075ms + - id: 46 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "22" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: DCD0807CA95B4A54BFDAB6668B06CDF5 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:36:05Z' + status: 200 OK + code: 200 + duration: 843.413917ms + - id: 47 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "23" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 60510CADA1A14E498360852D23960BD8 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:37:07Z' + status: 200 OK + code: 200 + duration: 890.439708ms + - id: 48 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "24" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 7DE5C937B443432BB119174150368A43 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:38:09Z' + status: 200 OK + code: 200 + duration: 953.041708ms + - id: 49 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "25" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 04A6641E9E1F4997A0033491027AD9BA Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:39:11Z' + status: 200 OK + code: 200 + duration: 788.393875ms + - id: 50 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "26" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: E85C3FD1EA274E7A84F1E6EBEF243C1D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:40:12Z' + status: 200 OK + code: 200 + duration: 801.019958ms + - id: 51 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "27" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: DDF923BDAB6A430AAE0B69E941E5D091 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:41:14Z' + status: 200 OK + code: 200 + duration: 810.166292ms + - id: 52 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "28" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 7F5C982F263F43B29D3B22CAFBDB9976 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:42:16Z' + status: 200 OK + code: 200 + duration: 875.655292ms + - id: 53 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "29" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: B77EF469345D4B149DB97ACB227E1204 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:43:17Z' + status: 200 OK + code: 200 + duration: 824.776292ms + - id: 54 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "30" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: D92588BD0E2142EFAAD777E9A4EF2AA2 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:44:19Z' + status: 200 OK + code: 200 + duration: 802.231291ms + - id: 55 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "31" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 9C472134198243969E533BD634FA688A Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:45:21Z' + status: 200 OK + code: 200 + duration: 830.234208ms + - id: 56 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "32" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 1105CC47C96F45C18F252AC1EDDA7669 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:46:22Z' + status: 200 OK + code: 200 + duration: 798.169125ms + - id: 57 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "33" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: C3E0C40715524C3FBB257B49AC9CF501 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:47:24Z' + status: 200 OK + code: 200 + duration: 842.637708ms + - id: 58 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "34" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 1525DF3DA5B9427C819696DE5B72E559 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:48:26Z' + status: 200 OK + code: 200 + duration: 765.506083ms + - id: 59 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "35" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 41C033CD00D7403D89F54C266D6CF989 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:49:27Z' + status: 200 OK + code: 200 + duration: 818.008541ms + - id: 60 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "36" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 34019277095242C883F489384D825BA9 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:50:33Z' + status: 200 OK + code: 200 + duration: 1.290745916s + - id: 61 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "37" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: A96C9B9B6F6243A1857555CA91AD98D4 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:51:35Z' + status: 200 OK + code: 200 + duration: 852.959667ms + - id: 62 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "38" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 79BE745354B34B11B9A55651AC94D8C6 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:52:37Z' + status: 200 OK + code: 200 + duration: 886.668458ms + - id: 63 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "39" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: EE6CF6BE7FDA4F53AA17523E0A5EF571 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:53:39Z' + status: 200 OK + code: 200 + duration: 790.151625ms + - id: 64 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "40" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 246149F7D194448F92EBE5384D4B3FF6 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:54:40Z' + status: 200 OK + code: 200 + duration: 827.262959ms + - id: 65 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "41" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 0E36610C7F294EFB86AE7D84DA8995FE Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:55:42Z' + status: 200 OK + code: 200 + duration: 879.197291ms + - id: 66 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "42" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 7A65A9105AEA48579D3F6782A1D57959 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:56:44Z' + status: 200 OK + code: 200 + duration: 898.011875ms + - id: 67 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "43" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 6E3F1299B54B4C8EBD855A4F5FB7F515 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:57:46Z' + status: 200 OK + code: 200 + duration: 2.049822667s + - id: 68 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "44" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 569E84E98C5348978DF076E4E838642D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:58:50Z' + status: 200 OK + code: 200 + duration: 797.0635ms + - id: 69 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "45" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 8F700D73851B40549B5FB5E922553D61 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T02:59:51Z' + status: 200 OK + code: 200 + duration: 777.098916ms + - id: 70 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "46" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 530BDE4CFBC647B88326876ECF03023C Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:00:53Z' + status: 200 OK + code: 200 + duration: 840.803625ms + - id: 71 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "47" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 6169674209A641D5A54C2A417E03F48B Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:01:55Z' + status: 200 OK + code: 200 + duration: 879.331083ms + - id: 72 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "48" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: E6BBB46D5A0746D6BEE6A56A8EBDB0E4 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:02:56Z' + status: 200 OK + code: 200 + duration: 786.321208ms + - id: 73 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "49" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: A09FFFE76A5A45108D0DA8024AFCEA13 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:03:58Z' + status: 200 OK + code: 200 + duration: 767.251084ms + - id: 74 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "50" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: AC734DCFA38F4D4FA84ED46C67691041 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:05:00Z' + status: 200 OK + code: 200 + duration: 818.674875ms + - id: 75 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "51" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Creating", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 4564DF20F2D14349BB5E854D0A7B6A20 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:06:01Z' + status: 200 OK + code: 200 + duration: 2.002714375s + - id: 76 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "52" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54?api-version=2023-11-22&t=638595442221602513&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=IOkb2ssyUqMGzKvCPL300p_d7u6G9_6Oij0GNDFnkZRp1PXFdf01uhmOCZ9hyNMnrWDF-NBlpDS6KlyDAejusDgb-9p0Bo4DM4TKQW5MSG_Nm0pxJRNKAd2EFuEl1GMuPpdOEwhzzmP8UF1yyMY2e5ERqQ9_ON3h6wsR28DQzTWqkrWx61VwIDEm4nqEhZd_ucA46M2Gkkb9CBubpl07HxU2Zui14Vn0BAJQiZsGp2uM7xiowm03z7NBnEqARyVwtDE4kUifpYGsvgzs-1jAIYOqYKVtsLx1d_641owqRztVSJAMPzfqNYwJLL27-YiQZ7sAjklvxRdGAFDD1T1P5w&h=Ofeh5opC1q7rUKtoVIg3BOAuhfeoYRIeM1Tnb6oC-00 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 355 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/8d0d1c94-0cbc-4852-abe1-73184054cd54", + "name": "8d0d1c94-0cbc-4852-abe1-73184054cd54", + "status": "Succeeded", + "startTime": "2001-02-03T04:05:06Z", + "endTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "355" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: EFAAF1CF74E1441AA165F511AB355744 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:05Z' + status: 200 OK + code: 200 + duration: 783.12425ms + - id: 77 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.RedHatOpenShift/openShiftClusters/asotest-aro-cluster-uzditq?api-version=2023-11-22 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 4457 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.RedHatOpenShift/openShiftClusters/asotest-aro-cluster-uzditq", + "name": "asotest-aro-cluster-uzditq", + "type": "Microsoft.RedHatOpenShift/openShiftClusters", + "location": "westus2", + "systemData": { + "createdBy": "harshdsingh@microsoft.com", + "createdByType": "User", + "createdAt": "2001-02-03T04:05:06Z", + "lastModifiedBy": "harshdsingh@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2001-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "aro-example.com", + "version": "4.14.16", + "resourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asotest-cluster-rg-kjzmai", + "fipsValidatedModules": "Disabled" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.aro-example.com/" + }, + "servicePrincipalProfile": { + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16", + "outboundType": "Loadbalancer", + "loadBalancerProfile": { + "managedOutboundIps": { + "count": 1 + }, + "effectiveOutboundIps": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asotest-cluster-rg-kjzmai/providers/Microsoft.Network/publicIPAddresses/56203ad9-bc2e-4fa4-ab22-5f6f763d7411-outbound-pip-v4" + } + ] + }, + "preconfiguredNSG": "Disabled" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss", + "encryptionAtHost": "Disabled" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 3, + "encryptionAtHost": "Disabled" + } + ], + "workerProfilesStatus": [ + { + "name": "asotest-aro-cluster-u-f88v8-worker-westus21", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 1, + "encryptionAtHost": "Disabled" + }, + { + "name": "asotest-aro-cluster-u-f88v8-worker-westus22", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 1, + "encryptionAtHost": "Disabled" + }, + { + "name": "asotest-aro-cluster-u-f88v8-worker-westus23", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 1, + "encryptionAtHost": "Disabled" + } + ], + "apiserverProfile": { + "visibility": "Private", + "url": "https://api.aro-example.com:6443/", + "ip": "10.100.76.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Private", + "ip": "10.100.71.254" + } + ] + } + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "4457" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 641479ABD85747BBB9BABAC471CF7F35 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:07Z' + status: 200 OK + code: 200 + duration: 1.590429833s + - id: 78 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.RedHatOpenShift/openShiftClusters/asotest-aro-cluster-uzditq?api-version=2023-11-22 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 4457 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.RedHatOpenShift/openShiftClusters/asotest-aro-cluster-uzditq", + "name": "asotest-aro-cluster-uzditq", + "type": "Microsoft.RedHatOpenShift/openShiftClusters", + "location": "westus2", + "systemData": { + "createdBy": "harshdsingh@microsoft.com", + "createdByType": "User", + "createdAt": "2001-02-03T04:05:06Z", + "lastModifiedBy": "harshdsingh@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2001-02-03T04:05:06Z" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "aro-example.com", + "version": "4.14.16", + "resourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asotest-cluster-rg-kjzmai", + "fipsValidatedModules": "Disabled" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.aro-example.com/" + }, + "servicePrincipalProfile": { + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16", + "outboundType": "Loadbalancer", + "loadBalancerProfile": { + "managedOutboundIps": { + "count": 1 + }, + "effectiveOutboundIps": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asotest-cluster-rg-kjzmai/providers/Microsoft.Network/publicIPAddresses/56203ad9-bc2e-4fa4-ab22-5f6f763d7411-outbound-pip-v4" + } + ] + }, + "preconfiguredNSG": "Disabled" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss", + "encryptionAtHost": "Disabled" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 3, + "encryptionAtHost": "Disabled" + } + ], + "workerProfilesStatus": [ + { + "name": "asotest-aro-cluster-u-f88v8-worker-westus21", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 1, + "encryptionAtHost": "Disabled" + }, + { + "name": "asotest-aro-cluster-u-f88v8-worker-westus22", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 1, + "encryptionAtHost": "Disabled" + }, + { + "name": "asotest-aro-cluster-u-f88v8-worker-westus23", + "vmSize": "Standard_D4s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco", + "count": 1, + "encryptionAtHost": "Disabled" + } + ], + "apiserverProfile": { + "visibility": "Private", + "url": "https://api.aro-example.com:6443/", + "ip": "10.100.76.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Private", + "ip": "10.100.71.254" + } + ] + } + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "4457" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 77A7156EAFE948F386173AEC9B83F6E0 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:10Z' + status: 200 OK + code: 200 + duration: 1.203190625s + - id: 79 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.RedHatOpenShift/openShiftClusters/asotest-aro-cluster-uzditq?api-version=2023-11-22 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + Cache-Control: + - no-cache + Content-Length: + - "0" + Content-Type: + - application/json + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationresults/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378993009&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=yLzZDrXLKqopNoiBVanMy8PkS_eFBfQEiHBLPTTT21hmy1NeqzM2_29T6GLNiDNo_kHr0VzXxK59_34NP-pjmftcFOtCNOgTWfTHqpsepP8FIjjGPSPMdyX_i2pkCHbPOVWzKsXtcOrSKcm0FyzwT55aSOn53yrJiD8rVLEqvt1FyKjjFJbfW7aPyWYoEHAKGN3nGCkt5f1FHkS2aKc7z2mEfSqsQ1Kk8-J_XcKHLOCHxBV14HURhkuAVG5tVPu1V52xH9yYPDePUxD9CasGo1XB1lzOSz7FTYSQqBMxfRd1LMcaAwiEbC0652Lv_gElpJrDCsg4YeKrMQA411IwcA&h=dQAOQ8l6qD9L5UupVjkXAlOOb5BvJ0G57grvZ2m2BR4 + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 839436C383884C358612D943D0E7878D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:15Z' + status: 202 Accepted + code: 202 + duration: 2.297397417s + - id: 80 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 1A692446EBED4EE292E178A10B278211 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:21Z' + status: 200 OK + code: 200 + duration: 768.267458ms + - id: 81 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: B98D71B39D8C440AB8662CB80F2DE4AD Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:24Z' + status: 200 OK + code: 200 + duration: 824.02475ms + - id: 82 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 88150B0A23F14C50A32DCA5D18AFE3C5 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:30Z' + status: 200 OK + code: 200 + duration: 830.113416ms + - id: 83 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: B0A93F8F4AB04EC3996B8BC14858111A Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:40Z' + status: 200 OK + code: 200 + duration: 854.331125ms + - id: 84 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "4" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 4193180963834E219F4EF8F7C4B8B41C Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:07:57Z' + status: 200 OK + code: 200 + duration: 860.750667ms + - id: 85 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "5" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 87DFF022FF024403BBBC85A3870DFB2D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:08:31Z' + status: 200 OK + code: 200 + duration: 809.054459ms + - id: 86 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "6" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: B265B690E91C4F8EA079D4AB7E700D0F Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:09:33Z' + status: 200 OK + code: 200 + duration: 790.027833ms + - id: 87 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "7" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 558BA37ABA494F1796138D41F7D51049 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:10:34Z' + status: 200 OK + code: 200 + duration: 780.645125ms + - id: 88 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "8" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: CC430F80C9464BFEB93A724207D41CD7 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:11:36Z' + status: 200 OK + code: 200 + duration: 767.919042ms + - id: 89 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "9" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: EDDE0D584D8146D8901FBC5CA10E005F Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:12:38Z' + status: 200 OK + code: 200 + duration: 787.545708ms + - id: 90 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "10" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 5E6731F476F64AFF87A43A1281A80BAF Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:13:39Z' + status: 200 OK + code: 200 + duration: 844.717542ms + - id: 91 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "11" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 38637CBA1F7240908123D68BDEACFE7E Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:14:41Z' + status: 200 OK + code: 200 + duration: 863.275667ms + - id: 92 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "12" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 04070EE6B30D4D23B4B335B135D7C83D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:15:43Z' + status: 200 OK + code: 200 + duration: 916.682917ms + - id: 93 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "13" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 6D0ABD06FD45451CB80BE395CF808557 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:16:44Z' + status: 200 OK + code: 200 + duration: 844.795041ms + - id: 94 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "14" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: F3C43810107C4AD3BE2003485FCCE3FC Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:17:46Z' + status: 200 OK + code: 200 + duration: 795.756625ms + - id: 95 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "15" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 305 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Deleting", + "startTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "305" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 533200350D804AF884EFA1D992ADAC73 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:18:48Z' + status: 200 OK + code: 200 + duration: 815.507458ms + - id: 96 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "16" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4?api-version=2023-11-22&t=638595472378837858&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=gwi5oJSRUdXpDQWsMCWPISWtdRmNZNbzt9Ju1rPaTSHT4WgpJw7372YdPghSgOlclPMMihgE9tYABl-tUa2uwp8ZnmQV84SpddKnde88n2oAoua-HIurRC7SPHtXowoLgM2CPICZO2tXVZlrdmJi7wYEIpWp3KKi_TwEU2Fw7NcfJA7p1zwdGLnixU9snmLsezRJOYOl87wbNoBYXixa3o3ffxACKL-t8jJvkF8hR4zIjbkGZcAEeUQF0UGOPNZkmoCua8jKq_TB4SDPNdHqM2MPQXqUL-ZFZ75m4WQkE1_QIgV8BgVaCBkQY70EqE5JymrqD8rS_hnRP_R4lrJu3w&h=ZauVizW49p7pqd0ZeyiFJ8bfdCLmrA0f6amDIB_taws + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 355 + uncompressed: false + body: | + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.redhatopenshift/locations/westus2/operationsstatus/04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "name": "04b66189-275a-4ec5-9ee7-6e91063cf5a4", + "status": "Succeeded", + "startTime": "2001-02-03T04:05:06Z", + "endTime": "2001-02-03T04:05:06Z" + } + headers: + Cache-Control: + - no-cache + Content-Length: + - "355" + Content-Type: + - application/json + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 9C33ED10F2D24AD6A2679755BE5A684D Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:19:49Z' + status: 200 OK + code: 200 + duration: 753.225375ms + - id: 97 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.RedHatOpenShift/openShiftClusters/asotest-aro-cluster-uzditq?api-version=2023-11-22 + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 259 + uncompressed: false + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.RedHatOpenShift/OpenShiftClusters/asotest-aro-cluster-uzditq'' under resource group ''asotest-rg-nsmdfx'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "259" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + X-Msedge-Ref: + - 'Ref A: 631CB0AEF1BB42D49E05C231B8115956 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:19:55Z' + status: 404 Not Found + code: 404 + duration: 337.930084ms + - id: 98 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx?api-version=2020-06-01 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 38BFA26E18554792934A971763A28771 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:19:56Z' + status: 202 Accepted + code: 202 + duration: 4.886365875s + - id: 99 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480220468038&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=F6CFIc0AgdxzBBXRk796Ndop4Qe9CzasxRH1forDqNUZ1vWs8ffgpf5Gh_WzGrcY10S2f3gLKVQHTZC2Fq2KpBYMgyPj_IDQF7Qv0TgF_25c7szG4x02GzePHrK-WfhzRX7oOgkD_lacmB3sxO9V43A8MbdOVM50vpEa1PTpTmCW3rpNJt-sUlrJQNz4Gydxa07jqnxCdKMsR5qlHkMhsGtiJ33pfckZrT_UMYef-FTZKRInhPY6ShM3g6YnlF2lCAjey5uKFb-meTZj3La3XzIW1emEAy4xIKaG2PZp-f-wPHMbO2DHkRc9T5Axew4X2oAkIi-KDDhJ5CcdeQB7Sw&h=dRszUhCllvZU-8d0sPCrAEBbTSNEPd2lQ-ZStCXnCcg + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 27BFE45A675849739E44E361DB410A36 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:20:21Z' + status: 202 Accepted + code: 202 + duration: 924.614667ms + - id: 100 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480389126230&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=1Pxk9_DckzW3h2ruagRGXuNqlNM0oYyrdqA8l5Xq6ps7BelEHCztyAQnsC_ahygecIU2MLKC76SoMmEP9HzS5Z4T2x_UL7abpCmdWmQsxw0sUvad4A_kCDdwwqNmEAuyQyceNdRlJ6dkkw8_bZYsNFBJnZoQcPQug9ip66X3UomSyAw6uXIkzoBCihGAVwvIYYMfvlY9aH25si88DXVno5AKYUI1g6GKHdF_L3BVytCimA3rXUCohmtR0brrwtlWSjZHzx3tk4mXfJc4IFADYW1Mhz7u9lfmLphb4sSXy01fCQ9vg-j7f8buWAmETY-LTPnTn5SNwPEO1pdyNr1yaQ&h=7A4dCT28bgC1sEdbf48urOoWB-PsFYDHZxsBqsNkcfY + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 71C2E52C86FE4575AED109B6737470F6 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:20:38Z' + status: 202 Accepted + code: 202 + duration: 1.051605375s + - id: 101 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480560077921&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=oxrBF60qH-CnwQ6Xg1F9vtb0eHs4gA_R8BtjysXCDUJNrfY7AYMam9omLOPUBT-9ddtr5sED7TgP2QcKA1x5lZnEDQ4ImgSwZfc0buc2_qh0sbNAK4Xf4qThHgdw7bhwB6emCZiyu3JY9jjW96KG4DO3-2Han80uTyggOrfrfIrZ4V3oXTurG6uu6ND_U3SNGH1TJMQkiryJCc5Tt0RtI_JOD3gZl4WtffrSg9-hrmC9esjB6W8pUM-QotM54X5mvSByMK_PEXsYNXwPUmZXuJepcxaR4HFPXmR2V4-GN7B3ZglbUD6dNQEkKzW3xdWNC6WTG--zPTSh3R3mpaKSsA&h=WZI_GeUAbzwp4HcYbqCmIfdVIkNzdGGCl3Kqk03naR8 + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 0F0FFD9C360D40269C6CA0DA114D5EE3 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:20:55Z' + status: 202 Accepted + code: 202 + duration: 932.635208ms + - id: 102 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480729096026&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=QPY31Qzj_p7brf84xic8S6rTHsu5fHxIG74woY1tc83hKrDLH5QXclUkIVx1tI4QkAw0EhESAhvl4ecC2jirPnaAKep94IDEZ47WHFgY9GMIdDzxZABLGbF-rhfSgCxekuiBG5YB2JBcaiJPpG7mPjZoqLfLnjpjjLBwB2hOnrmIH8PJAijTxcrH4HCN429UlCHfhEg7SCaTrxphgHH3gpBdFBecv05drSWauvlfwBBfymF7Hbai_NMBV5Uz8EjIo_73WpyMObtOrnteH89pnwdwmhkKLrbenRlxSWPmkspv7BaTCv8NsKrEANDNS0XbQhNyxn0W4weXPs2QuV011Q&h=xhrwrvRCyQyxNCwAyTgha8UGC1uZU7y4_7bqDepchpo + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: F6DCFC48C7D8421391D910C769F640E2 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:21:12Z' + status: 202 Accepted + code: 202 + duration: 948.154041ms + - id: 103 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "4" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480898408547&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=hmeag0iBzDbybxqQ9GV5KGtCEfiBn62fXHaIpKPRng-7Mp9CokjKJ1EkSsnOcvJRar7eDGg77tILYuiAwrSY2-0n2YW7qmxWWQ0rfrW9zLxFspS1FX57ycR_wcIKRPtTE_1vkmYHOZI9ExHxXsBgcVAO6Lq3XJjWg1XtYBLOuSJauZQUsMQdBWHhVELvCkWX_xt-LEnpunKzdYeY3T9NAOs3EBn-hIocvteerTeKaPOKZwHjAddKcQzqj34J1qdKeX4Z8jy9rNvxUya9X3rlGAcWDOd7XEuOUUteTK1HbXhLvxO4IyupIlmEP4EpFXl79iOb2xFFX6jKmMmt3jrIWA&h=a84_E32ikswQRC7iAPagYMhN2iSdZIV8g_0O48tcs04 + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: D54479AFC5C4492A871E3EBC88E26565 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:21:28Z' + status: 202 Accepted + code: 202 + duration: 933.844208ms + - id: 104 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "5" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595481066924736&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=pN_zjYphxNOoXmIdTiDtdcI1S_fakFH2MLrF50ATvNr3JxcDwDCiXyXiQCFEi3v55ZGyPDb_0DK-BqG-3_Pf44_Zdigs2erxS0xmFf2WILXrW0V0FLb3qW4ht1hL651RRcPIGEs_rD822jPr-0eHUwLn8JYW1B_XuC9xBO7Gl7Yu3zTn2TBNkOH8NT_lCI95v6aSnSdm9yquNDZ--HED8_AGOwfNX-tXUBnMBsjTIakjVPBw8icDWo73IxCfeL7Lda2koA849w0Ez8TVNkni4XuvK9tYdJx8RWcCsWQyay4uyLvzTVHrwxqSxLOeholGn32NfnqRtBU-Cs0zxhZ1-A&h=Kx7crbQiWvuhk5Nn-GS6Q5uOpBLTmvprwyJ7rNJ28_4 + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: E44180C81EC6442CB8DD1627684641C1 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:21:45Z' + status: 202 Accepted + code: 202 + duration: 1.000288833s + - id: 105 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "6" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595481237950832&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=AQ3Fbs0BLo_djnKWh1-Dlp5N7uqce4iFeYzbrJNWSLyXzWsnLIab4k9Lt6X0nLbBdmVxRA_2VOUda3iFftthodl8BJGChRfSqQ74AMDnS7a7fEv3Ql9baJfdmyv7cY8qCGzh-0nKQZ7q8gsw-MXZ-aVWI530LU5xwAYVqW0boFP8OLyUEdx3DWuUc1Tqphv-svzSS2rvXo_lsukf6eB55TOX3UfD-2PxwUkYM8t8pS567x6l9WUS7-Rl-kOurB__LxF25BwaCPoLfEw4vQ47F_CkWlyyGBFvgZj4LR4sjv81004rP6yEcAv5yyrfOaKrIeoGp3jLEpjZUSwsLqrBSw&h=KJ-JQcyiJ8mFEC1hU2rbv5gtzm_2hK7kwH9mm74EZb8 + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: B6DE08487433453CABDF185FB081B413 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:22:02Z' + status: 202 Accepted + code: 202 + duration: 956.435708ms + - id: 106 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Test-Request-Attempt: + - "7" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkROU01ERlgtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638595480011790941&c=MIIHhzCCBm-gAwIBAgITHgTSDjrf4K90EFuz2QAABNIOOjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjQwNjI3MTU1NTQ0WhcNMjUwNjIyMTU1NTQ0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ8XqH4hu-LUUBQZox6Q3YlGeD0pxHyXU6kgPd0h_V2eFPSnXJ0kQCsdVJwWknlc0Mp2-zDy6xokC0xY7gMSp3OLtNn3pxvW5ons12O8Ne-sh7dvw00Nn_mh-8dqDU5n8ko-xuFQTyx5a3QEGa8I-ZtggSityNwMVBQCRdfuHLH2hLnZtgeK87tl3_DqEDb2FvLLm6iXK-ZeoPOkkFV8eGnCgiVbtSSz39Sz8GsY6U9HdEYnEoKG2hDL6HaFLdBhhjvroSelAeRLn5hXEPN2vrwCeDhuLqaRpelRkMrGovAIz79fl14GVY67f3zwkvlpOqjgBkuuvPzln0oThvABwECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBSDPRabrt6y045ncRcw0ieVcBBJLjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAB1HhqXm2VHZuY0EA5z_darFC9pQh9LinpTJOEavOzKWlskP6KjGSj4rmVC7eUvKv1KlsZNxCrm_nOJ7cLzH4ofny-RklrM7OXCOs5nFDGYfyf0HewVX_xf6MjLXvrbZfXNyy0hEmmyiYradcVZPlLwKcxLekgQIqpYh6yWxDH2Z4lNnVPBY-5vWHS3xOAqPPyzGF8Kq4yrNSLwf0VdsvQrZ-lPjefAPepAu8ojI45FcD266bR1d23RlHIcQYsbI2VFlSHNuP3INzc6xTecOksnFTQD7lOTAcVZTK-cMI62uxWaNpRtxAfu0WwDR7TwfPdNrpN5b2pVAF4FY7OOIf5c&s=Sh3KAB8uRGZ22q6-KjkMwzf71k0vkcWY8Zg1-xEvYvyrj0iPkrgYfJaNZ4YTx8u3Fp0JzYm2NALQY_9pwajtDhe1ttm_sHdgci1DKXMtaFDirZ9UbQKdsUOvyqcz7wwbf9oYdlnnyYsfiddvxMjckNjz86crxm59UscjHQQBmLEtPc4P_HBKOE33kbdCT-ShvyMM8g11Ao8ZWnpv2gt3Ba8Wk-Ap9Bzo-aPQmOJa8V33ntsNp4xjH_UzSxqK7EgXJwFuh4310gP2EX8GphxSWbThzHZpq4pb0Y7pAi4ZlLO1L-k0rF_xI5NxZr9m3Qbmml06samFr5yt7Mph_HqNQg&h=vX-HZVrY0K6V2J0M-K09gZW2SxGKCFGfor0I4BImZPE + method: GET + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 0 + uncompressed: false + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Msedge-Ref: + - 'Ref A: 3456F1E996E047CABAB0352871106B07 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:22:19Z' + status: 200 OK + code: 200 + duration: 957.969833ms + - id: 107 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq?api-version=2020-11-01 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 109 + uncompressed: false + body: '{"error":{"code":"ResourceGroupNotFound","message":"Resource group ''asotest-rg-nsmdfx'' could not be found."}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "109" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + X-Msedge-Ref: + - 'Ref A: 20DBBC9E33AA4E4B913F2A1FF774725A Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:22:21Z' + status: 404 Not Found + code: 404 + duration: 408.839792ms + - id: 108 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/c054cb24-28a4-5035-ae62-e5e1325bc96a?api-version=2020-08-01-preview + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 240 + uncompressed: false + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.Network/virtualNetworks/asotest-vn-lzvddq'' under resource group ''asotest-rg-nsmdfx'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "240" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + X-Msedge-Ref: + - 'Ref A: AFC1F84615E64159B2EFCC409DD5266F Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:22:26Z' + status: 404 Not Found + code: 404 + duration: 523.427584ms + - id: 109 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-nhqmss?api-version=2020-11-01 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 240 + uncompressed: false + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.Network/virtualNetworks/asotest-vn-lzvddq'' under resource group ''asotest-rg-nsmdfx'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "240" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + X-Msedge-Ref: + - 'Ref A: 99FDE8074EF44A2B999FB8BB0E85FDC8 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:22:26Z' + status: 404 Not Found + code: 404 + duration: 573.006583ms + - id: 110 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/subnets/asotest-subnet-uxsdco?api-version=2020-11-01 + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 240 + uncompressed: false + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.Network/virtualNetworks/asotest-vn-lzvddq'' under resource group ''asotest-rg-nsmdfx'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "240" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + X-Msedge-Ref: + - 'Ref A: C5838FA5A74D449BB77A401F204A0459 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:22:26Z' + status: 404 Not Found + code: 404 + duration: 737.522792ms + - id: 111 + request: + proto: HTTP/1.1 + proto_major: 1 + proto_minor: 1 + content_length: 0 + transfer_encoding: [] + trailer: {} + host: management.azure.com + remote_addr: "" + request_uri: "" + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-nsmdfx/providers/Microsoft.Network/virtualNetworks/asotest-vn-lzvddq/providers/Microsoft.Authorization/roleAssignments/57f98aef-1007-5280-a2aa-01c5a2fc4f6d?api-version=2020-08-01-preview + method: DELETE + response: + proto: HTTP/2.0 + proto_major: 2 + proto_minor: 0 + transfer_encoding: [] + trailer: {} + content_length: 240 + uncompressed: false + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.Network/virtualNetworks/asotest-vn-lzvddq'' under resource group ''asotest-rg-nsmdfx'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "240" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Cache: + - CONFIG_NOCACHE + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + X-Msedge-Ref: + - 'Ref A: C73678E4EC14440CBF2A91839D65D9E0 Ref B: SYD03EDGE1109 Ref C: 2024-08-18T03:22:26Z' + status: 404 Not Found + code: 404 + duration: 814.822542ms diff --git a/v2/internal/controllers/samples_test.go b/v2/internal/controllers/samples_test.go index 55cae75fe3b..caff63453c4 100644 --- a/v2/internal/controllers/samples_test.go +++ b/v2/internal/controllers/samples_test.go @@ -29,7 +29,8 @@ const samplesPath = "../../samples" var skipTests = []string{ // TODO: Cache has issues with linked caches being able to delete "cache", - "subscription", // Can't easily be run/recorded in our standard subscription + "subscription", // Can't easily be run/recorded in our standard subscription + "redhatopenshift", // This requires SP creation } // randomNameExclusions slice contains groups for which we don't want to use random names diff --git a/v2/internal/testcommon/kube_per_test_context.go b/v2/internal/testcommon/kube_per_test_context.go index d93d7c70e14..899321f8550 100644 --- a/v2/internal/testcommon/kube_per_test_context.go +++ b/v2/internal/testcommon/kube_per_test_context.go @@ -495,6 +495,29 @@ func (tc *KubePerTestContext) PatchResourceAndWaitForState( tc.Eventually(new).Should(tc.Match.BeInState(status, severity, gen)) } +func (tc *KubePerTestContext) CreateSimpleSecret( + name string, + key string, + secretData string, +) genruntime.SecretReference { + + secret := &corev1.Secret{ + ObjectMeta: tc.MakeObjectMeta(name), + StringData: map[string]string{ + key: secretData, + }, + } + + tc.CreateResource(secret) + + secretRef := genruntime.SecretReference{ + Name: secret.Name, + Key: key, + } + + return secretRef +} + // GetResource retrieves the current state of the resource from K8s (not from Azure). func (tc *KubePerTestContext) GetResource(key types.NamespacedName, obj client.Object) { tc.T.Helper() diff --git a/v2/internal/testcommon/resource_namer.go b/v2/internal/testcommon/resource_namer.go index 94e0517c426..a9878f18af9 100644 --- a/v2/internal/testcommon/resource_namer.go +++ b/v2/internal/testcommon/resource_namer.go @@ -145,10 +145,11 @@ func (n ResourceNamer) GeneratePassword() string { return n.GeneratePasswordOfLength(n.randomChars) } +var runes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789~!@#$%^&*()") + // GeneratePasswordOfLength generates and returns a non-deterministic password. // This method does not use any seed value, so the returned password is never stable. func (n ResourceNamer) GeneratePasswordOfLength(length int) string { - var runes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789~!@#$%^&*()") // This pass + + pass pattern is to make it so that matchers can reliably find and prune // generated passwords from the recordings. If you change it make sure to change the passwordMatcher @@ -156,6 +157,12 @@ func (n ResourceNamer) GeneratePasswordOfLength(length int) string { return "pass" + n.makeSecureStringOfLength(length, runes) + "pass" } +// GenerateSecretOfLength generates and returns a non-deterministic secret. +// This method does not use any seed value, so the returned password is never stable. +func (n ResourceNamer) GenerateSecretOfLength(length int) string { + return n.makeSecureStringOfLength(length, runes) +} + func (n ResourceNamer) GenerateUUID() (uuid.UUID, error) { return uuid.NewRandomFromReader(n.rand) } diff --git a/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetwork.yaml b/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetwork.yaml new file mode 100644 index 00000000000..96f83e14e93 --- /dev/null +++ b/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetwork.yaml @@ -0,0 +1,12 @@ +apiVersion: network.azure.com/v1api20201101 +kind: VirtualNetwork +metadata: + name: samplevnet + namespace: default +spec: + location: westcentralus + owner: + name: aso-sample-rg + addressSpace: + addressPrefixes: + - 10.100.0.0/15 diff --git a/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetworkssubnet_master.yaml b/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetworkssubnet_master.yaml new file mode 100644 index 00000000000..1668a7b540f --- /dev/null +++ b/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetworkssubnet_master.yaml @@ -0,0 +1,9 @@ +apiVersion: network.azure.com/v1api20201101 +kind: VirtualNetworksSubnet +metadata: + name: aso-sample-master-subnet + namespace: default +spec: + owner: + name: samplevnet + addressPrefix: 10.100.76.0/24 diff --git a/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetworkssubnet_worker.yaml b/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetworkssubnet_worker.yaml new file mode 100644 index 00000000000..8dacfc7a697 --- /dev/null +++ b/v2/samples/redhatopenshift/v1api/refs/v1api20201101_virtualnetworkssubnet_worker.yaml @@ -0,0 +1,9 @@ +apiVersion: network.azure.com/v1api20201101 +kind: VirtualNetworksSubnet +metadata: + name: aso-sample-worker-subnet + namespace: default +spec: + owner: + name: samplevnet + addressPrefix: 10.100.70.0/23 diff --git a/v2/samples/redhatopenshift/v1api/refs/v1api20220401_roleassignment_from_rp_to_vnet.yaml b/v2/samples/redhatopenshift/v1api/refs/v1api20220401_roleassignment_from_rp_to_vnet.yaml new file mode 100644 index 00000000000..683e14a8758 --- /dev/null +++ b/v2/samples/redhatopenshift/v1api/refs/v1api20220401_roleassignment_from_rp_to_vnet.yaml @@ -0,0 +1,17 @@ +apiVersion: authorization.azure.com/v1api20220401 +kind: RoleAssignment +metadata: + name: aso-sample-sp-to-vnet + namespace: default +spec: + # This resource can be owner by any resource. In this example we've chosen a resource group for simplicity + owner: + name: samplevnet + group: network.azure.com + kind: VirtualNetwork + # This is the Principal ID of the AAD identity to which the role will be assigned. + # This can be fetched by using `az ad sp list --display-name "Azure Red Hat OpenShift RP" --query "[0].id" -o tsv` command + principalId: 00000000-0000-0000-0000-000000000000 + roleDefinitionReference: + # This ARM ID represents "Contributor" - you can read about other built in roles here: https://docs.microsoft.com/en-us/azure/role-based-access-control/built-in-roles + armId: /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c diff --git a/v2/samples/redhatopenshift/v1api/refs/v1api20220401_roleassignment_from_sp_to_vnet.yaml b/v2/samples/redhatopenshift/v1api/refs/v1api20220401_roleassignment_from_sp_to_vnet.yaml new file mode 100644 index 00000000000..a2a5d4e73bb --- /dev/null +++ b/v2/samples/redhatopenshift/v1api/refs/v1api20220401_roleassignment_from_sp_to_vnet.yaml @@ -0,0 +1,16 @@ +apiVersion: authorization.azure.com/v1api20220401 +kind: RoleAssignment +metadata: + name: aso-sample-sp-to-vnet + namespace: default +spec: + # This resource can be owner by any resource. In this example we've chosen a resource group for simplicity + owner: + name: samplevnet + group: network.azure.com + kind: VirtualNetwork + # This is the Principal ID of the AAD identity to which the role will be assigned + principalId: 00000000-0000-0000-0000-000000000000 + roleDefinitionReference: + # This ARM ID represents "Contributor" - you can read about other built in roles here: https://docs.microsoft.com/en-us/azure/role-based-access-control/built-in-roles + armId: /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c diff --git a/v2/samples/redhatopenshift/v1api/v1api20231122_openshiftcluster.yaml b/v2/samples/redhatopenshift/v1api/v1api20231122_openshiftcluster.yaml new file mode 100644 index 00000000000..c9d33c6eb4b --- /dev/null +++ b/v2/samples/redhatopenshift/v1api/v1api20231122_openshiftcluster.yaml @@ -0,0 +1,44 @@ +apiVersion: redhatopenshift.azure.com/v1api20231122 +kind: OpenShiftCluster +metadata: + name: aso-sample-aro-uzditq + namespace: default +spec: + apiserverProfile: + visibility: Private + clusterProfile: + domain: aro-example.com + fipsValidatedModules: Disabled + resourceGroupId: /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/aso-sample-cluster-kjzmai + version: 4.14.16 + ingressProfiles: + - name: default + visibility: Private + location: westus2 + masterProfile: + encryptionAtHost: Disabled + subnetReference: + group: network.azure.com + kind: VirtualNetworksSubnet + name: aso-sample-worker-subnet + vmSize: Standard_D8s_v3 + networkProfile: + podCidr: 10.128.0.0/14 + serviceCidr: 172.30.0.0/16 + owner: + name: aso-sample-rg + servicePrincipalProfile: + clientId: 00000000-0000-0000-0000-000000000000 + clientSecret: + key: client-secret + name: aso-sample-aro-kefaab + workerProfiles: + - count: 3 + diskSizeGB: 128 + encryptionAtHost: Disabled + name: worker + subnetReference: + group: network.azure.com + kind: VirtualNetworksSubnet + name: aso-sample-master-subnet + vmSize: Standard_D4s_v3