diff --git a/docs/hugo/content/reference/_index.md b/docs/hugo/content/reference/_index.md
index 292916b217c..58f6287e01e 100644
--- a/docs/hugo/content/reference/_index.md
+++ b/docs/hugo/content/reference/_index.md
@@ -66,6 +66,21 @@ These resource(s) are available for use in the current release of ASO. Different
| [Subscription](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20230501preview/#apimanagement.azure.com/v1api20230501preview.Subscription) | 2023-05-01-preview | v1api20230501preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20230501preview/v1api20230501preview_subscription.yaml) |
| [Subscription](https://azure.github.io/azure-service-operator/reference/apimanagement/v1api20220801/#apimanagement.azure.com/v1api20220801.Subscription) | 2022-08-01 | v1api20220801 | v2.4.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/apimanagement/v1api20220801/v1api20220801_subscription.yaml) |
+## App
+
+To install the CRDs for these resources, your ASO configuration must include `app.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 |
+|--------------------|-------------|---------------|----------------|--------------------------------------------------------------------------------------------------------------------------------------|
+| AuthConfig | 2024-03-01 | v1api20240301 | v2.12.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/app/v1api20240301/v1api20240301_authconfig.yaml) |
+| ContainerApp | 2024-03-01 | v1api20240301 | v2.12.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/app/v1api20240301/v1api20240301_containerapp.yaml) |
+| Job | 2024-03-01 | v1api20240301 | v2.12.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/app/v1api20240301/v1api20240301_job.yaml) |
+| ManagedEnvironment | 2024-03-01 | v1api20240301 | v2.12.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/app/v1api20240301/v1api20240301_managedenvironment.yaml) |
+
## AppConfiguration
To install the CRDs for these resources, your ASO configuration must include `appconfiguration.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/app/_index.md b/docs/hugo/content/reference/app/_index.md
new file mode 100644
index 00000000000..0b310ab9b08
--- /dev/null
+++ b/docs/hugo/content/reference/app/_index.md
@@ -0,0 +1,18 @@
+---
+title: App Supported Resources
+linktitle: App
+no_list: true
+---
+To install the CRDs for these resources, your ASO configuration must include `app.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 |
+|--------------------|-------------|---------------|----------------|--------------------------------------------------------------------------------------------------------------------------------------|
+| AuthConfig | 2024-03-01 | v1api20240301 | v2.12.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/app/v1api20240301/v1api20240301_authconfig.yaml) |
+| ContainerApp | 2024-03-01 | v1api20240301 | v2.12.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/app/v1api20240301/v1api20240301_containerapp.yaml) |
+| Job | 2024-03-01 | v1api20240301 | v2.12.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/app/v1api20240301/v1api20240301_job.yaml) |
+| ManagedEnvironment | 2024-03-01 | v1api20240301 | v2.12.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/app/v1api20240301/v1api20240301_managedenvironment.yaml) |
+
diff --git a/v2/api/app/customizations/auth_config_extension_types_gen.go b/v2/api/app/customizations/auth_config_extension_types_gen.go
new file mode 100644
index 00000000000..1c952947cac
--- /dev/null
+++ b/v2/api/app/customizations/auth_config_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 (
+ v20240301 "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/storage"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime"
+)
+
+type AuthConfigExtension struct {
+}
+
+// GetExtendedResources Returns the KubernetesResource slice for Resource versions
+func (extension *AuthConfigExtension) GetExtendedResources() []genruntime.KubernetesResource {
+ return []genruntime.KubernetesResource{
+ &v20240301.AuthConfig{},
+ &storage.AuthConfig{}}
+}
diff --git a/v2/api/app/customizations/container_app_extension_types.go b/v2/api/app/customizations/container_app_extension_types.go
new file mode 100644
index 00000000000..213935febf4
--- /dev/null
+++ b/v2/api/app/customizations/container_app_extension_types.go
@@ -0,0 +1,39 @@
+/*
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT license.
+*/
+
+package customizations
+
+import (
+ "github.com/go-logr/logr"
+
+ "github.com/Azure/azure-service-operator/v2/internal/genericarmclient"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/extensions"
+)
+
+var _ extensions.ErrorClassifier = &ContainerAppExtension{}
+
+// ClassifyError evaluates the provided error, returning whether it is fatal or can be retried.
+// cloudError is the error returned from ARM.
+// apiVersion is the ARM API version used for the request.
+// log is a logger than can be used for telemetry.
+// next is the next implementation to call.
+func (e *ContainerAppExtension) ClassifyError(
+ cloudError *genericarmclient.CloudError,
+ apiVersion string,
+ log logr.Logger,
+ next extensions.ErrorClassifierFunc,
+) (core.CloudErrorDetails, error) {
+ details, err := next(cloudError)
+ if err != nil {
+ return core.CloudErrorDetails{}, err
+ }
+
+ if cloudError.Code() == "ManagedEnvironmentNotProvisioned" {
+ details.Classification = core.ErrorRetryable
+ }
+
+ return details, nil
+}
diff --git a/v2/api/app/customizations/container_app_extension_types_gen.go b/v2/api/app/customizations/container_app_extension_types_gen.go
new file mode 100644
index 00000000000..c64f8c1800b
--- /dev/null
+++ b/v2/api/app/customizations/container_app_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 (
+ v20240301 "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/storage"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime"
+)
+
+type ContainerAppExtension struct {
+}
+
+// GetExtendedResources Returns the KubernetesResource slice for Resource versions
+func (extension *ContainerAppExtension) GetExtendedResources() []genruntime.KubernetesResource {
+ return []genruntime.KubernetesResource{
+ &v20240301.ContainerApp{},
+ &storage.ContainerApp{}}
+}
diff --git a/v2/api/app/customizations/job_extension_types.go b/v2/api/app/customizations/job_extension_types.go
new file mode 100644
index 00000000000..2ec73ed8e46
--- /dev/null
+++ b/v2/api/app/customizations/job_extension_types.go
@@ -0,0 +1,39 @@
+/*
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT license.
+*/
+
+package customizations
+
+import (
+ "github.com/go-logr/logr"
+
+ "github.com/Azure/azure-service-operator/v2/internal/genericarmclient"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/extensions"
+)
+
+var _ extensions.ErrorClassifier = &JobExtension{}
+
+// ClassifyError evaluates the provided error, returning whether it is fatal or can be retried.
+// cloudError is the error returned from ARM.
+// apiVersion is the ARM API version used for the request.
+// log is a logger than can be used for telemetry.
+// next is the next implementation to call.
+func (e *JobExtension) ClassifyError(
+ cloudError *genericarmclient.CloudError,
+ apiVersion string,
+ log logr.Logger,
+ next extensions.ErrorClassifierFunc,
+) (core.CloudErrorDetails, error) {
+ details, err := next(cloudError)
+ if err != nil {
+ return core.CloudErrorDetails{}, err
+ }
+
+ if cloudError.Code() == "ManagedEnvironmentNotProvisioned" {
+ details.Classification = core.ErrorRetryable
+ }
+
+ return details, nil
+}
diff --git a/v2/api/app/customizations/job_extension_types_gen.go b/v2/api/app/customizations/job_extension_types_gen.go
new file mode 100644
index 00000000000..5d13ec317f7
--- /dev/null
+++ b/v2/api/app/customizations/job_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 (
+ v20240301 "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/storage"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime"
+)
+
+type JobExtension struct {
+}
+
+// GetExtendedResources Returns the KubernetesResource slice for Resource versions
+func (extension *JobExtension) GetExtendedResources() []genruntime.KubernetesResource {
+ return []genruntime.KubernetesResource{
+ &v20240301.Job{},
+ &storage.Job{}}
+}
diff --git a/v2/api/app/customizations/managed_environment_extension_types_gen.go b/v2/api/app/customizations/managed_environment_extension_types_gen.go
new file mode 100644
index 00000000000..622a603c7d3
--- /dev/null
+++ b/v2/api/app/customizations/managed_environment_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 (
+ v20240301 "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/storage"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime"
+)
+
+type ManagedEnvironmentExtension struct {
+}
+
+// GetExtendedResources Returns the KubernetesResource slice for Resource versions
+func (extension *ManagedEnvironmentExtension) GetExtendedResources() []genruntime.KubernetesResource {
+ return []genruntime.KubernetesResource{
+ &v20240301.ManagedEnvironment{},
+ &storage.ManagedEnvironment{}}
+}
diff --git a/v2/api/app/customizations/structure.txt b/v2/api/app/customizations/structure.txt
new file mode 100644
index 00000000000..f1575b1e65d
--- /dev/null
+++ b/v2/api/app/customizations/structure.txt
@@ -0,0 +1,7 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+github.com/Azure/azure-service-operator/v2/api/app/customizations
+-----------------------------------------------------------------
+AuthConfigExtension: Object (0 properties)
+ContainerAppExtension: Object (0 properties)
+JobExtension: Object (0 properties)
+ManagedEnvironmentExtension: Object (0 properties)
diff --git a/v2/api/app/v1api20240301/arm/auth_config_spec_types_gen.go b/v2/api/app/v1api20240301/arm/auth_config_spec_types_gen.go
new file mode 100644
index 00000000000..9963e6b2be4
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/auth_config_spec_types_gen.go
@@ -0,0 +1,581 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+import "github.com/Azure/azure-service-operator/v2/pkg/genruntime"
+
+type AuthConfig_Spec struct {
+ Name string `json:"name,omitempty"`
+
+ // Properties: AuthConfig resource specific properties
+ Properties *ContainerApps_AuthConfig_Properties_Spec `json:"properties,omitempty"`
+}
+
+var _ genruntime.ARMResourceSpec = &AuthConfig_Spec{}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (config AuthConfig_Spec) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetName returns the Name of the resource
+func (config *AuthConfig_Spec) GetName() string {
+ return config.Name
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/containerApps/authConfigs"
+func (config *AuthConfig_Spec) GetType() string {
+ return "Microsoft.App/containerApps/authConfigs"
+}
+
+type ContainerApps_AuthConfig_Properties_Spec struct {
+ // EncryptionSettings: The configuration settings of the secrets references of encryption key and signing key for
+ // ContainerApp Service Authentication/Authorization.
+ EncryptionSettings *EncryptionSettings `json:"encryptionSettings,omitempty"`
+
+ // GlobalValidation: The configuration settings that determines the validation flow of users using Service
+ // Authentication/Authorization.
+ GlobalValidation *GlobalValidation `json:"globalValidation,omitempty"`
+
+ // HttpSettings: The configuration settings of the HTTP requests for authentication and authorization requests made against
+ // ContainerApp Service Authentication/Authorization.
+ HttpSettings *HttpSettings `json:"httpSettings,omitempty"`
+
+ // IdentityProviders: The configuration settings of each of the identity providers used to configure ContainerApp Service
+ // Authentication/Authorization.
+ IdentityProviders *IdentityProviders `json:"identityProviders,omitempty"`
+
+ // Login: The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+ Login *Login `json:"login,omitempty"`
+
+ // Platform: The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+ Platform *AuthPlatform `json:"platform,omitempty"`
+}
+
+// The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+type AuthPlatform struct {
+ // Enabled: true
if the Authentication / Authorization feature is enabled for the current app; otherwise,
+ // false
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // RuntimeVersion: The RuntimeVersion of the Authentication / Authorization feature in use for the current app.
+ // The setting in this value can control the behavior of certain features in the Authentication / Authorization module.
+ RuntimeVersion *string `json:"runtimeVersion,omitempty"`
+}
+
+// The configuration settings of the secrets references of encryption key and signing key for ContainerApp Service
+// Authentication/Authorization.
+type EncryptionSettings struct {
+ // ContainerAppAuthEncryptionSecretName: The secret name which is referenced for EncryptionKey.
+ ContainerAppAuthEncryptionSecretName *string `json:"containerAppAuthEncryptionSecretName,omitempty"`
+
+ // ContainerAppAuthSigningSecretName: The secret name which is referenced for SigningKey.
+ ContainerAppAuthSigningSecretName *string `json:"containerAppAuthSigningSecretName,omitempty"`
+}
+
+// The configuration settings that determines the validation flow of users using ContainerApp Service
+// Authentication/Authorization.
+type GlobalValidation struct {
+ // ExcludedPaths: The paths for which unauthenticated flow would not be redirected to the login page.
+ ExcludedPaths []string `json:"excludedPaths,omitempty"`
+
+ // RedirectToProvider: The default authentication provider to use when multiple providers are configured.
+ // This setting is only needed if multiple providers are configured and the unauthenticated client
+ // action is set to "RedirectToLoginPage".
+ RedirectToProvider *string `json:"redirectToProvider,omitempty"`
+
+ // UnauthenticatedClientAction: The action to take when an unauthenticated client attempts to access the app.
+ UnauthenticatedClientAction *GlobalValidation_UnauthenticatedClientAction `json:"unauthenticatedClientAction,omitempty"`
+}
+
+// The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp
+// Service Authentication/Authorization.
+type HttpSettings struct {
+ // ForwardProxy: The configuration settings of a forward proxy used to make the requests.
+ ForwardProxy *ForwardProxy `json:"forwardProxy,omitempty"`
+
+ // RequireHttps: false
if the authentication/authorization responses not having the HTTPS scheme are
+ // permissible; otherwise, true
.
+ RequireHttps *bool `json:"requireHttps,omitempty"`
+
+ // Routes: The configuration settings of the paths HTTP requests.
+ Routes *HttpSettingsRoutes `json:"routes,omitempty"`
+}
+
+// The configuration settings of each of the identity providers used to configure ContainerApp Service
+// Authentication/Authorization.
+type IdentityProviders struct {
+ // Apple: The configuration settings of the Apple provider.
+ Apple *Apple `json:"apple,omitempty"`
+
+ // AzureActiveDirectory: The configuration settings of the Azure Active directory provider.
+ AzureActiveDirectory *AzureActiveDirectory `json:"azureActiveDirectory,omitempty"`
+
+ // AzureStaticWebApps: The configuration settings of the Azure Static Web Apps provider.
+ AzureStaticWebApps *AzureStaticWebApps `json:"azureStaticWebApps,omitempty"`
+
+ // CustomOpenIdConnectProviders: The map of the name of the alias of each custom Open ID Connect provider to the
+ // configuration settings of the custom Open ID Connect provider.
+ CustomOpenIdConnectProviders map[string]CustomOpenIdConnectProvider `json:"customOpenIdConnectProviders,omitempty"`
+
+ // Facebook: The configuration settings of the Facebook provider.
+ Facebook *Facebook `json:"facebook,omitempty"`
+
+ // GitHub: The configuration settings of the GitHub provider.
+ GitHub *GitHub `json:"gitHub,omitempty"`
+
+ // Google: The configuration settings of the Google provider.
+ Google *Google `json:"google,omitempty"`
+
+ // Twitter: The configuration settings of the Twitter provider.
+ Twitter *Twitter `json:"twitter,omitempty"`
+}
+
+// The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+type Login struct {
+ // AllowedExternalRedirectUrls: External URLs that can be redirected to as part of logging in or logging out of the app.
+ // Note that the query string part of the URL is ignored.
+ // This is an advanced setting typically only needed by Windows Store application backends.
+ // Note that URLs within the current domain are always implicitly allowed.
+ AllowedExternalRedirectUrls []string `json:"allowedExternalRedirectUrls,omitempty"`
+
+ // CookieExpiration: The configuration settings of the session cookie's expiration.
+ CookieExpiration *CookieExpiration `json:"cookieExpiration,omitempty"`
+
+ // Nonce: The configuration settings of the nonce used in the login flow.
+ Nonce *Nonce `json:"nonce,omitempty"`
+
+ // PreserveUrlFragmentsForLogins: true
if the fragments from the request are preserved after the login request
+ // is made; otherwise, false
.
+ PreserveUrlFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty"`
+
+ // Routes: The routes that specify the endpoints used for login and logout requests.
+ Routes *LoginRoutes `json:"routes,omitempty"`
+
+ // TokenStore: The configuration settings of the token store.
+ TokenStore *TokenStore `json:"tokenStore,omitempty"`
+}
+
+// The configuration settings of the Apple provider.
+type Apple struct {
+ // Enabled: false
if the Apple provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the Apple registration.
+ Registration *AppleRegistration `json:"registration,omitempty"`
+}
+
+// The configuration settings of the Azure Active directory provider.
+type AzureActiveDirectory struct {
+ // Enabled: false
if the Azure Active Directory provider should not be enabled despite the set registration;
+ // otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // IsAutoProvisioned: Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party
+ // tooling.
+ // This is an internal flag primarily intended to support the Azure Management Portal. Users should not
+ // read or write to this property.
+ IsAutoProvisioned *bool `json:"isAutoProvisioned,omitempty"`
+
+ // Login: The configuration settings of the Azure Active Directory login flow.
+ Login *AzureActiveDirectoryLogin `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the Azure Active Directory app registration.
+ Registration *AzureActiveDirectoryRegistration `json:"registration,omitempty"`
+
+ // Validation: The configuration settings of the Azure Active Directory token validation flow.
+ Validation *AzureActiveDirectoryValidation `json:"validation,omitempty"`
+}
+
+// The configuration settings of the Azure Static Web Apps provider.
+type AzureStaticWebApps struct {
+ // Enabled: false
if the Azure Static Web Apps provider should not be enabled despite the set registration;
+ // otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Registration: The configuration settings of the Azure Static Web Apps registration.
+ Registration *AzureStaticWebAppsRegistration `json:"registration,omitempty"`
+}
+
+// The configuration settings of the session cookie's expiration.
+type CookieExpiration struct {
+ // Convention: The convention used when determining the session cookie's expiration.
+ Convention *CookieExpiration_Convention `json:"convention,omitempty"`
+
+ // TimeToExpiration: The time after the request is made when the session cookie should expire.
+ TimeToExpiration *string `json:"timeToExpiration,omitempty"`
+}
+
+// The configuration settings of the custom Open ID Connect provider.
+type CustomOpenIdConnectProvider struct {
+ // Enabled: false
if the custom Open ID provider provider should not be enabled; otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow of the custom Open ID Connect provider.
+ Login *OpenIdConnectLogin `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the custom Open ID Connect provider.
+ Registration *OpenIdConnectRegistration `json:"registration,omitempty"`
+}
+
+// The configuration settings of the Facebook provider.
+type Facebook struct {
+ // Enabled: false
if the Facebook provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // GraphApiVersion: The version of the Facebook api to be used while logging in.
+ GraphApiVersion *string `json:"graphApiVersion,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Facebook provider.
+ Registration *AppRegistration `json:"registration,omitempty"`
+}
+
+// The configuration settings of a forward proxy used to make the requests.
+type ForwardProxy struct {
+ // Convention: The convention used to determine the url of the request made.
+ Convention *ForwardProxy_Convention `json:"convention,omitempty"`
+
+ // CustomHostHeaderName: The name of the header containing the host of the request.
+ CustomHostHeaderName *string `json:"customHostHeaderName,omitempty"`
+
+ // CustomProtoHeaderName: The name of the header containing the scheme of the request.
+ CustomProtoHeaderName *string `json:"customProtoHeaderName,omitempty"`
+}
+
+// The configuration settings of the GitHub provider.
+type GitHub struct {
+ // Enabled: false
if the GitHub provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the GitHub provider.
+ Registration *ClientRegistration `json:"registration,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"AllowAnonymous","RedirectToLoginPage","Return401","Return403"}
+type GlobalValidation_UnauthenticatedClientAction string
+
+const (
+ GlobalValidation_UnauthenticatedClientAction_AllowAnonymous = GlobalValidation_UnauthenticatedClientAction("AllowAnonymous")
+ GlobalValidation_UnauthenticatedClientAction_RedirectToLoginPage = GlobalValidation_UnauthenticatedClientAction("RedirectToLoginPage")
+ GlobalValidation_UnauthenticatedClientAction_Return401 = GlobalValidation_UnauthenticatedClientAction("Return401")
+ GlobalValidation_UnauthenticatedClientAction_Return403 = GlobalValidation_UnauthenticatedClientAction("Return403")
+)
+
+// Mapping from string to GlobalValidation_UnauthenticatedClientAction
+var globalValidation_UnauthenticatedClientAction_Values = map[string]GlobalValidation_UnauthenticatedClientAction{
+ "allowanonymous": GlobalValidation_UnauthenticatedClientAction_AllowAnonymous,
+ "redirecttologinpage": GlobalValidation_UnauthenticatedClientAction_RedirectToLoginPage,
+ "return401": GlobalValidation_UnauthenticatedClientAction_Return401,
+ "return403": GlobalValidation_UnauthenticatedClientAction_Return403,
+}
+
+// The configuration settings of the Google provider.
+type Google struct {
+ // Enabled: false
if the Google provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Google provider.
+ Registration *ClientRegistration `json:"registration,omitempty"`
+
+ // Validation: The configuration settings of the Azure Active Directory token validation flow.
+ Validation *AllowedAudiencesValidation `json:"validation,omitempty"`
+}
+
+// The configuration settings of the paths HTTP requests.
+type HttpSettingsRoutes struct {
+ // ApiPrefix: The prefix that should precede all the authentication/authorization paths.
+ ApiPrefix *string `json:"apiPrefix,omitempty"`
+}
+
+// The routes that specify the endpoints used for login and logout requests.
+type LoginRoutes struct {
+ // LogoutEndpoint: The endpoint at which a logout request should be made.
+ LogoutEndpoint *string `json:"logoutEndpoint,omitempty"`
+}
+
+// The configuration settings of the nonce used in the login flow.
+type Nonce struct {
+ // NonceExpirationInterval: The time after the request is made when the nonce should expire.
+ NonceExpirationInterval *string `json:"nonceExpirationInterval,omitempty"`
+
+ // ValidateNonce: false
if the nonce should not be validated while completing the login flow; otherwise,
+ // true
.
+ ValidateNonce *bool `json:"validateNonce,omitempty"`
+}
+
+// The configuration settings of the token store.
+type TokenStore struct {
+ // AzureBlobStorage: The configuration settings of the storage of the tokens if blob storage is used.
+ AzureBlobStorage *BlobStorageTokenStore `json:"azureBlobStorage,omitempty"`
+
+ // Enabled: true
to durably store platform-specific security tokens that are obtained during login flows;
+ // otherwise, false
.
+ // The default is false
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // TokenRefreshExtensionHours: The number of hours after session token expiration that a session token can be used to
+ // call the token refresh API. The default is 72 hours.
+ TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty"`
+}
+
+// The configuration settings of the Twitter provider.
+type Twitter struct {
+ // Enabled: false
if the Twitter provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Twitter provider.
+ Registration *TwitterRegistration `json:"registration,omitempty"`
+}
+
+// The configuration settings of the Allowed Audiences validation flow.
+type AllowedAudiencesValidation struct {
+ // AllowedAudiences: The configuration settings of the allowed list of audiences from which to validate the JWT token.
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+}
+
+// The configuration settings of the registration for the Apple provider
+type AppleRegistration struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+}
+
+// The configuration settings of the app registration for providers that have app ids and app secrets
+type AppRegistration struct {
+ // AppId: The App ID of the app used for login.
+ AppId *string `json:"appId,omitempty"`
+
+ // AppSecretSettingName: The app setting name that contains the app secret.
+ AppSecretSettingName *string `json:"appSecretSettingName,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory login flow.
+type AzureActiveDirectoryLogin struct {
+ // DisableWWWAuthenticate: true
if the www-authenticate provider should be omitted from the request;
+ // otherwise, false
.
+ DisableWWWAuthenticate *bool `json:"disableWWWAuthenticate,omitempty"`
+
+ // LoginParameters: Login parameters to send to the OpenID Connect authorization endpoint when
+ // a user logs in. Each parameter must be in the form "key=value".
+ LoginParameters []string `json:"loginParameters,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory app registration.
+type AzureActiveDirectoryRegistration struct {
+ // ClientId: The Client ID of this relying party application, known as the client_id.
+ // This setting is required for enabling OpenID Connection authentication with Azure Active Directory or
+ // other 3rd party OpenID Connect providers.
+ // More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretCertificateIssuer: An alternative to the client secret thumbprint, that is the issuer of a certificate used
+ // for signing purposes. This property acts as
+ // a replacement for the Client Secret Certificate Thumbprint. It is also optional.
+ ClientSecretCertificateIssuer *string `json:"clientSecretCertificateIssuer,omitempty"`
+
+ // ClientSecretCertificateSubjectAlternativeName: An alternative to the client secret thumbprint, that is the subject
+ // alternative name of a certificate used for signing purposes. This property acts as
+ // a replacement for the Client Secret Certificate Thumbprint. It is also optional.
+ ClientSecretCertificateSubjectAlternativeName *string `json:"clientSecretCertificateSubjectAlternativeName,omitempty"`
+
+ // ClientSecretCertificateThumbprint: An alternative to the client secret, that is the thumbprint of a certificate used for
+ // signing purposes. This property acts as
+ // a replacement for the Client Secret. It is also optional.
+ ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret of the relying party application.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+
+ // OpenIdIssuer: The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.
+ // When using Azure Active Directory, this value is the URI of the directory tenant, e.g.
+ // https://login.microsoftonline.com/v2.0/{tenant-guid}/.
+ // This URI is a case-sensitive identifier for the token issuer.
+ // More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html
+ OpenIdIssuer *string `json:"openIdIssuer,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory token validation flow.
+type AzureActiveDirectoryValidation struct {
+ // AllowedAudiences: The list of audiences that can make successful authentication/authorization requests.
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+
+ // DefaultAuthorizationPolicy: The configuration settings of the default authorization policy.
+ DefaultAuthorizationPolicy *DefaultAuthorizationPolicy `json:"defaultAuthorizationPolicy,omitempty"`
+
+ // JwtClaimChecks: The configuration settings of the checks that should be made while validating the JWT Claims.
+ JwtClaimChecks *JwtClaimChecks `json:"jwtClaimChecks,omitempty"`
+}
+
+// The configuration settings of the registration for the Azure Static Web Apps provider
+type AzureStaticWebAppsRegistration struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+}
+
+// The configuration settings of the storage of the tokens if blob storage is used.
+type BlobStorageTokenStore struct {
+ // SasUrlSettingName: The name of the app secrets containing the SAS URL of the blob storage containing the tokens.
+ SasUrlSettingName *string `json:"sasUrlSettingName,omitempty"`
+}
+
+// The configuration settings of the app registration for providers that have client ids and client secrets
+type ClientRegistration struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"FixedTime","IdentityProviderDerived"}
+type CookieExpiration_Convention string
+
+const (
+ CookieExpiration_Convention_FixedTime = CookieExpiration_Convention("FixedTime")
+ CookieExpiration_Convention_IdentityProviderDerived = CookieExpiration_Convention("IdentityProviderDerived")
+)
+
+// Mapping from string to CookieExpiration_Convention
+var cookieExpiration_Convention_Values = map[string]CookieExpiration_Convention{
+ "fixedtime": CookieExpiration_Convention_FixedTime,
+ "identityproviderderived": CookieExpiration_Convention_IdentityProviderDerived,
+}
+
+// +kubebuilder:validation:Enum={"Custom","NoProxy","Standard"}
+type ForwardProxy_Convention string
+
+const (
+ ForwardProxy_Convention_Custom = ForwardProxy_Convention("Custom")
+ ForwardProxy_Convention_NoProxy = ForwardProxy_Convention("NoProxy")
+ ForwardProxy_Convention_Standard = ForwardProxy_Convention("Standard")
+)
+
+// Mapping from string to ForwardProxy_Convention
+var forwardProxy_Convention_Values = map[string]ForwardProxy_Convention{
+ "custom": ForwardProxy_Convention_Custom,
+ "noproxy": ForwardProxy_Convention_NoProxy,
+ "standard": ForwardProxy_Convention_Standard,
+}
+
+// The configuration settings of the login flow, including the scopes that should be requested.
+type LoginScopes struct {
+ // Scopes: A list of the scopes that should be requested while authenticating.
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+// The configuration settings of the login flow of the custom Open ID Connect provider.
+type OpenIdConnectLogin struct {
+ // NameClaimType: The name of the claim that contains the users name.
+ NameClaimType *string `json:"nameClaimType,omitempty"`
+
+ // Scopes: A list of the scopes that should be requested while authenticating.
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+// The configuration settings of the app registration for the custom Open ID Connect provider.
+type OpenIdConnectRegistration struct {
+ // ClientCredential: The authentication credentials of the custom Open ID Connect provider.
+ ClientCredential *OpenIdConnectClientCredential `json:"clientCredential,omitempty"`
+
+ // ClientId: The client id of the custom Open ID Connect provider.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // OpenIdConnectConfiguration: The configuration settings of the endpoints used for the custom Open ID Connect provider.
+ OpenIdConnectConfiguration *OpenIdConnectConfig `json:"openIdConnectConfiguration,omitempty"`
+}
+
+// The configuration settings of the app registration for the Twitter provider.
+type TwitterRegistration struct {
+ // ConsumerKey: The OAuth 1.0a consumer key of the Twitter application used for sign-in.
+ // This setting is required for enabling Twitter Sign-In.
+ // Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in
+ ConsumerKey *string `json:"consumerKey,omitempty"`
+
+ // ConsumerSecretSettingName: The app setting name that contains the OAuth 1.0a consumer secret of the Twitter
+ // application used for sign-in.
+ ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory default authorization policy.
+type DefaultAuthorizationPolicy struct {
+ // AllowedApplications: The configuration settings of the Azure Active Directory allowed applications.
+ AllowedApplications []string `json:"allowedApplications,omitempty"`
+
+ // AllowedPrincipals: The configuration settings of the Azure Active Directory allowed principals.
+ AllowedPrincipals *AllowedPrincipals `json:"allowedPrincipals,omitempty"`
+}
+
+// The configuration settings of the checks that should be made while validating the JWT Claims.
+type JwtClaimChecks struct {
+ // AllowedClientApplications: The list of the allowed client applications.
+ AllowedClientApplications []string `json:"allowedClientApplications,omitempty"`
+
+ // AllowedGroups: The list of the allowed groups.
+ AllowedGroups []string `json:"allowedGroups,omitempty"`
+}
+
+// The authentication client credentials of the custom Open ID Connect provider.
+type OpenIdConnectClientCredential struct {
+ // ClientSecretSettingName: The app setting that contains the client secret for the custom Open ID Connect provider.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+
+ // Method: The method that should be used to authenticate the user.
+ Method *OpenIdConnectClientCredential_Method `json:"method,omitempty"`
+}
+
+// The configuration settings of the endpoints used for the custom Open ID Connect provider.
+type OpenIdConnectConfig struct {
+ // AuthorizationEndpoint: The endpoint to be used to make an authorization request.
+ AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty"`
+
+ // CertificationUri: The endpoint that provides the keys necessary to validate the token.
+ CertificationUri *string `json:"certificationUri,omitempty"`
+
+ // Issuer: The endpoint that issues the token.
+ Issuer *string `json:"issuer,omitempty"`
+
+ // TokenEndpoint: The endpoint to be used to request a token.
+ TokenEndpoint *string `json:"tokenEndpoint,omitempty"`
+
+ // WellKnownOpenIdConfiguration: The endpoint that contains all the configuration endpoints for the provider.
+ WellKnownOpenIdConfiguration *string `json:"wellKnownOpenIdConfiguration,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory allowed principals.
+type AllowedPrincipals struct {
+ // Groups: The list of the allowed groups.
+ Groups []string `json:"groups,omitempty"`
+
+ // Identities: The list of the allowed identities.
+ Identities []string `json:"identities,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"ClientSecretPost"}
+type OpenIdConnectClientCredential_Method string
+
+const OpenIdConnectClientCredential_Method_ClientSecretPost = OpenIdConnectClientCredential_Method("ClientSecretPost")
+
+// Mapping from string to OpenIdConnectClientCredential_Method
+var openIdConnectClientCredential_Method_Values = map[string]OpenIdConnectClientCredential_Method{
+ "clientsecretpost": OpenIdConnectClientCredential_Method_ClientSecretPost,
+}
diff --git a/v2/api/app/v1api20240301/arm/auth_config_spec_types_gen_test.go b/v2/api/app/v1api20240301/arm/auth_config_spec_types_gen_test.go
new file mode 100644
index 00000000000..1bec7b1a36d
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/auth_config_spec_types_gen_test.go
@@ -0,0 +1,2704 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+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_AllowedAudiencesValidation_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 AllowedAudiencesValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedAudiencesValidation, AllowedAudiencesValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedAudiencesValidation runs a test to see if a specific instance of AllowedAudiencesValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedAudiencesValidation(subject AllowedAudiencesValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedAudiencesValidation
+ 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 AllowedAudiencesValidation instances for property testing - lazily instantiated by
+// AllowedAudiencesValidationGenerator()
+var allowedAudiencesValidationGenerator gopter.Gen
+
+// AllowedAudiencesValidationGenerator returns a generator of AllowedAudiencesValidation instances for property testing.
+func AllowedAudiencesValidationGenerator() gopter.Gen {
+ if allowedAudiencesValidationGenerator != nil {
+ return allowedAudiencesValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedAudiencesValidation(generators)
+ allowedAudiencesValidationGenerator = gen.Struct(reflect.TypeOf(AllowedAudiencesValidation{}), generators)
+
+ return allowedAudiencesValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedAudiencesValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedAudiencesValidation(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AllowedPrincipals_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 AllowedPrincipals via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedPrincipals, AllowedPrincipalsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedPrincipals runs a test to see if a specific instance of AllowedPrincipals round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedPrincipals(subject AllowedPrincipals) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedPrincipals
+ 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 AllowedPrincipals instances for property testing - lazily instantiated by AllowedPrincipalsGenerator()
+var allowedPrincipalsGenerator gopter.Gen
+
+// AllowedPrincipalsGenerator returns a generator of AllowedPrincipals instances for property testing.
+func AllowedPrincipalsGenerator() gopter.Gen {
+ if allowedPrincipalsGenerator != nil {
+ return allowedPrincipalsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedPrincipals(generators)
+ allowedPrincipalsGenerator = gen.Struct(reflect.TypeOf(AllowedPrincipals{}), generators)
+
+ return allowedPrincipalsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedPrincipals is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedPrincipals(gens map[string]gopter.Gen) {
+ gens["Groups"] = gen.SliceOf(gen.AlphaString())
+ gens["Identities"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AppRegistration_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 AppRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppRegistration, AppRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppRegistration runs a test to see if a specific instance of AppRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppRegistration(subject AppRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppRegistration
+ 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 AppRegistration instances for property testing - lazily instantiated by AppRegistrationGenerator()
+var appRegistrationGenerator gopter.Gen
+
+// AppRegistrationGenerator returns a generator of AppRegistration instances for property testing.
+func AppRegistrationGenerator() gopter.Gen {
+ if appRegistrationGenerator != nil {
+ return appRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppRegistration(generators)
+ appRegistrationGenerator = gen.Struct(reflect.TypeOf(AppRegistration{}), generators)
+
+ return appRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppRegistration(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Apple_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 Apple via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForApple, AppleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForApple runs a test to see if a specific instance of Apple round trips to JSON and back losslessly
+func RunJSONSerializationTestForApple(subject Apple) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Apple
+ 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 Apple instances for property testing - lazily instantiated by AppleGenerator()
+var appleGenerator gopter.Gen
+
+// AppleGenerator returns a generator of Apple instances for property testing.
+// We first initialize appleGenerator 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 AppleGenerator() gopter.Gen {
+ if appleGenerator != nil {
+ return appleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple(generators)
+ appleGenerator = gen.Struct(reflect.TypeOf(Apple{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple(generators)
+ AddRelatedPropertyGeneratorsForApple(generators)
+ appleGenerator = gen.Struct(reflect.TypeOf(Apple{}), generators)
+
+ return appleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForApple is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForApple(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForApple is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForApple(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(AppleRegistrationGenerator())
+}
+
+func Test_AppleRegistration_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 AppleRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppleRegistration, AppleRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppleRegistration runs a test to see if a specific instance of AppleRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppleRegistration(subject AppleRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppleRegistration
+ 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 AppleRegistration instances for property testing - lazily instantiated by AppleRegistrationGenerator()
+var appleRegistrationGenerator gopter.Gen
+
+// AppleRegistrationGenerator returns a generator of AppleRegistration instances for property testing.
+func AppleRegistrationGenerator() gopter.Gen {
+ if appleRegistrationGenerator != nil {
+ return appleRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppleRegistration(generators)
+ appleRegistrationGenerator = gen.Struct(reflect.TypeOf(AppleRegistration{}), generators)
+
+ return appleRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppleRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppleRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AuthConfig_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 AuthConfig_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfig_Spec, AuthConfig_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfig_Spec runs a test to see if a specific instance of AuthConfig_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfig_Spec(subject AuthConfig_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfig_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 AuthConfig_Spec instances for property testing - lazily instantiated by AuthConfig_SpecGenerator()
+var authConfig_SpecGenerator gopter.Gen
+
+// AuthConfig_SpecGenerator returns a generator of AuthConfig_Spec instances for property testing.
+// We first initialize authConfig_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 AuthConfig_SpecGenerator() gopter.Gen {
+ if authConfig_SpecGenerator != nil {
+ return authConfig_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_Spec(generators)
+ authConfig_SpecGenerator = gen.Struct(reflect.TypeOf(AuthConfig_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_Spec(generators)
+ AddRelatedPropertyGeneratorsForAuthConfig_Spec(generators)
+ authConfig_SpecGenerator = gen.Struct(reflect.TypeOf(AuthConfig_Spec{}), generators)
+
+ return authConfig_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthConfig_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthConfig_Spec(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.AlphaString()
+}
+
+// AddRelatedPropertyGeneratorsForAuthConfig_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAuthConfig_Spec(gens map[string]gopter.Gen) {
+ gens["Properties"] = gen.PtrOf(ContainerApps_AuthConfig_Properties_SpecGenerator())
+}
+
+func Test_AuthPlatform_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 AuthPlatform via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthPlatform, AuthPlatformGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthPlatform runs a test to see if a specific instance of AuthPlatform round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthPlatform(subject AuthPlatform) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthPlatform
+ 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 AuthPlatform instances for property testing - lazily instantiated by AuthPlatformGenerator()
+var authPlatformGenerator gopter.Gen
+
+// AuthPlatformGenerator returns a generator of AuthPlatform instances for property testing.
+func AuthPlatformGenerator() gopter.Gen {
+ if authPlatformGenerator != nil {
+ return authPlatformGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthPlatform(generators)
+ authPlatformGenerator = gen.Struct(reflect.TypeOf(AuthPlatform{}), generators)
+
+ return authPlatformGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthPlatform is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthPlatform(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["RuntimeVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectory_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 AzureActiveDirectory via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectory, AzureActiveDirectoryGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectory runs a test to see if a specific instance of AzureActiveDirectory round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectory(subject AzureActiveDirectory) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectory
+ 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 AzureActiveDirectory instances for property testing - lazily instantiated by
+// AzureActiveDirectoryGenerator()
+var azureActiveDirectoryGenerator gopter.Gen
+
+// AzureActiveDirectoryGenerator returns a generator of AzureActiveDirectory instances for property testing.
+// We first initialize azureActiveDirectoryGenerator 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 AzureActiveDirectoryGenerator() gopter.Gen {
+ if azureActiveDirectoryGenerator != nil {
+ return azureActiveDirectoryGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory(generators)
+ azureActiveDirectoryGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectory(generators)
+ azureActiveDirectoryGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory{}), generators)
+
+ return azureActiveDirectoryGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectory is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectory(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["IsAutoProvisioned"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectory is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectory(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(AzureActiveDirectoryLoginGenerator())
+ gens["Registration"] = gen.PtrOf(AzureActiveDirectoryRegistrationGenerator())
+ gens["Validation"] = gen.PtrOf(AzureActiveDirectoryValidationGenerator())
+}
+
+func Test_AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryLogin, AzureActiveDirectoryLoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryLogin runs a test to see if a specific instance of AzureActiveDirectoryLogin round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryLogin(subject AzureActiveDirectoryLogin) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryLogin
+ 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 AzureActiveDirectoryLogin instances for property testing - lazily instantiated by
+// AzureActiveDirectoryLoginGenerator()
+var azureActiveDirectoryLoginGenerator gopter.Gen
+
+// AzureActiveDirectoryLoginGenerator returns a generator of AzureActiveDirectoryLogin instances for property testing.
+func AzureActiveDirectoryLoginGenerator() gopter.Gen {
+ if azureActiveDirectoryLoginGenerator != nil {
+ return azureActiveDirectoryLoginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin(generators)
+ azureActiveDirectoryLoginGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryLogin{}), generators)
+
+ return azureActiveDirectoryLoginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin(gens map[string]gopter.Gen) {
+ gens["DisableWWWAuthenticate"] = gen.PtrOf(gen.Bool())
+ gens["LoginParameters"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryRegistration, AzureActiveDirectoryRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryRegistration runs a test to see if a specific instance of AzureActiveDirectoryRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryRegistration(subject AzureActiveDirectoryRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryRegistration
+ 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 AzureActiveDirectoryRegistration instances for property testing - lazily instantiated by
+// AzureActiveDirectoryRegistrationGenerator()
+var azureActiveDirectoryRegistrationGenerator gopter.Gen
+
+// AzureActiveDirectoryRegistrationGenerator returns a generator of AzureActiveDirectoryRegistration instances for property testing.
+func AzureActiveDirectoryRegistrationGenerator() gopter.Gen {
+ if azureActiveDirectoryRegistrationGenerator != nil {
+ return azureActiveDirectoryRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration(generators)
+ azureActiveDirectoryRegistrationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryRegistration{}), generators)
+
+ return azureActiveDirectoryRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateIssuer"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateSubjectAlternativeName"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateThumbprint"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["OpenIdIssuer"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryValidation, AzureActiveDirectoryValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryValidation runs a test to see if a specific instance of AzureActiveDirectoryValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryValidation(subject AzureActiveDirectoryValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryValidation
+ 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 AzureActiveDirectoryValidation instances for property testing - lazily instantiated by
+// AzureActiveDirectoryValidationGenerator()
+var azureActiveDirectoryValidationGenerator gopter.Gen
+
+// AzureActiveDirectoryValidationGenerator returns a generator of AzureActiveDirectoryValidation instances for property testing.
+// We first initialize azureActiveDirectoryValidationGenerator 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 AzureActiveDirectoryValidationGenerator() gopter.Gen {
+ if azureActiveDirectoryValidationGenerator != nil {
+ return azureActiveDirectoryValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ azureActiveDirectoryValidationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ azureActiveDirectoryValidationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation{}), generators)
+
+ return azureActiveDirectoryValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation(gens map[string]gopter.Gen) {
+ gens["DefaultAuthorizationPolicy"] = gen.PtrOf(DefaultAuthorizationPolicyGenerator())
+ gens["JwtClaimChecks"] = gen.PtrOf(JwtClaimChecksGenerator())
+}
+
+func Test_AzureStaticWebApps_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 AzureStaticWebApps via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebApps, AzureStaticWebAppsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebApps runs a test to see if a specific instance of AzureStaticWebApps round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebApps(subject AzureStaticWebApps) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebApps
+ 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 AzureStaticWebApps instances for property testing - lazily instantiated by AzureStaticWebAppsGenerator()
+var azureStaticWebAppsGenerator gopter.Gen
+
+// AzureStaticWebAppsGenerator returns a generator of AzureStaticWebApps instances for property testing.
+// We first initialize azureStaticWebAppsGenerator 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 AzureStaticWebAppsGenerator() gopter.Gen {
+ if azureStaticWebAppsGenerator != nil {
+ return azureStaticWebAppsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps(generators)
+ azureStaticWebAppsGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps(generators)
+ AddRelatedPropertyGeneratorsForAzureStaticWebApps(generators)
+ azureStaticWebAppsGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps{}), generators)
+
+ return azureStaticWebAppsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebApps is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebApps(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureStaticWebApps is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureStaticWebApps(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(AzureStaticWebAppsRegistrationGenerator())
+}
+
+func Test_AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebAppsRegistration, AzureStaticWebAppsRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebAppsRegistration runs a test to see if a specific instance of AzureStaticWebAppsRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebAppsRegistration(subject AzureStaticWebAppsRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebAppsRegistration
+ 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 AzureStaticWebAppsRegistration instances for property testing - lazily instantiated by
+// AzureStaticWebAppsRegistrationGenerator()
+var azureStaticWebAppsRegistrationGenerator gopter.Gen
+
+// AzureStaticWebAppsRegistrationGenerator returns a generator of AzureStaticWebAppsRegistration instances for property testing.
+func AzureStaticWebAppsRegistrationGenerator() gopter.Gen {
+ if azureStaticWebAppsRegistrationGenerator != nil {
+ return azureStaticWebAppsRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration(generators)
+ azureStaticWebAppsRegistrationGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebAppsRegistration{}), generators)
+
+ return azureStaticWebAppsRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_BlobStorageTokenStore_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 BlobStorageTokenStore via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBlobStorageTokenStore, BlobStorageTokenStoreGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBlobStorageTokenStore runs a test to see if a specific instance of BlobStorageTokenStore round trips to JSON and back losslessly
+func RunJSONSerializationTestForBlobStorageTokenStore(subject BlobStorageTokenStore) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BlobStorageTokenStore
+ 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 BlobStorageTokenStore instances for property testing - lazily instantiated by
+// BlobStorageTokenStoreGenerator()
+var blobStorageTokenStoreGenerator gopter.Gen
+
+// BlobStorageTokenStoreGenerator returns a generator of BlobStorageTokenStore instances for property testing.
+func BlobStorageTokenStoreGenerator() gopter.Gen {
+ if blobStorageTokenStoreGenerator != nil {
+ return blobStorageTokenStoreGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBlobStorageTokenStore(generators)
+ blobStorageTokenStoreGenerator = gen.Struct(reflect.TypeOf(BlobStorageTokenStore{}), generators)
+
+ return blobStorageTokenStoreGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBlobStorageTokenStore is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBlobStorageTokenStore(gens map[string]gopter.Gen) {
+ gens["SasUrlSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ClientRegistration_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 ClientRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForClientRegistration, ClientRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForClientRegistration runs a test to see if a specific instance of ClientRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForClientRegistration(subject ClientRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ClientRegistration
+ 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 ClientRegistration instances for property testing - lazily instantiated by ClientRegistrationGenerator()
+var clientRegistrationGenerator gopter.Gen
+
+// ClientRegistrationGenerator returns a generator of ClientRegistration instances for property testing.
+func ClientRegistrationGenerator() gopter.Gen {
+ if clientRegistrationGenerator != nil {
+ return clientRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForClientRegistration(generators)
+ clientRegistrationGenerator = gen.Struct(reflect.TypeOf(ClientRegistration{}), generators)
+
+ return clientRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForClientRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForClientRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerApps_AuthConfig_Properties_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 ContainerApps_AuthConfig_Properties_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApps_AuthConfig_Properties_Spec, ContainerApps_AuthConfig_Properties_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApps_AuthConfig_Properties_Spec runs a test to see if a specific instance of ContainerApps_AuthConfig_Properties_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApps_AuthConfig_Properties_Spec(subject ContainerApps_AuthConfig_Properties_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApps_AuthConfig_Properties_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 ContainerApps_AuthConfig_Properties_Spec instances for property testing - lazily instantiated by
+// ContainerApps_AuthConfig_Properties_SpecGenerator()
+var containerApps_AuthConfig_Properties_SpecGenerator gopter.Gen
+
+// ContainerApps_AuthConfig_Properties_SpecGenerator returns a generator of ContainerApps_AuthConfig_Properties_Spec instances for property testing.
+func ContainerApps_AuthConfig_Properties_SpecGenerator() gopter.Gen {
+ if containerApps_AuthConfig_Properties_SpecGenerator != nil {
+ return containerApps_AuthConfig_Properties_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForContainerApps_AuthConfig_Properties_Spec(generators)
+ containerApps_AuthConfig_Properties_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApps_AuthConfig_Properties_Spec{}), generators)
+
+ return containerApps_AuthConfig_Properties_SpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForContainerApps_AuthConfig_Properties_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApps_AuthConfig_Properties_Spec(gens map[string]gopter.Gen) {
+ gens["EncryptionSettings"] = gen.PtrOf(EncryptionSettingsGenerator())
+ gens["GlobalValidation"] = gen.PtrOf(GlobalValidationGenerator())
+ gens["HttpSettings"] = gen.PtrOf(HttpSettingsGenerator())
+ gens["IdentityProviders"] = gen.PtrOf(IdentityProvidersGenerator())
+ gens["Login"] = gen.PtrOf(LoginGenerator())
+ gens["Platform"] = gen.PtrOf(AuthPlatformGenerator())
+}
+
+func Test_CookieExpiration_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 CookieExpiration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCookieExpiration, CookieExpirationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCookieExpiration runs a test to see if a specific instance of CookieExpiration round trips to JSON and back losslessly
+func RunJSONSerializationTestForCookieExpiration(subject CookieExpiration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CookieExpiration
+ 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 CookieExpiration instances for property testing - lazily instantiated by CookieExpirationGenerator()
+var cookieExpirationGenerator gopter.Gen
+
+// CookieExpirationGenerator returns a generator of CookieExpiration instances for property testing.
+func CookieExpirationGenerator() gopter.Gen {
+ if cookieExpirationGenerator != nil {
+ return cookieExpirationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCookieExpiration(generators)
+ cookieExpirationGenerator = gen.Struct(reflect.TypeOf(CookieExpiration{}), generators)
+
+ return cookieExpirationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCookieExpiration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCookieExpiration(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.OneConstOf(CookieExpiration_Convention_FixedTime, CookieExpiration_Convention_IdentityProviderDerived))
+ gens["TimeToExpiration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomOpenIdConnectProvider, CustomOpenIdConnectProviderGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomOpenIdConnectProvider runs a test to see if a specific instance of CustomOpenIdConnectProvider round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomOpenIdConnectProvider(subject CustomOpenIdConnectProvider) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomOpenIdConnectProvider
+ 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 CustomOpenIdConnectProvider instances for property testing - lazily instantiated by
+// CustomOpenIdConnectProviderGenerator()
+var customOpenIdConnectProviderGenerator gopter.Gen
+
+// CustomOpenIdConnectProviderGenerator returns a generator of CustomOpenIdConnectProvider instances for property testing.
+// We first initialize customOpenIdConnectProviderGenerator 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 CustomOpenIdConnectProviderGenerator() gopter.Gen {
+ if customOpenIdConnectProviderGenerator != nil {
+ return customOpenIdConnectProviderGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ customOpenIdConnectProviderGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ customOpenIdConnectProviderGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider{}), generators)
+
+ return customOpenIdConnectProviderGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(OpenIdConnectLoginGenerator())
+ gens["Registration"] = gen.PtrOf(OpenIdConnectRegistrationGenerator())
+}
+
+func Test_DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDefaultAuthorizationPolicy, DefaultAuthorizationPolicyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDefaultAuthorizationPolicy runs a test to see if a specific instance of DefaultAuthorizationPolicy round trips to JSON and back losslessly
+func RunJSONSerializationTestForDefaultAuthorizationPolicy(subject DefaultAuthorizationPolicy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DefaultAuthorizationPolicy
+ 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 DefaultAuthorizationPolicy instances for property testing - lazily instantiated by
+// DefaultAuthorizationPolicyGenerator()
+var defaultAuthorizationPolicyGenerator gopter.Gen
+
+// DefaultAuthorizationPolicyGenerator returns a generator of DefaultAuthorizationPolicy instances for property testing.
+// We first initialize defaultAuthorizationPolicyGenerator 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 DefaultAuthorizationPolicyGenerator() gopter.Gen {
+ if defaultAuthorizationPolicyGenerator != nil {
+ return defaultAuthorizationPolicyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ defaultAuthorizationPolicyGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ defaultAuthorizationPolicyGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy{}), generators)
+
+ return defaultAuthorizationPolicyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(gens map[string]gopter.Gen) {
+ gens["AllowedApplications"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy(gens map[string]gopter.Gen) {
+ gens["AllowedPrincipals"] = gen.PtrOf(AllowedPrincipalsGenerator())
+}
+
+func Test_EncryptionSettings_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 EncryptionSettings via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEncryptionSettings, EncryptionSettingsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEncryptionSettings runs a test to see if a specific instance of EncryptionSettings round trips to JSON and back losslessly
+func RunJSONSerializationTestForEncryptionSettings(subject EncryptionSettings) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EncryptionSettings
+ 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 EncryptionSettings instances for property testing - lazily instantiated by EncryptionSettingsGenerator()
+var encryptionSettingsGenerator gopter.Gen
+
+// EncryptionSettingsGenerator returns a generator of EncryptionSettings instances for property testing.
+func EncryptionSettingsGenerator() gopter.Gen {
+ if encryptionSettingsGenerator != nil {
+ return encryptionSettingsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEncryptionSettings(generators)
+ encryptionSettingsGenerator = gen.Struct(reflect.TypeOf(EncryptionSettings{}), generators)
+
+ return encryptionSettingsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEncryptionSettings is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEncryptionSettings(gens map[string]gopter.Gen) {
+ gens["ContainerAppAuthEncryptionSecretName"] = gen.PtrOf(gen.AlphaString())
+ gens["ContainerAppAuthSigningSecretName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Facebook_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 Facebook via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForFacebook, FacebookGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForFacebook runs a test to see if a specific instance of Facebook round trips to JSON and back losslessly
+func RunJSONSerializationTestForFacebook(subject Facebook) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Facebook
+ 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 Facebook instances for property testing - lazily instantiated by FacebookGenerator()
+var facebookGenerator gopter.Gen
+
+// FacebookGenerator returns a generator of Facebook instances for property testing.
+// We first initialize facebookGenerator 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 FacebookGenerator() gopter.Gen {
+ if facebookGenerator != nil {
+ return facebookGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook(generators)
+ facebookGenerator = gen.Struct(reflect.TypeOf(Facebook{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook(generators)
+ AddRelatedPropertyGeneratorsForFacebook(generators)
+ facebookGenerator = gen.Struct(reflect.TypeOf(Facebook{}), generators)
+
+ return facebookGenerator
+}
+
+// AddIndependentPropertyGeneratorsForFacebook is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForFacebook(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["GraphApiVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForFacebook is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForFacebook(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(AppRegistrationGenerator())
+}
+
+func Test_ForwardProxy_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 ForwardProxy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForForwardProxy, ForwardProxyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForForwardProxy runs a test to see if a specific instance of ForwardProxy round trips to JSON and back losslessly
+func RunJSONSerializationTestForForwardProxy(subject ForwardProxy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ForwardProxy
+ 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 ForwardProxy instances for property testing - lazily instantiated by ForwardProxyGenerator()
+var forwardProxyGenerator gopter.Gen
+
+// ForwardProxyGenerator returns a generator of ForwardProxy instances for property testing.
+func ForwardProxyGenerator() gopter.Gen {
+ if forwardProxyGenerator != nil {
+ return forwardProxyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForForwardProxy(generators)
+ forwardProxyGenerator = gen.Struct(reflect.TypeOf(ForwardProxy{}), generators)
+
+ return forwardProxyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForForwardProxy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForForwardProxy(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.OneConstOf(ForwardProxy_Convention_Custom, ForwardProxy_Convention_NoProxy, ForwardProxy_Convention_Standard))
+ gens["CustomHostHeaderName"] = gen.PtrOf(gen.AlphaString())
+ gens["CustomProtoHeaderName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_GitHub_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 GitHub via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGitHub, GitHubGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGitHub runs a test to see if a specific instance of GitHub round trips to JSON and back losslessly
+func RunJSONSerializationTestForGitHub(subject GitHub) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GitHub
+ 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 GitHub instances for property testing - lazily instantiated by GitHubGenerator()
+var gitHubGenerator gopter.Gen
+
+// GitHubGenerator returns a generator of GitHub instances for property testing.
+// We first initialize gitHubGenerator 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 GitHubGenerator() gopter.Gen {
+ if gitHubGenerator != nil {
+ return gitHubGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub(generators)
+ gitHubGenerator = gen.Struct(reflect.TypeOf(GitHub{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub(generators)
+ AddRelatedPropertyGeneratorsForGitHub(generators)
+ gitHubGenerator = gen.Struct(reflect.TypeOf(GitHub{}), generators)
+
+ return gitHubGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGitHub is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGitHub(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGitHub is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGitHub(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistrationGenerator())
+}
+
+func Test_GlobalValidation_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 GlobalValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGlobalValidation, GlobalValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGlobalValidation runs a test to see if a specific instance of GlobalValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForGlobalValidation(subject GlobalValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GlobalValidation
+ 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 GlobalValidation instances for property testing - lazily instantiated by GlobalValidationGenerator()
+var globalValidationGenerator gopter.Gen
+
+// GlobalValidationGenerator returns a generator of GlobalValidation instances for property testing.
+func GlobalValidationGenerator() gopter.Gen {
+ if globalValidationGenerator != nil {
+ return globalValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGlobalValidation(generators)
+ globalValidationGenerator = gen.Struct(reflect.TypeOf(GlobalValidation{}), generators)
+
+ return globalValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGlobalValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGlobalValidation(gens map[string]gopter.Gen) {
+ gens["ExcludedPaths"] = gen.SliceOf(gen.AlphaString())
+ gens["RedirectToProvider"] = gen.PtrOf(gen.AlphaString())
+ gens["UnauthenticatedClientAction"] = gen.PtrOf(gen.OneConstOf(
+ GlobalValidation_UnauthenticatedClientAction_AllowAnonymous,
+ GlobalValidation_UnauthenticatedClientAction_RedirectToLoginPage,
+ GlobalValidation_UnauthenticatedClientAction_Return401,
+ GlobalValidation_UnauthenticatedClientAction_Return403))
+}
+
+func Test_Google_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 Google via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGoogle, GoogleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGoogle runs a test to see if a specific instance of Google round trips to JSON and back losslessly
+func RunJSONSerializationTestForGoogle(subject Google) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Google
+ 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 Google instances for property testing - lazily instantiated by GoogleGenerator()
+var googleGenerator gopter.Gen
+
+// GoogleGenerator returns a generator of Google instances for property testing.
+// We first initialize googleGenerator 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 GoogleGenerator() gopter.Gen {
+ if googleGenerator != nil {
+ return googleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle(generators)
+ googleGenerator = gen.Struct(reflect.TypeOf(Google{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle(generators)
+ AddRelatedPropertyGeneratorsForGoogle(generators)
+ googleGenerator = gen.Struct(reflect.TypeOf(Google{}), generators)
+
+ return googleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGoogle is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGoogle(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGoogle is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGoogle(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistrationGenerator())
+ gens["Validation"] = gen.PtrOf(AllowedAudiencesValidationGenerator())
+}
+
+func Test_HttpSettings_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 HttpSettings via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettings, HttpSettingsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettings runs a test to see if a specific instance of HttpSettings round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettings(subject HttpSettings) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettings
+ 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 HttpSettings instances for property testing - lazily instantiated by HttpSettingsGenerator()
+var httpSettingsGenerator gopter.Gen
+
+// HttpSettingsGenerator returns a generator of HttpSettings instances for property testing.
+// We first initialize httpSettingsGenerator 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 HttpSettingsGenerator() gopter.Gen {
+ if httpSettingsGenerator != nil {
+ return httpSettingsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings(generators)
+ httpSettingsGenerator = gen.Struct(reflect.TypeOf(HttpSettings{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings(generators)
+ AddRelatedPropertyGeneratorsForHttpSettings(generators)
+ httpSettingsGenerator = gen.Struct(reflect.TypeOf(HttpSettings{}), generators)
+
+ return httpSettingsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettings is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettings(gens map[string]gopter.Gen) {
+ gens["RequireHttps"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForHttpSettings is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpSettings(gens map[string]gopter.Gen) {
+ gens["ForwardProxy"] = gen.PtrOf(ForwardProxyGenerator())
+ gens["Routes"] = gen.PtrOf(HttpSettingsRoutesGenerator())
+}
+
+func Test_HttpSettingsRoutes_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 HttpSettingsRoutes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettingsRoutes, HttpSettingsRoutesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettingsRoutes runs a test to see if a specific instance of HttpSettingsRoutes round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettingsRoutes(subject HttpSettingsRoutes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettingsRoutes
+ 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 HttpSettingsRoutes instances for property testing - lazily instantiated by HttpSettingsRoutesGenerator()
+var httpSettingsRoutesGenerator gopter.Gen
+
+// HttpSettingsRoutesGenerator returns a generator of HttpSettingsRoutes instances for property testing.
+func HttpSettingsRoutesGenerator() gopter.Gen {
+ if httpSettingsRoutesGenerator != nil {
+ return httpSettingsRoutesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettingsRoutes(generators)
+ httpSettingsRoutesGenerator = gen.Struct(reflect.TypeOf(HttpSettingsRoutes{}), generators)
+
+ return httpSettingsRoutesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettingsRoutes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettingsRoutes(gens map[string]gopter.Gen) {
+ gens["ApiPrefix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_IdentityProviders_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 IdentityProviders via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIdentityProviders, IdentityProvidersGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIdentityProviders runs a test to see if a specific instance of IdentityProviders round trips to JSON and back losslessly
+func RunJSONSerializationTestForIdentityProviders(subject IdentityProviders) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IdentityProviders
+ 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 IdentityProviders instances for property testing - lazily instantiated by IdentityProvidersGenerator()
+var identityProvidersGenerator gopter.Gen
+
+// IdentityProvidersGenerator returns a generator of IdentityProviders instances for property testing.
+func IdentityProvidersGenerator() gopter.Gen {
+ if identityProvidersGenerator != nil {
+ return identityProvidersGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForIdentityProviders(generators)
+ identityProvidersGenerator = gen.Struct(reflect.TypeOf(IdentityProviders{}), generators)
+
+ return identityProvidersGenerator
+}
+
+// AddRelatedPropertyGeneratorsForIdentityProviders is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIdentityProviders(gens map[string]gopter.Gen) {
+ gens["Apple"] = gen.PtrOf(AppleGenerator())
+ gens["AzureActiveDirectory"] = gen.PtrOf(AzureActiveDirectoryGenerator())
+ gens["AzureStaticWebApps"] = gen.PtrOf(AzureStaticWebAppsGenerator())
+ gens["CustomOpenIdConnectProviders"] = gen.MapOf(
+ gen.AlphaString(),
+ CustomOpenIdConnectProviderGenerator())
+ gens["Facebook"] = gen.PtrOf(FacebookGenerator())
+ gens["GitHub"] = gen.PtrOf(GitHubGenerator())
+ gens["Google"] = gen.PtrOf(GoogleGenerator())
+ gens["Twitter"] = gen.PtrOf(TwitterGenerator())
+}
+
+func Test_JwtClaimChecks_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 JwtClaimChecks via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJwtClaimChecks, JwtClaimChecksGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJwtClaimChecks runs a test to see if a specific instance of JwtClaimChecks round trips to JSON and back losslessly
+func RunJSONSerializationTestForJwtClaimChecks(subject JwtClaimChecks) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JwtClaimChecks
+ 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 JwtClaimChecks instances for property testing - lazily instantiated by JwtClaimChecksGenerator()
+var jwtClaimChecksGenerator gopter.Gen
+
+// JwtClaimChecksGenerator returns a generator of JwtClaimChecks instances for property testing.
+func JwtClaimChecksGenerator() gopter.Gen {
+ if jwtClaimChecksGenerator != nil {
+ return jwtClaimChecksGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJwtClaimChecks(generators)
+ jwtClaimChecksGenerator = gen.Struct(reflect.TypeOf(JwtClaimChecks{}), generators)
+
+ return jwtClaimChecksGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJwtClaimChecks is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJwtClaimChecks(gens map[string]gopter.Gen) {
+ gens["AllowedClientApplications"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedGroups"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_Login_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 Login via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogin, LoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogin runs a test to see if a specific instance of Login round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogin(subject Login) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Login
+ 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 Login instances for property testing - lazily instantiated by LoginGenerator()
+var loginGenerator gopter.Gen
+
+// LoginGenerator returns a generator of Login instances for property testing.
+// We first initialize loginGenerator 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 LoginGenerator() gopter.Gen {
+ if loginGenerator != nil {
+ return loginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin(generators)
+ loginGenerator = gen.Struct(reflect.TypeOf(Login{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin(generators)
+ AddRelatedPropertyGeneratorsForLogin(generators)
+ loginGenerator = gen.Struct(reflect.TypeOf(Login{}), generators)
+
+ return loginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogin(gens map[string]gopter.Gen) {
+ gens["AllowedExternalRedirectUrls"] = gen.SliceOf(gen.AlphaString())
+ gens["PreserveUrlFragmentsForLogins"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForLogin is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForLogin(gens map[string]gopter.Gen) {
+ gens["CookieExpiration"] = gen.PtrOf(CookieExpirationGenerator())
+ gens["Nonce"] = gen.PtrOf(NonceGenerator())
+ gens["Routes"] = gen.PtrOf(LoginRoutesGenerator())
+ gens["TokenStore"] = gen.PtrOf(TokenStoreGenerator())
+}
+
+func Test_LoginRoutes_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 LoginRoutes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginRoutes, LoginRoutesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginRoutes runs a test to see if a specific instance of LoginRoutes round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginRoutes(subject LoginRoutes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginRoutes
+ 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 LoginRoutes instances for property testing - lazily instantiated by LoginRoutesGenerator()
+var loginRoutesGenerator gopter.Gen
+
+// LoginRoutesGenerator returns a generator of LoginRoutes instances for property testing.
+func LoginRoutesGenerator() gopter.Gen {
+ if loginRoutesGenerator != nil {
+ return loginRoutesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginRoutes(generators)
+ loginRoutesGenerator = gen.Struct(reflect.TypeOf(LoginRoutes{}), generators)
+
+ return loginRoutesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginRoutes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginRoutes(gens map[string]gopter.Gen) {
+ gens["LogoutEndpoint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LoginScopes_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 LoginScopes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginScopes, LoginScopesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginScopes runs a test to see if a specific instance of LoginScopes round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginScopes(subject LoginScopes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginScopes
+ 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 LoginScopes instances for property testing - lazily instantiated by LoginScopesGenerator()
+var loginScopesGenerator gopter.Gen
+
+// LoginScopesGenerator returns a generator of LoginScopes instances for property testing.
+func LoginScopesGenerator() gopter.Gen {
+ if loginScopesGenerator != nil {
+ return loginScopesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginScopes(generators)
+ loginScopesGenerator = gen.Struct(reflect.TypeOf(LoginScopes{}), generators)
+
+ return loginScopesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginScopes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginScopes(gens map[string]gopter.Gen) {
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_Nonce_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 Nonce via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForNonce, NonceGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForNonce runs a test to see if a specific instance of Nonce round trips to JSON and back losslessly
+func RunJSONSerializationTestForNonce(subject Nonce) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Nonce
+ 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 Nonce instances for property testing - lazily instantiated by NonceGenerator()
+var nonceGenerator gopter.Gen
+
+// NonceGenerator returns a generator of Nonce instances for property testing.
+func NonceGenerator() gopter.Gen {
+ if nonceGenerator != nil {
+ return nonceGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForNonce(generators)
+ nonceGenerator = gen.Struct(reflect.TypeOf(Nonce{}), generators)
+
+ return nonceGenerator
+}
+
+// AddIndependentPropertyGeneratorsForNonce is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForNonce(gens map[string]gopter.Gen) {
+ gens["NonceExpirationInterval"] = gen.PtrOf(gen.AlphaString())
+ gens["ValidateNonce"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_OpenIdConnectClientCredential_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 OpenIdConnectClientCredential via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectClientCredential, OpenIdConnectClientCredentialGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectClientCredential runs a test to see if a specific instance of OpenIdConnectClientCredential round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectClientCredential(subject OpenIdConnectClientCredential) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectClientCredential
+ 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 OpenIdConnectClientCredential instances for property testing - lazily instantiated by
+// OpenIdConnectClientCredentialGenerator()
+var openIdConnectClientCredentialGenerator gopter.Gen
+
+// OpenIdConnectClientCredentialGenerator returns a generator of OpenIdConnectClientCredential instances for property testing.
+func OpenIdConnectClientCredentialGenerator() gopter.Gen {
+ if openIdConnectClientCredentialGenerator != nil {
+ return openIdConnectClientCredentialGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential(generators)
+ openIdConnectClientCredentialGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectClientCredential{}), generators)
+
+ return openIdConnectClientCredentialGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential(gens map[string]gopter.Gen) {
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["Method"] = gen.PtrOf(gen.OneConstOf(OpenIdConnectClientCredential_Method_ClientSecretPost))
+}
+
+func Test_OpenIdConnectConfig_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 OpenIdConnectConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectConfig, OpenIdConnectConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectConfig runs a test to see if a specific instance of OpenIdConnectConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectConfig(subject OpenIdConnectConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectConfig
+ 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 OpenIdConnectConfig instances for property testing - lazily instantiated by
+// OpenIdConnectConfigGenerator()
+var openIdConnectConfigGenerator gopter.Gen
+
+// OpenIdConnectConfigGenerator returns a generator of OpenIdConnectConfig instances for property testing.
+func OpenIdConnectConfigGenerator() gopter.Gen {
+ if openIdConnectConfigGenerator != nil {
+ return openIdConnectConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectConfig(generators)
+ openIdConnectConfigGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectConfig{}), generators)
+
+ return openIdConnectConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectConfig(gens map[string]gopter.Gen) {
+ gens["AuthorizationEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["CertificationUri"] = gen.PtrOf(gen.AlphaString())
+ gens["Issuer"] = gen.PtrOf(gen.AlphaString())
+ gens["TokenEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["WellKnownOpenIdConfiguration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectLogin_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 OpenIdConnectLogin via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectLogin, OpenIdConnectLoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectLogin runs a test to see if a specific instance of OpenIdConnectLogin round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectLogin(subject OpenIdConnectLogin) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectLogin
+ 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 OpenIdConnectLogin instances for property testing - lazily instantiated by OpenIdConnectLoginGenerator()
+var openIdConnectLoginGenerator gopter.Gen
+
+// OpenIdConnectLoginGenerator returns a generator of OpenIdConnectLogin instances for property testing.
+func OpenIdConnectLoginGenerator() gopter.Gen {
+ if openIdConnectLoginGenerator != nil {
+ return openIdConnectLoginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectLogin(generators)
+ openIdConnectLoginGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectLogin{}), generators)
+
+ return openIdConnectLoginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectLogin(gens map[string]gopter.Gen) {
+ gens["NameClaimType"] = gen.PtrOf(gen.AlphaString())
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectRegistration_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 OpenIdConnectRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectRegistration, OpenIdConnectRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectRegistration runs a test to see if a specific instance of OpenIdConnectRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectRegistration(subject OpenIdConnectRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectRegistration
+ 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 OpenIdConnectRegistration instances for property testing - lazily instantiated by
+// OpenIdConnectRegistrationGenerator()
+var openIdConnectRegistrationGenerator gopter.Gen
+
+// OpenIdConnectRegistrationGenerator returns a generator of OpenIdConnectRegistration instances for property testing.
+// We first initialize openIdConnectRegistrationGenerator 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 OpenIdConnectRegistrationGenerator() gopter.Gen {
+ if openIdConnectRegistrationGenerator != nil {
+ return openIdConnectRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ openIdConnectRegistrationGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ AddRelatedPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ openIdConnectRegistrationGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration{}), generators)
+
+ return openIdConnectRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForOpenIdConnectRegistration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForOpenIdConnectRegistration(gens map[string]gopter.Gen) {
+ gens["ClientCredential"] = gen.PtrOf(OpenIdConnectClientCredentialGenerator())
+ gens["OpenIdConnectConfiguration"] = gen.PtrOf(OpenIdConnectConfigGenerator())
+}
+
+func Test_TokenStore_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 TokenStore via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTokenStore, TokenStoreGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTokenStore runs a test to see if a specific instance of TokenStore round trips to JSON and back losslessly
+func RunJSONSerializationTestForTokenStore(subject TokenStore) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TokenStore
+ 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 TokenStore instances for property testing - lazily instantiated by TokenStoreGenerator()
+var tokenStoreGenerator gopter.Gen
+
+// TokenStoreGenerator returns a generator of TokenStore instances for property testing.
+// We first initialize tokenStoreGenerator 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 TokenStoreGenerator() gopter.Gen {
+ if tokenStoreGenerator != nil {
+ return tokenStoreGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore(generators)
+ tokenStoreGenerator = gen.Struct(reflect.TypeOf(TokenStore{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore(generators)
+ AddRelatedPropertyGeneratorsForTokenStore(generators)
+ tokenStoreGenerator = gen.Struct(reflect.TypeOf(TokenStore{}), generators)
+
+ return tokenStoreGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTokenStore is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTokenStore(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["TokenRefreshExtensionHours"] = gen.PtrOf(gen.Float64())
+}
+
+// AddRelatedPropertyGeneratorsForTokenStore is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTokenStore(gens map[string]gopter.Gen) {
+ gens["AzureBlobStorage"] = gen.PtrOf(BlobStorageTokenStoreGenerator())
+}
+
+func Test_Twitter_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 Twitter via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitter, TwitterGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitter runs a test to see if a specific instance of Twitter round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitter(subject Twitter) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Twitter
+ 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 Twitter instances for property testing - lazily instantiated by TwitterGenerator()
+var twitterGenerator gopter.Gen
+
+// TwitterGenerator returns a generator of Twitter instances for property testing.
+// We first initialize twitterGenerator 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 TwitterGenerator() gopter.Gen {
+ if twitterGenerator != nil {
+ return twitterGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter(generators)
+ twitterGenerator = gen.Struct(reflect.TypeOf(Twitter{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter(generators)
+ AddRelatedPropertyGeneratorsForTwitter(generators)
+ twitterGenerator = gen.Struct(reflect.TypeOf(Twitter{}), generators)
+
+ return twitterGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitter is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitter(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForTwitter is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTwitter(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(TwitterRegistrationGenerator())
+}
+
+func Test_TwitterRegistration_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 TwitterRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitterRegistration, TwitterRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitterRegistration runs a test to see if a specific instance of TwitterRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitterRegistration(subject TwitterRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TwitterRegistration
+ 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 TwitterRegistration instances for property testing - lazily instantiated by
+// TwitterRegistrationGenerator()
+var twitterRegistrationGenerator gopter.Gen
+
+// TwitterRegistrationGenerator returns a generator of TwitterRegistration instances for property testing.
+func TwitterRegistrationGenerator() gopter.Gen {
+ if twitterRegistrationGenerator != nil {
+ return twitterRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitterRegistration(generators)
+ twitterRegistrationGenerator = gen.Struct(reflect.TypeOf(TwitterRegistration{}), generators)
+
+ return twitterRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitterRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitterRegistration(gens map[string]gopter.Gen) {
+ gens["ConsumerKey"] = gen.PtrOf(gen.AlphaString())
+ gens["ConsumerSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
diff --git a/v2/api/app/v1api20240301/arm/auth_config_status_types_gen.go b/v2/api/app/v1api20240301/arm/auth_config_status_types_gen.go
new file mode 100644
index 00000000000..09924141242
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/auth_config_status_types_gen.go
@@ -0,0 +1,624 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+type AuthConfig_STATUS struct {
+ // Id: Fully qualified resource ID for the resource. Ex -
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ Id *string `json:"id,omitempty"`
+
+ // Name: The name of the resource
+ Name *string `json:"name,omitempty"`
+
+ // Properties: AuthConfig resource specific properties
+ Properties *ContainerApps_AuthConfig_Properties_STATUS `json:"properties,omitempty"`
+
+ // SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ SystemData *SystemData_STATUS `json:"systemData,omitempty"`
+
+ // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
+ Type *string `json:"type,omitempty"`
+}
+
+type ContainerApps_AuthConfig_Properties_STATUS struct {
+ // EncryptionSettings: The configuration settings of the secrets references of encryption key and signing key for
+ // ContainerApp Service Authentication/Authorization.
+ EncryptionSettings *EncryptionSettings_STATUS `json:"encryptionSettings,omitempty"`
+
+ // GlobalValidation: The configuration settings that determines the validation flow of users using Service
+ // Authentication/Authorization.
+ GlobalValidation *GlobalValidation_STATUS `json:"globalValidation,omitempty"`
+
+ // HttpSettings: The configuration settings of the HTTP requests for authentication and authorization requests made against
+ // ContainerApp Service Authentication/Authorization.
+ HttpSettings *HttpSettings_STATUS `json:"httpSettings,omitempty"`
+
+ // IdentityProviders: The configuration settings of each of the identity providers used to configure ContainerApp Service
+ // Authentication/Authorization.
+ IdentityProviders *IdentityProviders_STATUS `json:"identityProviders,omitempty"`
+
+ // Login: The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+ Login *Login_STATUS `json:"login,omitempty"`
+
+ // Platform: The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+ Platform *AuthPlatform_STATUS `json:"platform,omitempty"`
+}
+
+// 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"`
+}
+
+// The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+type AuthPlatform_STATUS struct {
+ // Enabled: true
if the Authentication / Authorization feature is enabled for the current app; otherwise,
+ // false
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // RuntimeVersion: The RuntimeVersion of the Authentication / Authorization feature in use for the current app.
+ // The setting in this value can control the behavior of certain features in the Authentication / Authorization module.
+ RuntimeVersion *string `json:"runtimeVersion,omitempty"`
+}
+
+// The configuration settings of the secrets references of encryption key and signing key for ContainerApp Service
+// Authentication/Authorization.
+type EncryptionSettings_STATUS struct {
+ // ContainerAppAuthEncryptionSecretName: The secret name which is referenced for EncryptionKey.
+ ContainerAppAuthEncryptionSecretName *string `json:"containerAppAuthEncryptionSecretName,omitempty"`
+
+ // ContainerAppAuthSigningSecretName: The secret name which is referenced for SigningKey.
+ ContainerAppAuthSigningSecretName *string `json:"containerAppAuthSigningSecretName,omitempty"`
+}
+
+// The configuration settings that determines the validation flow of users using ContainerApp Service
+// Authentication/Authorization.
+type GlobalValidation_STATUS struct {
+ // ExcludedPaths: The paths for which unauthenticated flow would not be redirected to the login page.
+ ExcludedPaths []string `json:"excludedPaths,omitempty"`
+
+ // RedirectToProvider: The default authentication provider to use when multiple providers are configured.
+ // This setting is only needed if multiple providers are configured and the unauthenticated client
+ // action is set to "RedirectToLoginPage".
+ RedirectToProvider *string `json:"redirectToProvider,omitempty"`
+
+ // UnauthenticatedClientAction: The action to take when an unauthenticated client attempts to access the app.
+ UnauthenticatedClientAction *GlobalValidation_UnauthenticatedClientAction_STATUS `json:"unauthenticatedClientAction,omitempty"`
+}
+
+// The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp
+// Service Authentication/Authorization.
+type HttpSettings_STATUS struct {
+ // ForwardProxy: The configuration settings of a forward proxy used to make the requests.
+ ForwardProxy *ForwardProxy_STATUS `json:"forwardProxy,omitempty"`
+
+ // RequireHttps: false
if the authentication/authorization responses not having the HTTPS scheme are
+ // permissible; otherwise, true
.
+ RequireHttps *bool `json:"requireHttps,omitempty"`
+
+ // Routes: The configuration settings of the paths HTTP requests.
+ Routes *HttpSettingsRoutes_STATUS `json:"routes,omitempty"`
+}
+
+// The configuration settings of each of the identity providers used to configure ContainerApp Service
+// Authentication/Authorization.
+type IdentityProviders_STATUS struct {
+ // Apple: The configuration settings of the Apple provider.
+ Apple *Apple_STATUS `json:"apple,omitempty"`
+
+ // AzureActiveDirectory: The configuration settings of the Azure Active directory provider.
+ AzureActiveDirectory *AzureActiveDirectory_STATUS `json:"azureActiveDirectory,omitempty"`
+
+ // AzureStaticWebApps: The configuration settings of the Azure Static Web Apps provider.
+ AzureStaticWebApps *AzureStaticWebApps_STATUS `json:"azureStaticWebApps,omitempty"`
+
+ // CustomOpenIdConnectProviders: The map of the name of the alias of each custom Open ID Connect provider to the
+ // configuration settings of the custom Open ID Connect provider.
+ CustomOpenIdConnectProviders map[string]CustomOpenIdConnectProvider_STATUS `json:"customOpenIdConnectProviders,omitempty"`
+
+ // Facebook: The configuration settings of the Facebook provider.
+ Facebook *Facebook_STATUS `json:"facebook,omitempty"`
+
+ // GitHub: The configuration settings of the GitHub provider.
+ GitHub *GitHub_STATUS `json:"gitHub,omitempty"`
+
+ // Google: The configuration settings of the Google provider.
+ Google *Google_STATUS `json:"google,omitempty"`
+
+ // Twitter: The configuration settings of the Twitter provider.
+ Twitter *Twitter_STATUS `json:"twitter,omitempty"`
+}
+
+// The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+type Login_STATUS struct {
+ // AllowedExternalRedirectUrls: External URLs that can be redirected to as part of logging in or logging out of the app.
+ // Note that the query string part of the URL is ignored.
+ // This is an advanced setting typically only needed by Windows Store application backends.
+ // Note that URLs within the current domain are always implicitly allowed.
+ AllowedExternalRedirectUrls []string `json:"allowedExternalRedirectUrls,omitempty"`
+
+ // CookieExpiration: The configuration settings of the session cookie's expiration.
+ CookieExpiration *CookieExpiration_STATUS `json:"cookieExpiration,omitempty"`
+
+ // Nonce: The configuration settings of the nonce used in the login flow.
+ Nonce *Nonce_STATUS `json:"nonce,omitempty"`
+
+ // PreserveUrlFragmentsForLogins: true
if the fragments from the request are preserved after the login request
+ // is made; otherwise, false
.
+ PreserveUrlFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty"`
+
+ // Routes: The routes that specify the endpoints used for login and logout requests.
+ Routes *LoginRoutes_STATUS `json:"routes,omitempty"`
+
+ // TokenStore: The configuration settings of the token store.
+ TokenStore *TokenStore_STATUS `json:"tokenStore,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,
+}
+
+// The configuration settings of the Apple provider.
+type Apple_STATUS struct {
+ // Enabled: false
if the Apple provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the Apple registration.
+ Registration *AppleRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// The configuration settings of the Azure Active directory provider.
+type AzureActiveDirectory_STATUS struct {
+ // Enabled: false
if the Azure Active Directory provider should not be enabled despite the set registration;
+ // otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // IsAutoProvisioned: Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party
+ // tooling.
+ // This is an internal flag primarily intended to support the Azure Management Portal. Users should not
+ // read or write to this property.
+ IsAutoProvisioned *bool `json:"isAutoProvisioned,omitempty"`
+
+ // Login: The configuration settings of the Azure Active Directory login flow.
+ Login *AzureActiveDirectoryLogin_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the Azure Active Directory app registration.
+ Registration *AzureActiveDirectoryRegistration_STATUS `json:"registration,omitempty"`
+
+ // Validation: The configuration settings of the Azure Active Directory token validation flow.
+ Validation *AzureActiveDirectoryValidation_STATUS `json:"validation,omitempty"`
+}
+
+// The configuration settings of the Azure Static Web Apps provider.
+type AzureStaticWebApps_STATUS struct {
+ // Enabled: false
if the Azure Static Web Apps provider should not be enabled despite the set registration;
+ // otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Registration: The configuration settings of the Azure Static Web Apps registration.
+ Registration *AzureStaticWebAppsRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// The configuration settings of the session cookie's expiration.
+type CookieExpiration_STATUS struct {
+ // Convention: The convention used when determining the session cookie's expiration.
+ Convention *CookieExpiration_Convention_STATUS `json:"convention,omitempty"`
+
+ // TimeToExpiration: The time after the request is made when the session cookie should expire.
+ TimeToExpiration *string `json:"timeToExpiration,omitempty"`
+}
+
+// The configuration settings of the custom Open ID Connect provider.
+type CustomOpenIdConnectProvider_STATUS struct {
+ // Enabled: false
if the custom Open ID provider provider should not be enabled; otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow of the custom Open ID Connect provider.
+ Login *OpenIdConnectLogin_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the custom Open ID Connect provider.
+ Registration *OpenIdConnectRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// The configuration settings of the Facebook provider.
+type Facebook_STATUS struct {
+ // Enabled: false
if the Facebook provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // GraphApiVersion: The version of the Facebook api to be used while logging in.
+ GraphApiVersion *string `json:"graphApiVersion,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Facebook provider.
+ Registration *AppRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// The configuration settings of a forward proxy used to make the requests.
+type ForwardProxy_STATUS struct {
+ // Convention: The convention used to determine the url of the request made.
+ Convention *ForwardProxy_Convention_STATUS `json:"convention,omitempty"`
+
+ // CustomHostHeaderName: The name of the header containing the host of the request.
+ CustomHostHeaderName *string `json:"customHostHeaderName,omitempty"`
+
+ // CustomProtoHeaderName: The name of the header containing the scheme of the request.
+ CustomProtoHeaderName *string `json:"customProtoHeaderName,omitempty"`
+}
+
+// The configuration settings of the GitHub provider.
+type GitHub_STATUS struct {
+ // Enabled: false
if the GitHub provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the GitHub provider.
+ Registration *ClientRegistration_STATUS `json:"registration,omitempty"`
+}
+
+type GlobalValidation_UnauthenticatedClientAction_STATUS string
+
+const (
+ GlobalValidation_UnauthenticatedClientAction_STATUS_AllowAnonymous = GlobalValidation_UnauthenticatedClientAction_STATUS("AllowAnonymous")
+ GlobalValidation_UnauthenticatedClientAction_STATUS_RedirectToLoginPage = GlobalValidation_UnauthenticatedClientAction_STATUS("RedirectToLoginPage")
+ GlobalValidation_UnauthenticatedClientAction_STATUS_Return401 = GlobalValidation_UnauthenticatedClientAction_STATUS("Return401")
+ GlobalValidation_UnauthenticatedClientAction_STATUS_Return403 = GlobalValidation_UnauthenticatedClientAction_STATUS("Return403")
+)
+
+// Mapping from string to GlobalValidation_UnauthenticatedClientAction_STATUS
+var globalValidation_UnauthenticatedClientAction_STATUS_Values = map[string]GlobalValidation_UnauthenticatedClientAction_STATUS{
+ "allowanonymous": GlobalValidation_UnauthenticatedClientAction_STATUS_AllowAnonymous,
+ "redirecttologinpage": GlobalValidation_UnauthenticatedClientAction_STATUS_RedirectToLoginPage,
+ "return401": GlobalValidation_UnauthenticatedClientAction_STATUS_Return401,
+ "return403": GlobalValidation_UnauthenticatedClientAction_STATUS_Return403,
+}
+
+// The configuration settings of the Google provider.
+type Google_STATUS struct {
+ // Enabled: false
if the Google provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Google provider.
+ Registration *ClientRegistration_STATUS `json:"registration,omitempty"`
+
+ // Validation: The configuration settings of the Azure Active Directory token validation flow.
+ Validation *AllowedAudiencesValidation_STATUS `json:"validation,omitempty"`
+}
+
+// The configuration settings of the paths HTTP requests.
+type HttpSettingsRoutes_STATUS struct {
+ // ApiPrefix: The prefix that should precede all the authentication/authorization paths.
+ ApiPrefix *string `json:"apiPrefix,omitempty"`
+}
+
+// The routes that specify the endpoints used for login and logout requests.
+type LoginRoutes_STATUS struct {
+ // LogoutEndpoint: The endpoint at which a logout request should be made.
+ LogoutEndpoint *string `json:"logoutEndpoint,omitempty"`
+}
+
+// The configuration settings of the nonce used in the login flow.
+type Nonce_STATUS struct {
+ // NonceExpirationInterval: The time after the request is made when the nonce should expire.
+ NonceExpirationInterval *string `json:"nonceExpirationInterval,omitempty"`
+
+ // ValidateNonce: false
if the nonce should not be validated while completing the login flow; otherwise,
+ // true
.
+ ValidateNonce *bool `json:"validateNonce,omitempty"`
+}
+
+// The configuration settings of the token store.
+type TokenStore_STATUS struct {
+ // AzureBlobStorage: The configuration settings of the storage of the tokens if blob storage is used.
+ AzureBlobStorage *BlobStorageTokenStore_STATUS `json:"azureBlobStorage,omitempty"`
+
+ // Enabled: true
to durably store platform-specific security tokens that are obtained during login flows;
+ // otherwise, false
.
+ // The default is false
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // TokenRefreshExtensionHours: The number of hours after session token expiration that a session token can be used to
+ // call the token refresh API. The default is 72 hours.
+ TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty"`
+}
+
+// The configuration settings of the Twitter provider.
+type Twitter_STATUS struct {
+ // Enabled: false
if the Twitter provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Twitter provider.
+ Registration *TwitterRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// The configuration settings of the Allowed Audiences validation flow.
+type AllowedAudiencesValidation_STATUS struct {
+ // AllowedAudiences: The configuration settings of the allowed list of audiences from which to validate the JWT token.
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+}
+
+// The configuration settings of the registration for the Apple provider
+type AppleRegistration_STATUS struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+}
+
+// The configuration settings of the app registration for providers that have app ids and app secrets
+type AppRegistration_STATUS struct {
+ // AppId: The App ID of the app used for login.
+ AppId *string `json:"appId,omitempty"`
+
+ // AppSecretSettingName: The app setting name that contains the app secret.
+ AppSecretSettingName *string `json:"appSecretSettingName,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory login flow.
+type AzureActiveDirectoryLogin_STATUS struct {
+ // DisableWWWAuthenticate: true
if the www-authenticate provider should be omitted from the request;
+ // otherwise, false
.
+ DisableWWWAuthenticate *bool `json:"disableWWWAuthenticate,omitempty"`
+
+ // LoginParameters: Login parameters to send to the OpenID Connect authorization endpoint when
+ // a user logs in. Each parameter must be in the form "key=value".
+ LoginParameters []string `json:"loginParameters,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory app registration.
+type AzureActiveDirectoryRegistration_STATUS struct {
+ // ClientId: The Client ID of this relying party application, known as the client_id.
+ // This setting is required for enabling OpenID Connection authentication with Azure Active Directory or
+ // other 3rd party OpenID Connect providers.
+ // More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretCertificateIssuer: An alternative to the client secret thumbprint, that is the issuer of a certificate used
+ // for signing purposes. This property acts as
+ // a replacement for the Client Secret Certificate Thumbprint. It is also optional.
+ ClientSecretCertificateIssuer *string `json:"clientSecretCertificateIssuer,omitempty"`
+
+ // ClientSecretCertificateSubjectAlternativeName: An alternative to the client secret thumbprint, that is the subject
+ // alternative name of a certificate used for signing purposes. This property acts as
+ // a replacement for the Client Secret Certificate Thumbprint. It is also optional.
+ ClientSecretCertificateSubjectAlternativeName *string `json:"clientSecretCertificateSubjectAlternativeName,omitempty"`
+
+ // ClientSecretCertificateThumbprint: An alternative to the client secret, that is the thumbprint of a certificate used for
+ // signing purposes. This property acts as
+ // a replacement for the Client Secret. It is also optional.
+ ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret of the relying party application.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+
+ // OpenIdIssuer: The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.
+ // When using Azure Active Directory, this value is the URI of the directory tenant, e.g.
+ // https://login.microsoftonline.com/v2.0/{tenant-guid}/.
+ // This URI is a case-sensitive identifier for the token issuer.
+ // More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html
+ OpenIdIssuer *string `json:"openIdIssuer,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory token validation flow.
+type AzureActiveDirectoryValidation_STATUS struct {
+ // AllowedAudiences: The list of audiences that can make successful authentication/authorization requests.
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+
+ // DefaultAuthorizationPolicy: The configuration settings of the default authorization policy.
+ DefaultAuthorizationPolicy *DefaultAuthorizationPolicy_STATUS `json:"defaultAuthorizationPolicy,omitempty"`
+
+ // JwtClaimChecks: The configuration settings of the checks that should be made while validating the JWT Claims.
+ JwtClaimChecks *JwtClaimChecks_STATUS `json:"jwtClaimChecks,omitempty"`
+}
+
+// The configuration settings of the registration for the Azure Static Web Apps provider
+type AzureStaticWebAppsRegistration_STATUS struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+}
+
+// The configuration settings of the storage of the tokens if blob storage is used.
+type BlobStorageTokenStore_STATUS struct {
+ // SasUrlSettingName: The name of the app secrets containing the SAS URL of the blob storage containing the tokens.
+ SasUrlSettingName *string `json:"sasUrlSettingName,omitempty"`
+}
+
+// The configuration settings of the app registration for providers that have client ids and client secrets
+type ClientRegistration_STATUS struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+}
+
+type CookieExpiration_Convention_STATUS string
+
+const (
+ CookieExpiration_Convention_STATUS_FixedTime = CookieExpiration_Convention_STATUS("FixedTime")
+ CookieExpiration_Convention_STATUS_IdentityProviderDerived = CookieExpiration_Convention_STATUS("IdentityProviderDerived")
+)
+
+// Mapping from string to CookieExpiration_Convention_STATUS
+var cookieExpiration_Convention_STATUS_Values = map[string]CookieExpiration_Convention_STATUS{
+ "fixedtime": CookieExpiration_Convention_STATUS_FixedTime,
+ "identityproviderderived": CookieExpiration_Convention_STATUS_IdentityProviderDerived,
+}
+
+type ForwardProxy_Convention_STATUS string
+
+const (
+ ForwardProxy_Convention_STATUS_Custom = ForwardProxy_Convention_STATUS("Custom")
+ ForwardProxy_Convention_STATUS_NoProxy = ForwardProxy_Convention_STATUS("NoProxy")
+ ForwardProxy_Convention_STATUS_Standard = ForwardProxy_Convention_STATUS("Standard")
+)
+
+// Mapping from string to ForwardProxy_Convention_STATUS
+var forwardProxy_Convention_STATUS_Values = map[string]ForwardProxy_Convention_STATUS{
+ "custom": ForwardProxy_Convention_STATUS_Custom,
+ "noproxy": ForwardProxy_Convention_STATUS_NoProxy,
+ "standard": ForwardProxy_Convention_STATUS_Standard,
+}
+
+// The configuration settings of the login flow, including the scopes that should be requested.
+type LoginScopes_STATUS struct {
+ // Scopes: A list of the scopes that should be requested while authenticating.
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+// The configuration settings of the login flow of the custom Open ID Connect provider.
+type OpenIdConnectLogin_STATUS struct {
+ // NameClaimType: The name of the claim that contains the users name.
+ NameClaimType *string `json:"nameClaimType,omitempty"`
+
+ // Scopes: A list of the scopes that should be requested while authenticating.
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+// The configuration settings of the app registration for the custom Open ID Connect provider.
+type OpenIdConnectRegistration_STATUS struct {
+ // ClientCredential: The authentication credentials of the custom Open ID Connect provider.
+ ClientCredential *OpenIdConnectClientCredential_STATUS `json:"clientCredential,omitempty"`
+
+ // ClientId: The client id of the custom Open ID Connect provider.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // OpenIdConnectConfiguration: The configuration settings of the endpoints used for the custom Open ID Connect provider.
+ OpenIdConnectConfiguration *OpenIdConnectConfig_STATUS `json:"openIdConnectConfiguration,omitempty"`
+}
+
+// The configuration settings of the app registration for the Twitter provider.
+type TwitterRegistration_STATUS struct {
+ // ConsumerKey: The OAuth 1.0a consumer key of the Twitter application used for sign-in.
+ // This setting is required for enabling Twitter Sign-In.
+ // Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in
+ ConsumerKey *string `json:"consumerKey,omitempty"`
+
+ // ConsumerSecretSettingName: The app setting name that contains the OAuth 1.0a consumer secret of the Twitter
+ // application used for sign-in.
+ ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory default authorization policy.
+type DefaultAuthorizationPolicy_STATUS struct {
+ // AllowedApplications: The configuration settings of the Azure Active Directory allowed applications.
+ AllowedApplications []string `json:"allowedApplications,omitempty"`
+
+ // AllowedPrincipals: The configuration settings of the Azure Active Directory allowed principals.
+ AllowedPrincipals *AllowedPrincipals_STATUS `json:"allowedPrincipals,omitempty"`
+}
+
+// The configuration settings of the checks that should be made while validating the JWT Claims.
+type JwtClaimChecks_STATUS struct {
+ // AllowedClientApplications: The list of the allowed client applications.
+ AllowedClientApplications []string `json:"allowedClientApplications,omitempty"`
+
+ // AllowedGroups: The list of the allowed groups.
+ AllowedGroups []string `json:"allowedGroups,omitempty"`
+}
+
+// The authentication client credentials of the custom Open ID Connect provider.
+type OpenIdConnectClientCredential_STATUS struct {
+ // ClientSecretSettingName: The app setting that contains the client secret for the custom Open ID Connect provider.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+
+ // Method: The method that should be used to authenticate the user.
+ Method *OpenIdConnectClientCredential_Method_STATUS `json:"method,omitempty"`
+}
+
+// The configuration settings of the endpoints used for the custom Open ID Connect provider.
+type OpenIdConnectConfig_STATUS struct {
+ // AuthorizationEndpoint: The endpoint to be used to make an authorization request.
+ AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty"`
+
+ // CertificationUri: The endpoint that provides the keys necessary to validate the token.
+ CertificationUri *string `json:"certificationUri,omitempty"`
+
+ // Issuer: The endpoint that issues the token.
+ Issuer *string `json:"issuer,omitempty"`
+
+ // TokenEndpoint: The endpoint to be used to request a token.
+ TokenEndpoint *string `json:"tokenEndpoint,omitempty"`
+
+ // WellKnownOpenIdConfiguration: The endpoint that contains all the configuration endpoints for the provider.
+ WellKnownOpenIdConfiguration *string `json:"wellKnownOpenIdConfiguration,omitempty"`
+}
+
+// The configuration settings of the Azure Active Directory allowed principals.
+type AllowedPrincipals_STATUS struct {
+ // Groups: The list of the allowed groups.
+ Groups []string `json:"groups,omitempty"`
+
+ // Identities: The list of the allowed identities.
+ Identities []string `json:"identities,omitempty"`
+}
+
+type OpenIdConnectClientCredential_Method_STATUS string
+
+const OpenIdConnectClientCredential_Method_STATUS_ClientSecretPost = OpenIdConnectClientCredential_Method_STATUS("ClientSecretPost")
+
+// Mapping from string to OpenIdConnectClientCredential_Method_STATUS
+var openIdConnectClientCredential_Method_STATUS_Values = map[string]OpenIdConnectClientCredential_Method_STATUS{
+ "clientsecretpost": OpenIdConnectClientCredential_Method_STATUS_ClientSecretPost,
+}
diff --git a/v2/api/app/v1api20240301/arm/auth_config_status_types_gen_test.go b/v2/api/app/v1api20240301/arm/auth_config_status_types_gen_test.go
new file mode 100644
index 00000000000..4ac1ab1144a
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/auth_config_status_types_gen_test.go
@@ -0,0 +1,2795 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+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_AllowedAudiencesValidation_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 AllowedAudiencesValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedAudiencesValidation_STATUS, AllowedAudiencesValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedAudiencesValidation_STATUS runs a test to see if a specific instance of AllowedAudiencesValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedAudiencesValidation_STATUS(subject AllowedAudiencesValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedAudiencesValidation_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 AllowedAudiencesValidation_STATUS instances for property testing - lazily instantiated by
+// AllowedAudiencesValidation_STATUSGenerator()
+var allowedAudiencesValidation_STATUSGenerator gopter.Gen
+
+// AllowedAudiencesValidation_STATUSGenerator returns a generator of AllowedAudiencesValidation_STATUS instances for property testing.
+func AllowedAudiencesValidation_STATUSGenerator() gopter.Gen {
+ if allowedAudiencesValidation_STATUSGenerator != nil {
+ return allowedAudiencesValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS(generators)
+ allowedAudiencesValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AllowedAudiencesValidation_STATUS{}), generators)
+
+ return allowedAudiencesValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AllowedPrincipals_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 AllowedPrincipals_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedPrincipals_STATUS, AllowedPrincipals_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedPrincipals_STATUS runs a test to see if a specific instance of AllowedPrincipals_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedPrincipals_STATUS(subject AllowedPrincipals_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedPrincipals_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 AllowedPrincipals_STATUS instances for property testing - lazily instantiated by
+// AllowedPrincipals_STATUSGenerator()
+var allowedPrincipals_STATUSGenerator gopter.Gen
+
+// AllowedPrincipals_STATUSGenerator returns a generator of AllowedPrincipals_STATUS instances for property testing.
+func AllowedPrincipals_STATUSGenerator() gopter.Gen {
+ if allowedPrincipals_STATUSGenerator != nil {
+ return allowedPrincipals_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS(generators)
+ allowedPrincipals_STATUSGenerator = gen.Struct(reflect.TypeOf(AllowedPrincipals_STATUS{}), generators)
+
+ return allowedPrincipals_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS(gens map[string]gopter.Gen) {
+ gens["Groups"] = gen.SliceOf(gen.AlphaString())
+ gens["Identities"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AppRegistration_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 AppRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppRegistration_STATUS, AppRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppRegistration_STATUS runs a test to see if a specific instance of AppRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppRegistration_STATUS(subject AppRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppRegistration_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 AppRegistration_STATUS instances for property testing - lazily instantiated by
+// AppRegistration_STATUSGenerator()
+var appRegistration_STATUSGenerator gopter.Gen
+
+// AppRegistration_STATUSGenerator returns a generator of AppRegistration_STATUS instances for property testing.
+func AppRegistration_STATUSGenerator() gopter.Gen {
+ if appRegistration_STATUSGenerator != nil {
+ return appRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppRegistration_STATUS(generators)
+ appRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppRegistration_STATUS{}), generators)
+
+ return appRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AppleRegistration_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 AppleRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppleRegistration_STATUS, AppleRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppleRegistration_STATUS runs a test to see if a specific instance of AppleRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppleRegistration_STATUS(subject AppleRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppleRegistration_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 AppleRegistration_STATUS instances for property testing - lazily instantiated by
+// AppleRegistration_STATUSGenerator()
+var appleRegistration_STATUSGenerator gopter.Gen
+
+// AppleRegistration_STATUSGenerator returns a generator of AppleRegistration_STATUS instances for property testing.
+func AppleRegistration_STATUSGenerator() gopter.Gen {
+ if appleRegistration_STATUSGenerator != nil {
+ return appleRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppleRegistration_STATUS(generators)
+ appleRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppleRegistration_STATUS{}), generators)
+
+ return appleRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppleRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppleRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Apple_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 Apple_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForApple_STATUS, Apple_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForApple_STATUS runs a test to see if a specific instance of Apple_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForApple_STATUS(subject Apple_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Apple_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 Apple_STATUS instances for property testing - lazily instantiated by Apple_STATUSGenerator()
+var apple_STATUSGenerator gopter.Gen
+
+// Apple_STATUSGenerator returns a generator of Apple_STATUS instances for property testing.
+// We first initialize apple_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 Apple_STATUSGenerator() gopter.Gen {
+ if apple_STATUSGenerator != nil {
+ return apple_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple_STATUS(generators)
+ apple_STATUSGenerator = gen.Struct(reflect.TypeOf(Apple_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple_STATUS(generators)
+ AddRelatedPropertyGeneratorsForApple_STATUS(generators)
+ apple_STATUSGenerator = gen.Struct(reflect.TypeOf(Apple_STATUS{}), generators)
+
+ return apple_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForApple_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForApple_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForApple_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForApple_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AppleRegistration_STATUSGenerator())
+}
+
+func Test_AuthConfig_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 AuthConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfig_STATUS, AuthConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfig_STATUS runs a test to see if a specific instance of AuthConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfig_STATUS(subject AuthConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfig_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 AuthConfig_STATUS instances for property testing - lazily instantiated by AuthConfig_STATUSGenerator()
+var authConfig_STATUSGenerator gopter.Gen
+
+// AuthConfig_STATUSGenerator returns a generator of AuthConfig_STATUS instances for property testing.
+// We first initialize authConfig_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 AuthConfig_STATUSGenerator() gopter.Gen {
+ if authConfig_STATUSGenerator != nil {
+ return authConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_STATUS(generators)
+ authConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthConfig_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAuthConfig_STATUS(generators)
+ authConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthConfig_STATUS{}), generators)
+
+ return authConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAuthConfig_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAuthConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Properties"] = gen.PtrOf(ContainerApps_AuthConfig_Properties_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+}
+
+func Test_AuthPlatform_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 AuthPlatform_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthPlatform_STATUS, AuthPlatform_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthPlatform_STATUS runs a test to see if a specific instance of AuthPlatform_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthPlatform_STATUS(subject AuthPlatform_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthPlatform_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 AuthPlatform_STATUS instances for property testing - lazily instantiated by
+// AuthPlatform_STATUSGenerator()
+var authPlatform_STATUSGenerator gopter.Gen
+
+// AuthPlatform_STATUSGenerator returns a generator of AuthPlatform_STATUS instances for property testing.
+func AuthPlatform_STATUSGenerator() gopter.Gen {
+ if authPlatform_STATUSGenerator != nil {
+ return authPlatform_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthPlatform_STATUS(generators)
+ authPlatform_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthPlatform_STATUS{}), generators)
+
+ return authPlatform_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthPlatform_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthPlatform_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["RuntimeVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS, AzureActiveDirectoryLogin_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS runs a test to see if a specific instance of AzureActiveDirectoryLogin_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS(subject AzureActiveDirectoryLogin_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryLogin_STATUSGenerator()
+var azureActiveDirectoryLogin_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryLogin_STATUSGenerator returns a generator of AzureActiveDirectoryLogin_STATUS instances for property testing.
+func AzureActiveDirectoryLogin_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryLogin_STATUSGenerator != nil {
+ return azureActiveDirectoryLogin_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS(generators)
+ azureActiveDirectoryLogin_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryLogin_STATUS{}), generators)
+
+ return azureActiveDirectoryLogin_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["DisableWWWAuthenticate"] = gen.PtrOf(gen.Bool())
+ gens["LoginParameters"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS, AzureActiveDirectoryRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS runs a test to see if a specific instance of AzureActiveDirectoryRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS(subject AzureActiveDirectoryRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryRegistration_STATUSGenerator()
+var azureActiveDirectoryRegistration_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryRegistration_STATUSGenerator returns a generator of AzureActiveDirectoryRegistration_STATUS instances for property testing.
+func AzureActiveDirectoryRegistration_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryRegistration_STATUSGenerator != nil {
+ return azureActiveDirectoryRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS(generators)
+ azureActiveDirectoryRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryRegistration_STATUS{}), generators)
+
+ return azureActiveDirectoryRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateIssuer"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateSubjectAlternativeName"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateThumbprint"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["OpenIdIssuer"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS, AzureActiveDirectoryValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS runs a test to see if a specific instance of AzureActiveDirectoryValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS(subject AzureActiveDirectoryValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryValidation_STATUSGenerator()
+var azureActiveDirectoryValidation_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryValidation_STATUSGenerator returns a generator of AzureActiveDirectoryValidation_STATUS instances for property testing.
+// We first initialize azureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryValidation_STATUSGenerator != nil {
+ return azureActiveDirectoryValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ azureActiveDirectoryValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ azureActiveDirectoryValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation_STATUS{}), generators)
+
+ return azureActiveDirectoryValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["DefaultAuthorizationPolicy"] = gen.PtrOf(DefaultAuthorizationPolicy_STATUSGenerator())
+ gens["JwtClaimChecks"] = gen.PtrOf(JwtClaimChecks_STATUSGenerator())
+}
+
+func Test_AzureActiveDirectory_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 AzureActiveDirectory_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectory_STATUS, AzureActiveDirectory_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectory_STATUS runs a test to see if a specific instance of AzureActiveDirectory_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectory_STATUS(subject AzureActiveDirectory_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectory_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 AzureActiveDirectory_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectory_STATUSGenerator()
+var azureActiveDirectory_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectory_STATUSGenerator returns a generator of AzureActiveDirectory_STATUS instances for property testing.
+// We first initialize azureActiveDirectory_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 AzureActiveDirectory_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectory_STATUSGenerator != nil {
+ return azureActiveDirectory_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ azureActiveDirectory_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ azureActiveDirectory_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory_STATUS{}), generators)
+
+ return azureActiveDirectory_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["IsAutoProvisioned"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(AzureActiveDirectoryLogin_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AzureActiveDirectoryRegistration_STATUSGenerator())
+ gens["Validation"] = gen.PtrOf(AzureActiveDirectoryValidation_STATUSGenerator())
+}
+
+func Test_AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS, AzureStaticWebAppsRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS runs a test to see if a specific instance of AzureStaticWebAppsRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS(subject AzureStaticWebAppsRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration_STATUS instances for property testing - lazily instantiated by
+// AzureStaticWebAppsRegistration_STATUSGenerator()
+var azureStaticWebAppsRegistration_STATUSGenerator gopter.Gen
+
+// AzureStaticWebAppsRegistration_STATUSGenerator returns a generator of AzureStaticWebAppsRegistration_STATUS instances for property testing.
+func AzureStaticWebAppsRegistration_STATUSGenerator() gopter.Gen {
+ if azureStaticWebAppsRegistration_STATUSGenerator != nil {
+ return azureStaticWebAppsRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS(generators)
+ azureStaticWebAppsRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebAppsRegistration_STATUS{}), generators)
+
+ return azureStaticWebAppsRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureStaticWebApps_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 AzureStaticWebApps_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebApps_STATUS, AzureStaticWebApps_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebApps_STATUS runs a test to see if a specific instance of AzureStaticWebApps_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebApps_STATUS(subject AzureStaticWebApps_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebApps_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 AzureStaticWebApps_STATUS instances for property testing - lazily instantiated by
+// AzureStaticWebApps_STATUSGenerator()
+var azureStaticWebApps_STATUSGenerator gopter.Gen
+
+// AzureStaticWebApps_STATUSGenerator returns a generator of AzureStaticWebApps_STATUS instances for property testing.
+// We first initialize azureStaticWebApps_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 AzureStaticWebApps_STATUSGenerator() gopter.Gen {
+ if azureStaticWebApps_STATUSGenerator != nil {
+ return azureStaticWebApps_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ azureStaticWebApps_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ azureStaticWebApps_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps_STATUS{}), generators)
+
+ return azureStaticWebApps_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(AzureStaticWebAppsRegistration_STATUSGenerator())
+}
+
+func Test_BlobStorageTokenStore_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 BlobStorageTokenStore_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBlobStorageTokenStore_STATUS, BlobStorageTokenStore_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBlobStorageTokenStore_STATUS runs a test to see if a specific instance of BlobStorageTokenStore_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForBlobStorageTokenStore_STATUS(subject BlobStorageTokenStore_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BlobStorageTokenStore_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 BlobStorageTokenStore_STATUS instances for property testing - lazily instantiated by
+// BlobStorageTokenStore_STATUSGenerator()
+var blobStorageTokenStore_STATUSGenerator gopter.Gen
+
+// BlobStorageTokenStore_STATUSGenerator returns a generator of BlobStorageTokenStore_STATUS instances for property testing.
+func BlobStorageTokenStore_STATUSGenerator() gopter.Gen {
+ if blobStorageTokenStore_STATUSGenerator != nil {
+ return blobStorageTokenStore_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS(generators)
+ blobStorageTokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(BlobStorageTokenStore_STATUS{}), generators)
+
+ return blobStorageTokenStore_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["SasUrlSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ClientRegistration_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 ClientRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForClientRegistration_STATUS, ClientRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForClientRegistration_STATUS runs a test to see if a specific instance of ClientRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForClientRegistration_STATUS(subject ClientRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ClientRegistration_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 ClientRegistration_STATUS instances for property testing - lazily instantiated by
+// ClientRegistration_STATUSGenerator()
+var clientRegistration_STATUSGenerator gopter.Gen
+
+// ClientRegistration_STATUSGenerator returns a generator of ClientRegistration_STATUS instances for property testing.
+func ClientRegistration_STATUSGenerator() gopter.Gen {
+ if clientRegistration_STATUSGenerator != nil {
+ return clientRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForClientRegistration_STATUS(generators)
+ clientRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(ClientRegistration_STATUS{}), generators)
+
+ return clientRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForClientRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForClientRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerApps_AuthConfig_Properties_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 ContainerApps_AuthConfig_Properties_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApps_AuthConfig_Properties_STATUS, ContainerApps_AuthConfig_Properties_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApps_AuthConfig_Properties_STATUS runs a test to see if a specific instance of ContainerApps_AuthConfig_Properties_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApps_AuthConfig_Properties_STATUS(subject ContainerApps_AuthConfig_Properties_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApps_AuthConfig_Properties_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 ContainerApps_AuthConfig_Properties_STATUS instances for property testing - lazily instantiated by
+// ContainerApps_AuthConfig_Properties_STATUSGenerator()
+var containerApps_AuthConfig_Properties_STATUSGenerator gopter.Gen
+
+// ContainerApps_AuthConfig_Properties_STATUSGenerator returns a generator of ContainerApps_AuthConfig_Properties_STATUS instances for property testing.
+func ContainerApps_AuthConfig_Properties_STATUSGenerator() gopter.Gen {
+ if containerApps_AuthConfig_Properties_STATUSGenerator != nil {
+ return containerApps_AuthConfig_Properties_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForContainerApps_AuthConfig_Properties_STATUS(generators)
+ containerApps_AuthConfig_Properties_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApps_AuthConfig_Properties_STATUS{}), generators)
+
+ return containerApps_AuthConfig_Properties_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForContainerApps_AuthConfig_Properties_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApps_AuthConfig_Properties_STATUS(gens map[string]gopter.Gen) {
+ gens["EncryptionSettings"] = gen.PtrOf(EncryptionSettings_STATUSGenerator())
+ gens["GlobalValidation"] = gen.PtrOf(GlobalValidation_STATUSGenerator())
+ gens["HttpSettings"] = gen.PtrOf(HttpSettings_STATUSGenerator())
+ gens["IdentityProviders"] = gen.PtrOf(IdentityProviders_STATUSGenerator())
+ gens["Login"] = gen.PtrOf(Login_STATUSGenerator())
+ gens["Platform"] = gen.PtrOf(AuthPlatform_STATUSGenerator())
+}
+
+func Test_CookieExpiration_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 CookieExpiration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCookieExpiration_STATUS, CookieExpiration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCookieExpiration_STATUS runs a test to see if a specific instance of CookieExpiration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCookieExpiration_STATUS(subject CookieExpiration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CookieExpiration_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 CookieExpiration_STATUS instances for property testing - lazily instantiated by
+// CookieExpiration_STATUSGenerator()
+var cookieExpiration_STATUSGenerator gopter.Gen
+
+// CookieExpiration_STATUSGenerator returns a generator of CookieExpiration_STATUS instances for property testing.
+func CookieExpiration_STATUSGenerator() gopter.Gen {
+ if cookieExpiration_STATUSGenerator != nil {
+ return cookieExpiration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCookieExpiration_STATUS(generators)
+ cookieExpiration_STATUSGenerator = gen.Struct(reflect.TypeOf(CookieExpiration_STATUS{}), generators)
+
+ return cookieExpiration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCookieExpiration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCookieExpiration_STATUS(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.OneConstOf(CookieExpiration_Convention_STATUS_FixedTime, CookieExpiration_Convention_STATUS_IdentityProviderDerived))
+ gens["TimeToExpiration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS, CustomOpenIdConnectProvider_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS runs a test to see if a specific instance of CustomOpenIdConnectProvider_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS(subject CustomOpenIdConnectProvider_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUS instances for property testing - lazily instantiated by
+// CustomOpenIdConnectProvider_STATUSGenerator()
+var customOpenIdConnectProvider_STATUSGenerator gopter.Gen
+
+// CustomOpenIdConnectProvider_STATUSGenerator returns a generator of CustomOpenIdConnectProvider_STATUS instances for property testing.
+// We first initialize customOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUSGenerator() gopter.Gen {
+ if customOpenIdConnectProvider_STATUSGenerator != nil {
+ return customOpenIdConnectProvider_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ customOpenIdConnectProvider_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ customOpenIdConnectProvider_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider_STATUS{}), generators)
+
+ return customOpenIdConnectProvider_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(OpenIdConnectLogin_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(OpenIdConnectRegistration_STATUSGenerator())
+}
+
+func Test_DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS, DefaultAuthorizationPolicy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS runs a test to see if a specific instance of DefaultAuthorizationPolicy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS(subject DefaultAuthorizationPolicy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUS instances for property testing - lazily instantiated by
+// DefaultAuthorizationPolicy_STATUSGenerator()
+var defaultAuthorizationPolicy_STATUSGenerator gopter.Gen
+
+// DefaultAuthorizationPolicy_STATUSGenerator returns a generator of DefaultAuthorizationPolicy_STATUS instances for property testing.
+// We first initialize defaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUSGenerator() gopter.Gen {
+ if defaultAuthorizationPolicy_STATUSGenerator != nil {
+ return defaultAuthorizationPolicy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ defaultAuthorizationPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ defaultAuthorizationPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy_STATUS{}), generators)
+
+ return defaultAuthorizationPolicy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedApplications"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedPrincipals"] = gen.PtrOf(AllowedPrincipals_STATUSGenerator())
+}
+
+func Test_EncryptionSettings_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 EncryptionSettings_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEncryptionSettings_STATUS, EncryptionSettings_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEncryptionSettings_STATUS runs a test to see if a specific instance of EncryptionSettings_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForEncryptionSettings_STATUS(subject EncryptionSettings_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EncryptionSettings_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 EncryptionSettings_STATUS instances for property testing - lazily instantiated by
+// EncryptionSettings_STATUSGenerator()
+var encryptionSettings_STATUSGenerator gopter.Gen
+
+// EncryptionSettings_STATUSGenerator returns a generator of EncryptionSettings_STATUS instances for property testing.
+func EncryptionSettings_STATUSGenerator() gopter.Gen {
+ if encryptionSettings_STATUSGenerator != nil {
+ return encryptionSettings_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS(generators)
+ encryptionSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(EncryptionSettings_STATUS{}), generators)
+
+ return encryptionSettings_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["ContainerAppAuthEncryptionSecretName"] = gen.PtrOf(gen.AlphaString())
+ gens["ContainerAppAuthSigningSecretName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Facebook_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 Facebook_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForFacebook_STATUS, Facebook_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForFacebook_STATUS runs a test to see if a specific instance of Facebook_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForFacebook_STATUS(subject Facebook_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Facebook_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 Facebook_STATUS instances for property testing - lazily instantiated by Facebook_STATUSGenerator()
+var facebook_STATUSGenerator gopter.Gen
+
+// Facebook_STATUSGenerator returns a generator of Facebook_STATUS instances for property testing.
+// We first initialize facebook_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 Facebook_STATUSGenerator() gopter.Gen {
+ if facebook_STATUSGenerator != nil {
+ return facebook_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook_STATUS(generators)
+ facebook_STATUSGenerator = gen.Struct(reflect.TypeOf(Facebook_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook_STATUS(generators)
+ AddRelatedPropertyGeneratorsForFacebook_STATUS(generators)
+ facebook_STATUSGenerator = gen.Struct(reflect.TypeOf(Facebook_STATUS{}), generators)
+
+ return facebook_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForFacebook_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForFacebook_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["GraphApiVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForFacebook_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForFacebook_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AppRegistration_STATUSGenerator())
+}
+
+func Test_ForwardProxy_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 ForwardProxy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForForwardProxy_STATUS, ForwardProxy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForForwardProxy_STATUS runs a test to see if a specific instance of ForwardProxy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForForwardProxy_STATUS(subject ForwardProxy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ForwardProxy_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 ForwardProxy_STATUS instances for property testing - lazily instantiated by
+// ForwardProxy_STATUSGenerator()
+var forwardProxy_STATUSGenerator gopter.Gen
+
+// ForwardProxy_STATUSGenerator returns a generator of ForwardProxy_STATUS instances for property testing.
+func ForwardProxy_STATUSGenerator() gopter.Gen {
+ if forwardProxy_STATUSGenerator != nil {
+ return forwardProxy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForForwardProxy_STATUS(generators)
+ forwardProxy_STATUSGenerator = gen.Struct(reflect.TypeOf(ForwardProxy_STATUS{}), generators)
+
+ return forwardProxy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForForwardProxy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForForwardProxy_STATUS(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.OneConstOf(ForwardProxy_Convention_STATUS_Custom, ForwardProxy_Convention_STATUS_NoProxy, ForwardProxy_Convention_STATUS_Standard))
+ gens["CustomHostHeaderName"] = gen.PtrOf(gen.AlphaString())
+ gens["CustomProtoHeaderName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_GitHub_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 GitHub_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGitHub_STATUS, GitHub_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGitHub_STATUS runs a test to see if a specific instance of GitHub_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGitHub_STATUS(subject GitHub_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GitHub_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 GitHub_STATUS instances for property testing - lazily instantiated by GitHub_STATUSGenerator()
+var gitHub_STATUSGenerator gopter.Gen
+
+// GitHub_STATUSGenerator returns a generator of GitHub_STATUS instances for property testing.
+// We first initialize gitHub_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 GitHub_STATUSGenerator() gopter.Gen {
+ if gitHub_STATUSGenerator != nil {
+ return gitHub_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub_STATUS(generators)
+ gitHub_STATUSGenerator = gen.Struct(reflect.TypeOf(GitHub_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub_STATUS(generators)
+ AddRelatedPropertyGeneratorsForGitHub_STATUS(generators)
+ gitHub_STATUSGenerator = gen.Struct(reflect.TypeOf(GitHub_STATUS{}), generators)
+
+ return gitHub_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGitHub_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGitHub_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGitHub_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGitHub_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistration_STATUSGenerator())
+}
+
+func Test_GlobalValidation_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 GlobalValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGlobalValidation_STATUS, GlobalValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGlobalValidation_STATUS runs a test to see if a specific instance of GlobalValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGlobalValidation_STATUS(subject GlobalValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GlobalValidation_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 GlobalValidation_STATUS instances for property testing - lazily instantiated by
+// GlobalValidation_STATUSGenerator()
+var globalValidation_STATUSGenerator gopter.Gen
+
+// GlobalValidation_STATUSGenerator returns a generator of GlobalValidation_STATUS instances for property testing.
+func GlobalValidation_STATUSGenerator() gopter.Gen {
+ if globalValidation_STATUSGenerator != nil {
+ return globalValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGlobalValidation_STATUS(generators)
+ globalValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(GlobalValidation_STATUS{}), generators)
+
+ return globalValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGlobalValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGlobalValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["ExcludedPaths"] = gen.SliceOf(gen.AlphaString())
+ gens["RedirectToProvider"] = gen.PtrOf(gen.AlphaString())
+ gens["UnauthenticatedClientAction"] = gen.PtrOf(gen.OneConstOf(
+ GlobalValidation_UnauthenticatedClientAction_STATUS_AllowAnonymous,
+ GlobalValidation_UnauthenticatedClientAction_STATUS_RedirectToLoginPage,
+ GlobalValidation_UnauthenticatedClientAction_STATUS_Return401,
+ GlobalValidation_UnauthenticatedClientAction_STATUS_Return403))
+}
+
+func Test_Google_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 Google_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGoogle_STATUS, Google_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGoogle_STATUS runs a test to see if a specific instance of Google_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGoogle_STATUS(subject Google_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Google_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 Google_STATUS instances for property testing - lazily instantiated by Google_STATUSGenerator()
+var google_STATUSGenerator gopter.Gen
+
+// Google_STATUSGenerator returns a generator of Google_STATUS instances for property testing.
+// We first initialize google_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 Google_STATUSGenerator() gopter.Gen {
+ if google_STATUSGenerator != nil {
+ return google_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle_STATUS(generators)
+ google_STATUSGenerator = gen.Struct(reflect.TypeOf(Google_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle_STATUS(generators)
+ AddRelatedPropertyGeneratorsForGoogle_STATUS(generators)
+ google_STATUSGenerator = gen.Struct(reflect.TypeOf(Google_STATUS{}), generators)
+
+ return google_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGoogle_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGoogle_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGoogle_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGoogle_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistration_STATUSGenerator())
+ gens["Validation"] = gen.PtrOf(AllowedAudiencesValidation_STATUSGenerator())
+}
+
+func Test_HttpSettingsRoutes_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 HttpSettingsRoutes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettingsRoutes_STATUS, HttpSettingsRoutes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettingsRoutes_STATUS runs a test to see if a specific instance of HttpSettingsRoutes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettingsRoutes_STATUS(subject HttpSettingsRoutes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettingsRoutes_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 HttpSettingsRoutes_STATUS instances for property testing - lazily instantiated by
+// HttpSettingsRoutes_STATUSGenerator()
+var httpSettingsRoutes_STATUSGenerator gopter.Gen
+
+// HttpSettingsRoutes_STATUSGenerator returns a generator of HttpSettingsRoutes_STATUS instances for property testing.
+func HttpSettingsRoutes_STATUSGenerator() gopter.Gen {
+ if httpSettingsRoutes_STATUSGenerator != nil {
+ return httpSettingsRoutes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS(generators)
+ httpSettingsRoutes_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettingsRoutes_STATUS{}), generators)
+
+ return httpSettingsRoutes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS(gens map[string]gopter.Gen) {
+ gens["ApiPrefix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_HttpSettings_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 HttpSettings_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettings_STATUS, HttpSettings_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettings_STATUS runs a test to see if a specific instance of HttpSettings_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettings_STATUS(subject HttpSettings_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettings_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 HttpSettings_STATUS instances for property testing - lazily instantiated by
+// HttpSettings_STATUSGenerator()
+var httpSettings_STATUSGenerator gopter.Gen
+
+// HttpSettings_STATUSGenerator returns a generator of HttpSettings_STATUS instances for property testing.
+// We first initialize httpSettings_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 HttpSettings_STATUSGenerator() gopter.Gen {
+ if httpSettings_STATUSGenerator != nil {
+ return httpSettings_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings_STATUS(generators)
+ httpSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettings_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings_STATUS(generators)
+ AddRelatedPropertyGeneratorsForHttpSettings_STATUS(generators)
+ httpSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettings_STATUS{}), generators)
+
+ return httpSettings_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettings_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["RequireHttps"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForHttpSettings_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["ForwardProxy"] = gen.PtrOf(ForwardProxy_STATUSGenerator())
+ gens["Routes"] = gen.PtrOf(HttpSettingsRoutes_STATUSGenerator())
+}
+
+func Test_IdentityProviders_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 IdentityProviders_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIdentityProviders_STATUS, IdentityProviders_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIdentityProviders_STATUS runs a test to see if a specific instance of IdentityProviders_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIdentityProviders_STATUS(subject IdentityProviders_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IdentityProviders_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 IdentityProviders_STATUS instances for property testing - lazily instantiated by
+// IdentityProviders_STATUSGenerator()
+var identityProviders_STATUSGenerator gopter.Gen
+
+// IdentityProviders_STATUSGenerator returns a generator of IdentityProviders_STATUS instances for property testing.
+func IdentityProviders_STATUSGenerator() gopter.Gen {
+ if identityProviders_STATUSGenerator != nil {
+ return identityProviders_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForIdentityProviders_STATUS(generators)
+ identityProviders_STATUSGenerator = gen.Struct(reflect.TypeOf(IdentityProviders_STATUS{}), generators)
+
+ return identityProviders_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForIdentityProviders_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIdentityProviders_STATUS(gens map[string]gopter.Gen) {
+ gens["Apple"] = gen.PtrOf(Apple_STATUSGenerator())
+ gens["AzureActiveDirectory"] = gen.PtrOf(AzureActiveDirectory_STATUSGenerator())
+ gens["AzureStaticWebApps"] = gen.PtrOf(AzureStaticWebApps_STATUSGenerator())
+ gens["CustomOpenIdConnectProviders"] = gen.MapOf(
+ gen.AlphaString(),
+ CustomOpenIdConnectProvider_STATUSGenerator())
+ gens["Facebook"] = gen.PtrOf(Facebook_STATUSGenerator())
+ gens["GitHub"] = gen.PtrOf(GitHub_STATUSGenerator())
+ gens["Google"] = gen.PtrOf(Google_STATUSGenerator())
+ gens["Twitter"] = gen.PtrOf(Twitter_STATUSGenerator())
+}
+
+func Test_JwtClaimChecks_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 JwtClaimChecks_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJwtClaimChecks_STATUS, JwtClaimChecks_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJwtClaimChecks_STATUS runs a test to see if a specific instance of JwtClaimChecks_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJwtClaimChecks_STATUS(subject JwtClaimChecks_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JwtClaimChecks_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 JwtClaimChecks_STATUS instances for property testing - lazily instantiated by
+// JwtClaimChecks_STATUSGenerator()
+var jwtClaimChecks_STATUSGenerator gopter.Gen
+
+// JwtClaimChecks_STATUSGenerator returns a generator of JwtClaimChecks_STATUS instances for property testing.
+func JwtClaimChecks_STATUSGenerator() gopter.Gen {
+ if jwtClaimChecks_STATUSGenerator != nil {
+ return jwtClaimChecks_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS(generators)
+ jwtClaimChecks_STATUSGenerator = gen.Struct(reflect.TypeOf(JwtClaimChecks_STATUS{}), generators)
+
+ return jwtClaimChecks_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedClientApplications"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedGroups"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_LoginRoutes_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 LoginRoutes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginRoutes_STATUS, LoginRoutes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginRoutes_STATUS runs a test to see if a specific instance of LoginRoutes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginRoutes_STATUS(subject LoginRoutes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginRoutes_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 LoginRoutes_STATUS instances for property testing - lazily instantiated by LoginRoutes_STATUSGenerator()
+var loginRoutes_STATUSGenerator gopter.Gen
+
+// LoginRoutes_STATUSGenerator returns a generator of LoginRoutes_STATUS instances for property testing.
+func LoginRoutes_STATUSGenerator() gopter.Gen {
+ if loginRoutes_STATUSGenerator != nil {
+ return loginRoutes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginRoutes_STATUS(generators)
+ loginRoutes_STATUSGenerator = gen.Struct(reflect.TypeOf(LoginRoutes_STATUS{}), generators)
+
+ return loginRoutes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginRoutes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginRoutes_STATUS(gens map[string]gopter.Gen) {
+ gens["LogoutEndpoint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LoginScopes_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 LoginScopes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginScopes_STATUS, LoginScopes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginScopes_STATUS runs a test to see if a specific instance of LoginScopes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginScopes_STATUS(subject LoginScopes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginScopes_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 LoginScopes_STATUS instances for property testing - lazily instantiated by LoginScopes_STATUSGenerator()
+var loginScopes_STATUSGenerator gopter.Gen
+
+// LoginScopes_STATUSGenerator returns a generator of LoginScopes_STATUS instances for property testing.
+func LoginScopes_STATUSGenerator() gopter.Gen {
+ if loginScopes_STATUSGenerator != nil {
+ return loginScopes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginScopes_STATUS(generators)
+ loginScopes_STATUSGenerator = gen.Struct(reflect.TypeOf(LoginScopes_STATUS{}), generators)
+
+ return loginScopes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginScopes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginScopes_STATUS(gens map[string]gopter.Gen) {
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_Login_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 Login_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogin_STATUS, Login_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogin_STATUS runs a test to see if a specific instance of Login_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogin_STATUS(subject Login_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Login_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 Login_STATUS instances for property testing - lazily instantiated by Login_STATUSGenerator()
+var login_STATUSGenerator gopter.Gen
+
+// Login_STATUSGenerator returns a generator of Login_STATUS instances for property testing.
+// We first initialize login_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 Login_STATUSGenerator() gopter.Gen {
+ if login_STATUSGenerator != nil {
+ return login_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin_STATUS(generators)
+ login_STATUSGenerator = gen.Struct(reflect.TypeOf(Login_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin_STATUS(generators)
+ AddRelatedPropertyGeneratorsForLogin_STATUS(generators)
+ login_STATUSGenerator = gen.Struct(reflect.TypeOf(Login_STATUS{}), generators)
+
+ return login_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedExternalRedirectUrls"] = gen.SliceOf(gen.AlphaString())
+ gens["PreserveUrlFragmentsForLogins"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForLogin_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["CookieExpiration"] = gen.PtrOf(CookieExpiration_STATUSGenerator())
+ gens["Nonce"] = gen.PtrOf(Nonce_STATUSGenerator())
+ gens["Routes"] = gen.PtrOf(LoginRoutes_STATUSGenerator())
+ gens["TokenStore"] = gen.PtrOf(TokenStore_STATUSGenerator())
+}
+
+func Test_Nonce_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 Nonce_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForNonce_STATUS, Nonce_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForNonce_STATUS runs a test to see if a specific instance of Nonce_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForNonce_STATUS(subject Nonce_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Nonce_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 Nonce_STATUS instances for property testing - lazily instantiated by Nonce_STATUSGenerator()
+var nonce_STATUSGenerator gopter.Gen
+
+// Nonce_STATUSGenerator returns a generator of Nonce_STATUS instances for property testing.
+func Nonce_STATUSGenerator() gopter.Gen {
+ if nonce_STATUSGenerator != nil {
+ return nonce_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForNonce_STATUS(generators)
+ nonce_STATUSGenerator = gen.Struct(reflect.TypeOf(Nonce_STATUS{}), generators)
+
+ return nonce_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForNonce_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForNonce_STATUS(gens map[string]gopter.Gen) {
+ gens["NonceExpirationInterval"] = gen.PtrOf(gen.AlphaString())
+ gens["ValidateNonce"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_OpenIdConnectClientCredential_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 OpenIdConnectClientCredential_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS, OpenIdConnectClientCredential_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS runs a test to see if a specific instance of OpenIdConnectClientCredential_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS(subject OpenIdConnectClientCredential_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectClientCredential_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 OpenIdConnectClientCredential_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectClientCredential_STATUSGenerator()
+var openIdConnectClientCredential_STATUSGenerator gopter.Gen
+
+// OpenIdConnectClientCredential_STATUSGenerator returns a generator of OpenIdConnectClientCredential_STATUS instances for property testing.
+func OpenIdConnectClientCredential_STATUSGenerator() gopter.Gen {
+ if openIdConnectClientCredential_STATUSGenerator != nil {
+ return openIdConnectClientCredential_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS(generators)
+ openIdConnectClientCredential_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectClientCredential_STATUS{}), generators)
+
+ return openIdConnectClientCredential_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["Method"] = gen.PtrOf(gen.OneConstOf(OpenIdConnectClientCredential_Method_STATUS_ClientSecretPost))
+}
+
+func Test_OpenIdConnectConfig_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 OpenIdConnectConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectConfig_STATUS, OpenIdConnectConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectConfig_STATUS runs a test to see if a specific instance of OpenIdConnectConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectConfig_STATUS(subject OpenIdConnectConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectConfig_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 OpenIdConnectConfig_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectConfig_STATUSGenerator()
+var openIdConnectConfig_STATUSGenerator gopter.Gen
+
+// OpenIdConnectConfig_STATUSGenerator returns a generator of OpenIdConnectConfig_STATUS instances for property testing.
+func OpenIdConnectConfig_STATUSGenerator() gopter.Gen {
+ if openIdConnectConfig_STATUSGenerator != nil {
+ return openIdConnectConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS(generators)
+ openIdConnectConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectConfig_STATUS{}), generators)
+
+ return openIdConnectConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["AuthorizationEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["CertificationUri"] = gen.PtrOf(gen.AlphaString())
+ gens["Issuer"] = gen.PtrOf(gen.AlphaString())
+ gens["TokenEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["WellKnownOpenIdConfiguration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectLogin_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 OpenIdConnectLogin_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectLogin_STATUS, OpenIdConnectLogin_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectLogin_STATUS runs a test to see if a specific instance of OpenIdConnectLogin_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectLogin_STATUS(subject OpenIdConnectLogin_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectLogin_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 OpenIdConnectLogin_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectLogin_STATUSGenerator()
+var openIdConnectLogin_STATUSGenerator gopter.Gen
+
+// OpenIdConnectLogin_STATUSGenerator returns a generator of OpenIdConnectLogin_STATUS instances for property testing.
+func OpenIdConnectLogin_STATUSGenerator() gopter.Gen {
+ if openIdConnectLogin_STATUSGenerator != nil {
+ return openIdConnectLogin_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS(generators)
+ openIdConnectLogin_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectLogin_STATUS{}), generators)
+
+ return openIdConnectLogin_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["NameClaimType"] = gen.PtrOf(gen.AlphaString())
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectRegistration_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 OpenIdConnectRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectRegistration_STATUS, OpenIdConnectRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectRegistration_STATUS runs a test to see if a specific instance of OpenIdConnectRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectRegistration_STATUS(subject OpenIdConnectRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectRegistration_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 OpenIdConnectRegistration_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectRegistration_STATUSGenerator()
+var openIdConnectRegistration_STATUSGenerator gopter.Gen
+
+// OpenIdConnectRegistration_STATUSGenerator returns a generator of OpenIdConnectRegistration_STATUS instances for property testing.
+// We first initialize openIdConnectRegistration_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 OpenIdConnectRegistration_STATUSGenerator() gopter.Gen {
+ if openIdConnectRegistration_STATUSGenerator != nil {
+ return openIdConnectRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ openIdConnectRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ openIdConnectRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration_STATUS{}), generators)
+
+ return openIdConnectRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientCredential"] = gen.PtrOf(OpenIdConnectClientCredential_STATUSGenerator())
+ gens["OpenIdConnectConfiguration"] = gen.PtrOf(OpenIdConnectConfig_STATUSGenerator())
+}
+
+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_TokenStore_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 TokenStore_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTokenStore_STATUS, TokenStore_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTokenStore_STATUS runs a test to see if a specific instance of TokenStore_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTokenStore_STATUS(subject TokenStore_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TokenStore_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 TokenStore_STATUS instances for property testing - lazily instantiated by TokenStore_STATUSGenerator()
+var tokenStore_STATUSGenerator gopter.Gen
+
+// TokenStore_STATUSGenerator returns a generator of TokenStore_STATUS instances for property testing.
+// We first initialize tokenStore_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 TokenStore_STATUSGenerator() gopter.Gen {
+ if tokenStore_STATUSGenerator != nil {
+ return tokenStore_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore_STATUS(generators)
+ tokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(TokenStore_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTokenStore_STATUS(generators)
+ tokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(TokenStore_STATUS{}), generators)
+
+ return tokenStore_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTokenStore_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["TokenRefreshExtensionHours"] = gen.PtrOf(gen.Float64())
+}
+
+// AddRelatedPropertyGeneratorsForTokenStore_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["AzureBlobStorage"] = gen.PtrOf(BlobStorageTokenStore_STATUSGenerator())
+}
+
+func Test_TwitterRegistration_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 TwitterRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitterRegistration_STATUS, TwitterRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitterRegistration_STATUS runs a test to see if a specific instance of TwitterRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitterRegistration_STATUS(subject TwitterRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TwitterRegistration_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 TwitterRegistration_STATUS instances for property testing - lazily instantiated by
+// TwitterRegistration_STATUSGenerator()
+var twitterRegistration_STATUSGenerator gopter.Gen
+
+// TwitterRegistration_STATUSGenerator returns a generator of TwitterRegistration_STATUS instances for property testing.
+func TwitterRegistration_STATUSGenerator() gopter.Gen {
+ if twitterRegistration_STATUSGenerator != nil {
+ return twitterRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS(generators)
+ twitterRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(TwitterRegistration_STATUS{}), generators)
+
+ return twitterRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ConsumerKey"] = gen.PtrOf(gen.AlphaString())
+ gens["ConsumerSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Twitter_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 Twitter_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitter_STATUS, Twitter_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitter_STATUS runs a test to see if a specific instance of Twitter_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitter_STATUS(subject Twitter_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Twitter_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 Twitter_STATUS instances for property testing - lazily instantiated by Twitter_STATUSGenerator()
+var twitter_STATUSGenerator gopter.Gen
+
+// Twitter_STATUSGenerator returns a generator of Twitter_STATUS instances for property testing.
+// We first initialize twitter_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 Twitter_STATUSGenerator() gopter.Gen {
+ if twitter_STATUSGenerator != nil {
+ return twitter_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter_STATUS(generators)
+ twitter_STATUSGenerator = gen.Struct(reflect.TypeOf(Twitter_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTwitter_STATUS(generators)
+ twitter_STATUSGenerator = gen.Struct(reflect.TypeOf(Twitter_STATUS{}), generators)
+
+ return twitter_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitter_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitter_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForTwitter_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTwitter_STATUS(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(TwitterRegistration_STATUSGenerator())
+}
diff --git a/v2/api/app/v1api20240301/arm/container_app_spec_types_gen.go b/v2/api/app/v1api20240301/arm/container_app_spec_types_gen.go
new file mode 100644
index 00000000000..d5777b95048
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/container_app_spec_types_gen.go
@@ -0,0 +1,791 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+import "github.com/Azure/azure-service-operator/v2/pkg/genruntime"
+
+type ContainerApp_Spec struct {
+ // ExtendedLocation: The complex type of the extended location.
+ ExtendedLocation *ExtendedLocation `json:"extendedLocation,omitempty"`
+
+ // Identity: managed identities for the Container App to interact with other Azure services without maintaining any secrets
+ // or credentials in code.
+ Identity *ManagedServiceIdentity `json:"identity,omitempty"`
+
+ // Location: The geo-location where the resource lives
+ Location *string `json:"location,omitempty"`
+ ManagedBy *string `json:"managedBy,omitempty"`
+ Name string `json:"name,omitempty"`
+
+ // Properties: ContainerApp resource specific properties
+ Properties *ContainerApp_Properties_Spec `json:"properties,omitempty"`
+
+ // Tags: Resource tags.
+ Tags map[string]string `json:"tags,omitempty"`
+}
+
+var _ genruntime.ARMResourceSpec = &ContainerApp_Spec{}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (containerApp ContainerApp_Spec) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetName returns the Name of the resource
+func (containerApp *ContainerApp_Spec) GetName() string {
+ return containerApp.Name
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/containerApps"
+func (containerApp *ContainerApp_Spec) GetType() string {
+ return "Microsoft.App/containerApps"
+}
+
+type ContainerApp_Properties_Spec struct {
+ // Configuration: Non versioned Container App configuration properties.
+ Configuration *Configuration `json:"configuration,omitempty"`
+ EnvironmentId *string `json:"environmentId,omitempty"`
+ ManagedEnvironmentId *string `json:"managedEnvironmentId,omitempty"`
+
+ // Template: Container App versioned application definition.
+ Template *Template `json:"template,omitempty"`
+
+ // WorkloadProfileName: Workload profile name to pin for container app execution.
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+// The complex type of the extended location.
+type ExtendedLocation struct {
+ // Name: The name of the extended location.
+ Name *string `json:"name,omitempty"`
+
+ // Type: The type of the extended location.
+ Type *ExtendedLocationType `json:"type,omitempty"`
+}
+
+// Managed service identity (system assigned and/or user assigned identities)
+type ManagedServiceIdentity struct {
+ // Type: Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
+ Type *ManagedServiceIdentityType `json:"type,omitempty"`
+ UserAssignedIdentities map[string]UserAssignedIdentityDetails `json:"userAssignedIdentities,omitempty"`
+}
+
+// Non versioned Container App configuration properties that define the mutable settings of a Container app
+type Configuration struct {
+ // ActiveRevisionsMode: ActiveRevisionsMode controls how active revisions are handled for the Container app:
+ // - Multiple: multiple revisions can be active.
- Single: Only one revision can be active at a time.
+ // Revision weights can not be used in this mode. If no value if provided, this is the default.
+ ActiveRevisionsMode *Configuration_ActiveRevisionsMode `json:"activeRevisionsMode,omitempty"`
+
+ // Dapr: Dapr configuration for the Container App.
+ Dapr *Dapr `json:"dapr,omitempty"`
+
+ // Ingress: Ingress configurations.
+ Ingress *Ingress `json:"ingress,omitempty"`
+
+ // MaxInactiveRevisions: Optional. Max inactive revisions a Container App can have.
+ MaxInactiveRevisions *int `json:"maxInactiveRevisions,omitempty"`
+
+ // Registries: Collection of private container registry credentials for containers used by the Container app
+ Registries []RegistryCredentials `json:"registries,omitempty"`
+
+ // Secrets: Collection of secrets used by a Container app
+ Secrets []Secret `json:"secrets,omitempty"`
+
+ // Service: Container App to be a dev Container App Service
+ Service *Service `json:"service,omitempty"`
+}
+
+// The type of extendedLocation.
+// +kubebuilder:validation:Enum={"CustomLocation"}
+type ExtendedLocationType string
+
+const ExtendedLocationType_CustomLocation = ExtendedLocationType("CustomLocation")
+
+// Mapping from string to ExtendedLocationType
+var extendedLocationType_Values = map[string]ExtendedLocationType{
+ "customlocation": ExtendedLocationType_CustomLocation,
+}
+
+// Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
+// +kubebuilder:validation:Enum={"None","SystemAssigned","SystemAssigned,UserAssigned","UserAssigned"}
+type ManagedServiceIdentityType string
+
+const (
+ ManagedServiceIdentityType_None = ManagedServiceIdentityType("None")
+ ManagedServiceIdentityType_SystemAssigned = ManagedServiceIdentityType("SystemAssigned")
+ ManagedServiceIdentityType_SystemAssignedUserAssigned = ManagedServiceIdentityType("SystemAssigned,UserAssigned")
+ ManagedServiceIdentityType_UserAssigned = ManagedServiceIdentityType("UserAssigned")
+)
+
+// Mapping from string to ManagedServiceIdentityType
+var managedServiceIdentityType_Values = map[string]ManagedServiceIdentityType{
+ "none": ManagedServiceIdentityType_None,
+ "systemassigned": ManagedServiceIdentityType_SystemAssigned,
+ "systemassigned,userassigned": ManagedServiceIdentityType_SystemAssignedUserAssigned,
+ "userassigned": ManagedServiceIdentityType_UserAssigned,
+}
+
+// Container App versioned application definition.
+// Defines the desired state of an immutable revision.
+// Any changes to this
+// section Will result in a new revision being created
+type Template struct {
+ // Containers: List of container definitions for the Container App.
+ Containers []Container `json:"containers,omitempty"`
+
+ // InitContainers: List of specialized containers that run before app containers.
+ InitContainers []BaseContainer `json:"initContainers,omitempty"`
+
+ // RevisionSuffix: User friendly suffix that is appended to the revision name
+ RevisionSuffix *string `json:"revisionSuffix,omitempty"`
+
+ // Scale: Scaling properties for the Container App.
+ Scale *Scale `json:"scale,omitempty"`
+
+ // ServiceBinds: List of container app services bound to the app
+ ServiceBinds []ServiceBind `json:"serviceBinds,omitempty"`
+
+ // TerminationGracePeriodSeconds: Optional duration in seconds the Container App Instance needs to terminate gracefully.
+ // Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to
+ // shut down). If this value is nil, the default grace period will be used instead. Set this value longer than the expected
+ // cleanup time for your process. Defaults to 30 seconds.
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+
+ // Volumes: List of volume definitions for the Container App.
+ Volumes []Volume `json:"volumes,omitempty"`
+}
+
+// Information about the user assigned identity for the resource
+type UserAssignedIdentityDetails struct {
+}
+
+// Container App base container definition.
+type BaseContainer struct {
+ // Args: Container start command arguments.
+ Args []string `json:"args,omitempty"`
+
+ // Command: Container start command.
+ Command []string `json:"command,omitempty"`
+
+ // Env: Container environment variables.
+ Env []EnvironmentVar `json:"env,omitempty"`
+
+ // Image: Container image tag.
+ Image *string `json:"image,omitempty"`
+
+ // Name: Custom container name.
+ Name *string `json:"name,omitempty"`
+
+ // Resources: Container resource requirements.
+ Resources *ContainerResources `json:"resources,omitempty"`
+
+ // VolumeMounts: Container volume mounts.
+ VolumeMounts []VolumeMount `json:"volumeMounts,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"Multiple","Single"}
+type Configuration_ActiveRevisionsMode string
+
+const (
+ Configuration_ActiveRevisionsMode_Multiple = Configuration_ActiveRevisionsMode("Multiple")
+ Configuration_ActiveRevisionsMode_Single = Configuration_ActiveRevisionsMode("Single")
+)
+
+// Mapping from string to Configuration_ActiveRevisionsMode
+var configuration_ActiveRevisionsMode_Values = map[string]Configuration_ActiveRevisionsMode{
+ "multiple": Configuration_ActiveRevisionsMode_Multiple,
+ "single": Configuration_ActiveRevisionsMode_Single,
+}
+
+// Container App container definition
+type Container struct {
+ // Args: Container start command arguments.
+ Args []string `json:"args,omitempty"`
+
+ // Command: Container start command.
+ Command []string `json:"command,omitempty"`
+
+ // Env: Container environment variables.
+ Env []EnvironmentVar `json:"env,omitempty"`
+
+ // Image: Container image tag.
+ Image *string `json:"image,omitempty"`
+
+ // Name: Custom container name.
+ Name *string `json:"name,omitempty"`
+
+ // Probes: List of probes for the container.
+ Probes []ContainerAppProbe `json:"probes,omitempty"`
+
+ // Resources: Container resource requirements.
+ Resources *ContainerResources `json:"resources,omitempty"`
+
+ // VolumeMounts: Container volume mounts.
+ VolumeMounts []VolumeMount `json:"volumeMounts,omitempty"`
+}
+
+// Container App Dapr configuration.
+type Dapr struct {
+ // AppId: Dapr application identifier
+ AppId *string `json:"appId,omitempty"`
+
+ // AppPort: Tells Dapr which port your application is listening on
+ AppPort *int `json:"appPort,omitempty"`
+
+ // AppProtocol: Tells Dapr which protocol your application is using. Valid options are http and grpc. Default is http
+ AppProtocol *Dapr_AppProtocol `json:"appProtocol,omitempty"`
+
+ // EnableApiLogging: Enables API logging for the Dapr sidecar
+ EnableApiLogging *bool `json:"enableApiLogging,omitempty"`
+
+ // Enabled: Boolean indicating if the Dapr side car is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // HttpMaxRequestSize: Increasing max size of request body http and grpc servers parameter in MB to handle uploading of big
+ // files. Default is 4 MB.
+ HttpMaxRequestSize *int `json:"httpMaxRequestSize,omitempty"`
+
+ // HttpReadBufferSize: Dapr max size of http header read buffer in KB to handle when sending multi-KB headers. Default is
+ // 65KB.
+ HttpReadBufferSize *int `json:"httpReadBufferSize,omitempty"`
+
+ // LogLevel: Sets the log level for the Dapr sidecar. Allowed values are debug, info, warn, error. Default is info.
+ LogLevel *Dapr_LogLevel `json:"logLevel,omitempty"`
+}
+
+// Container App Ingress configuration.
+type Ingress struct {
+ // AdditionalPortMappings: Settings to expose additional ports on container app
+ AdditionalPortMappings []IngressPortMapping `json:"additionalPortMappings,omitempty"`
+
+ // AllowInsecure: Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically
+ // redirected to HTTPS connections
+ AllowInsecure *bool `json:"allowInsecure,omitempty"`
+
+ // ClientCertificateMode: Client certificate mode for mTLS authentication. Ignore indicates server drops client certificate
+ // on forwarding. Accept indicates server forwards client certificate but does not require a client certificate. Require
+ // indicates server requires a client certificate.
+ ClientCertificateMode *Ingress_ClientCertificateMode `json:"clientCertificateMode,omitempty"`
+
+ // CorsPolicy: CORS policy for container app
+ CorsPolicy *CorsPolicy `json:"corsPolicy,omitempty"`
+
+ // CustomDomains: custom domain bindings for Container Apps' hostnames.
+ CustomDomains []CustomDomain `json:"customDomains,omitempty"`
+
+ // ExposedPort: Exposed Port in containers for TCP traffic from ingress
+ ExposedPort *int `json:"exposedPort,omitempty"`
+
+ // External: Bool indicating if app exposes an external http endpoint
+ External *bool `json:"external,omitempty"`
+
+ // IpSecurityRestrictions: Rules to restrict incoming IP address.
+ IpSecurityRestrictions []IpSecurityRestrictionRule `json:"ipSecurityRestrictions,omitempty"`
+
+ // StickySessions: Sticky Sessions for Single Revision Mode
+ StickySessions *Ingress_StickySessions `json:"stickySessions,omitempty"`
+
+ // TargetPort: Target Port in containers for traffic from ingress
+ TargetPort *int `json:"targetPort,omitempty"`
+
+ // Traffic: Traffic weights for app's revisions
+ Traffic []TrafficWeight `json:"traffic,omitempty"`
+
+ // Transport: Ingress transport protocol
+ Transport *Ingress_Transport `json:"transport,omitempty"`
+}
+
+// Container App Private Registry
+type RegistryCredentials struct {
+ Identity *string `json:"identity,omitempty"`
+
+ // PasswordSecretRef: The name of the Secret that contains the registry login password
+ PasswordSecretRef *string `json:"passwordSecretRef,omitempty"`
+
+ // Server: Container Registry Server
+ Server *string `json:"server,omitempty"`
+
+ // Username: Container Registry Username
+ Username *string `json:"username,omitempty"`
+}
+
+// Container App scaling configurations.
+type Scale struct {
+ // MaxReplicas: Optional. Maximum number of container replicas. Defaults to 10 if not set.
+ MaxReplicas *int `json:"maxReplicas,omitempty"`
+
+ // MinReplicas: Optional. Minimum number of container replicas.
+ MinReplicas *int `json:"minReplicas,omitempty"`
+
+ // Rules: Scaling rules.
+ Rules []ScaleRule `json:"rules,omitempty"`
+}
+
+// Secret definition.
+type Secret struct {
+ Identity *string `json:"identity,omitempty"`
+
+ // KeyVaultUrl: Azure Key Vault URL pointing to the secret referenced by the container app.
+ KeyVaultUrl *string `json:"keyVaultUrl,omitempty"`
+
+ // Name: Secret Name.
+ Name *string `json:"name,omitempty"`
+
+ // Value: Secret Value.
+ Value *string `json:"value,omitempty"`
+}
+
+// Container App to be a dev service
+type Service struct {
+ // Type: Dev ContainerApp service type
+ Type *string `json:"type,omitempty"`
+}
+
+// Configuration to bind a ContainerApp to a dev ContainerApp Service
+type ServiceBind struct {
+ // Name: Name of the service bind
+ Name *string `json:"name,omitempty"`
+ ServiceId *string `json:"serviceId,omitempty"`
+}
+
+// Volume definitions for the Container App.
+type Volume struct {
+ // MountOptions: Mount options used while mounting the AzureFile. Must be a comma-separated string.
+ MountOptions *string `json:"mountOptions,omitempty"`
+
+ // Name: Volume name.
+ Name *string `json:"name,omitempty"`
+
+ // Secrets: List of secrets to be added in volume. If no secrets are provided, all secrets in collection will be added to
+ // volume.
+ Secrets []SecretVolumeItem `json:"secrets,omitempty"`
+
+ // StorageName: Name of storage resource. No need to provide for EmptyDir and Secret.
+ StorageName *string `json:"storageName,omitempty"`
+
+ // StorageType: Storage type for the volume. If not provided, use EmptyDir.
+ StorageType *Volume_StorageType `json:"storageType,omitempty"`
+}
+
+// Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive
+// traffic.
+type ContainerAppProbe struct {
+ // FailureThreshold: Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to
+ // 3. Minimum value is 1. Maximum value is 10.
+ FailureThreshold *int `json:"failureThreshold,omitempty"`
+
+ // HttpGet: HTTPGet specifies the http request to perform.
+ HttpGet *ContainerAppProbe_HttpGet `json:"httpGet,omitempty"`
+
+ // InitialDelaySeconds: Number of seconds after the container has started before liveness probes are initiated. Minimum
+ // value is 1. Maximum value is 60.
+ InitialDelaySeconds *int `json:"initialDelaySeconds,omitempty"`
+
+ // PeriodSeconds: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is
+ // 240.
+ PeriodSeconds *int `json:"periodSeconds,omitempty"`
+
+ // SuccessThreshold: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults
+ // to 1. Must be 1 for liveness and startup. Minimum value is 1. Maximum value is 10.
+ SuccessThreshold *int `json:"successThreshold,omitempty"`
+
+ // TcpSocket: TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported.
+ TcpSocket *ContainerAppProbe_TcpSocket `json:"tcpSocket,omitempty"`
+
+ // TerminationGracePeriodSeconds: Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ // The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the
+ // time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for
+ // your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value
+ // overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop
+ // immediately via the kill signal (no opportunity to shut down). This is an alpha field and requires enabling
+ // ProbeTerminationGracePeriod feature gate. Maximum value is 3600 seconds (1 hour)
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+
+ // TimeoutSeconds: Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum
+ // value is 240.
+ TimeoutSeconds *int `json:"timeoutSeconds,omitempty"`
+
+ // Type: The type of probe.
+ Type *ContainerAppProbe_Type `json:"type,omitempty"`
+}
+
+// Container App container resource requirements.
+type ContainerResources struct {
+ // Cpu: Required CPU in cores, e.g. 0.5
+ Cpu *float64 `json:"cpu,omitempty"`
+
+ // Memory: Required memory, e.g. "250Mb"
+ Memory *string `json:"memory,omitempty"`
+}
+
+// Cross-Origin-Resource-Sharing policy
+type CorsPolicy struct {
+ // AllowCredentials: Specifies whether the resource allows credentials
+ AllowCredentials *bool `json:"allowCredentials,omitempty"`
+
+ // AllowedHeaders: Specifies the content for the access-control-allow-headers header
+ AllowedHeaders []string `json:"allowedHeaders,omitempty"`
+
+ // AllowedMethods: Specifies the content for the access-control-allow-methods header
+ AllowedMethods []string `json:"allowedMethods,omitempty"`
+
+ // AllowedOrigins: Specifies the content for the access-control-allow-origins header
+ AllowedOrigins []string `json:"allowedOrigins,omitempty"`
+
+ // ExposeHeaders: Specifies the content for the access-control-expose-headers header
+ ExposeHeaders []string `json:"exposeHeaders,omitempty"`
+
+ // MaxAge: Specifies the content for the access-control-max-age header
+ MaxAge *int `json:"maxAge,omitempty"`
+}
+
+// Custom Domain of a Container App
+type CustomDomain struct {
+ // BindingType: Custom Domain binding type.
+ BindingType *CustomDomain_BindingType `json:"bindingType,omitempty"`
+ CertificateId *string `json:"certificateId,omitempty"`
+
+ // Name: Hostname.
+ Name *string `json:"name,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"grpc","http"}
+type Dapr_AppProtocol string
+
+const (
+ Dapr_AppProtocol_Grpc = Dapr_AppProtocol("grpc")
+ Dapr_AppProtocol_Http = Dapr_AppProtocol("http")
+)
+
+// Mapping from string to Dapr_AppProtocol
+var dapr_AppProtocol_Values = map[string]Dapr_AppProtocol{
+ "grpc": Dapr_AppProtocol_Grpc,
+ "http": Dapr_AppProtocol_Http,
+}
+
+// +kubebuilder:validation:Enum={"debug","error","info","warn"}
+type Dapr_LogLevel string
+
+const (
+ Dapr_LogLevel_Debug = Dapr_LogLevel("debug")
+ Dapr_LogLevel_Error = Dapr_LogLevel("error")
+ Dapr_LogLevel_Info = Dapr_LogLevel("info")
+ Dapr_LogLevel_Warn = Dapr_LogLevel("warn")
+)
+
+// Mapping from string to Dapr_LogLevel
+var dapr_LogLevel_Values = map[string]Dapr_LogLevel{
+ "debug": Dapr_LogLevel_Debug,
+ "error": Dapr_LogLevel_Error,
+ "info": Dapr_LogLevel_Info,
+ "warn": Dapr_LogLevel_Warn,
+}
+
+// Container App container environment variable.
+type EnvironmentVar struct {
+ // Name: Environment variable name.
+ Name *string `json:"name,omitempty"`
+
+ // SecretRef: Name of the Container App secret from which to pull the environment variable value.
+ SecretRef *string `json:"secretRef,omitempty"`
+
+ // Value: Non-secret environment variable value.
+ Value *string `json:"value,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"accept","ignore","require"}
+type Ingress_ClientCertificateMode string
+
+const (
+ Ingress_ClientCertificateMode_Accept = Ingress_ClientCertificateMode("accept")
+ Ingress_ClientCertificateMode_Ignore = Ingress_ClientCertificateMode("ignore")
+ Ingress_ClientCertificateMode_Require = Ingress_ClientCertificateMode("require")
+)
+
+// Mapping from string to Ingress_ClientCertificateMode
+var ingress_ClientCertificateMode_Values = map[string]Ingress_ClientCertificateMode{
+ "accept": Ingress_ClientCertificateMode_Accept,
+ "ignore": Ingress_ClientCertificateMode_Ignore,
+ "require": Ingress_ClientCertificateMode_Require,
+}
+
+type Ingress_StickySessions struct {
+ // Affinity: Sticky Session Affinity
+ Affinity *Ingress_StickySessions_Affinity `json:"affinity,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"auto","http","http2","tcp"}
+type Ingress_Transport string
+
+const (
+ Ingress_Transport_Auto = Ingress_Transport("auto")
+ Ingress_Transport_Http = Ingress_Transport("http")
+ Ingress_Transport_Http2 = Ingress_Transport("http2")
+ Ingress_Transport_Tcp = Ingress_Transport("tcp")
+)
+
+// Mapping from string to Ingress_Transport
+var ingress_Transport_Values = map[string]Ingress_Transport{
+ "auto": Ingress_Transport_Auto,
+ "http": Ingress_Transport_Http,
+ "http2": Ingress_Transport_Http2,
+ "tcp": Ingress_Transport_Tcp,
+}
+
+// Port mappings of container app ingress
+type IngressPortMapping struct {
+ // ExposedPort: Specifies the exposed port for the target port. If not specified, it defaults to target port
+ ExposedPort *int `json:"exposedPort,omitempty"`
+
+ // External: Specifies whether the app port is accessible outside of the environment
+ External *bool `json:"external,omitempty"`
+
+ // TargetPort: Specifies the port user's container listens on
+ TargetPort *int `json:"targetPort,omitempty"`
+}
+
+// Rule to restrict incoming IP address.
+type IpSecurityRestrictionRule struct {
+ // Action: Allow or Deny rules to determine for incoming IP. Note: Rules can only consist of ALL Allow or ALL Deny
+ Action *IpSecurityRestrictionRule_Action `json:"action,omitempty"`
+
+ // Description: Describe the IP restriction rule that is being sent to the container-app. This is an optional field.
+ Description *string `json:"description,omitempty"`
+
+ // IpAddressRange: CIDR notation to match incoming IP address
+ IpAddressRange *string `json:"ipAddressRange,omitempty"`
+
+ // Name: Name for the IP restriction rule.
+ Name *string `json:"name,omitempty"`
+}
+
+// Container App container scaling rule.
+type ScaleRule struct {
+ // AzureQueue: Azure Queue based scaling.
+ AzureQueue *QueueScaleRule `json:"azureQueue,omitempty"`
+
+ // Custom: Custom scale rule.
+ Custom *CustomScaleRule `json:"custom,omitempty"`
+
+ // Http: HTTP requests based scaling.
+ Http *HttpScaleRule `json:"http,omitempty"`
+
+ // Name: Scale Rule Name
+ Name *string `json:"name,omitempty"`
+
+ // Tcp: Tcp requests based scaling.
+ Tcp *TcpScaleRule `json:"tcp,omitempty"`
+}
+
+// Secret to be added to volume.
+type SecretVolumeItem struct {
+ // Path: Path to project secret to. If no path is provided, path defaults to name of secret listed in secretRef.
+ Path *string `json:"path,omitempty"`
+
+ // SecretRef: Name of the Container App secret from which to pull the secret value.
+ SecretRef *string `json:"secretRef,omitempty"`
+}
+
+// Traffic weight assigned to a revision
+type TrafficWeight struct {
+ // Label: Associates a traffic label with a revision
+ Label *string `json:"label,omitempty"`
+
+ // LatestRevision: Indicates that the traffic weight belongs to a latest stable revision
+ LatestRevision *bool `json:"latestRevision,omitempty"`
+
+ // RevisionName: Name of a revision
+ RevisionName *string `json:"revisionName,omitempty"`
+
+ // Weight: Traffic weight assigned to a revision
+ Weight *int `json:"weight,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"AzureFile","EmptyDir","Secret"}
+type Volume_StorageType string
+
+const (
+ Volume_StorageType_AzureFile = Volume_StorageType("AzureFile")
+ Volume_StorageType_EmptyDir = Volume_StorageType("EmptyDir")
+ Volume_StorageType_Secret = Volume_StorageType("Secret")
+)
+
+// Mapping from string to Volume_StorageType
+var volume_StorageType_Values = map[string]Volume_StorageType{
+ "azurefile": Volume_StorageType_AzureFile,
+ "emptydir": Volume_StorageType_EmptyDir,
+ "secret": Volume_StorageType_Secret,
+}
+
+// Volume mount for the Container App.
+type VolumeMount struct {
+ // MountPath: Path within the container at which the volume should be mounted.Must not contain ':'.
+ MountPath *string `json:"mountPath,omitempty"`
+
+ // SubPath: Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root).
+ SubPath *string `json:"subPath,omitempty"`
+
+ // VolumeName: This must match the Name of a Volume.
+ VolumeName *string `json:"volumeName,omitempty"`
+}
+
+type ContainerAppProbe_HttpGet struct {
+ // Host: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
+ Host *string `json:"host,omitempty"`
+
+ // HttpHeaders: Custom headers to set in the request. HTTP allows repeated headers.
+ HttpHeaders []ContainerAppProbe_HttpGet_HttpHeaders `json:"httpHeaders,omitempty"`
+
+ // Path: Path to access on the HTTP server.
+ Path *string `json:"path,omitempty"`
+
+ // Port: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an
+ // IANA_SVC_NAME.
+ Port *int `json:"port,omitempty"`
+
+ // Scheme: Scheme to use for connecting to the host. Defaults to HTTP.
+ Scheme *ContainerAppProbe_HttpGet_Scheme `json:"scheme,omitempty"`
+}
+
+type ContainerAppProbe_TcpSocket struct {
+ // Host: Optional: Host name to connect to, defaults to the pod IP.
+ Host *string `json:"host,omitempty"`
+
+ // Port: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an
+ // IANA_SVC_NAME.
+ Port *int `json:"port,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"Liveness","Readiness","Startup"}
+type ContainerAppProbe_Type string
+
+const (
+ ContainerAppProbe_Type_Liveness = ContainerAppProbe_Type("Liveness")
+ ContainerAppProbe_Type_Readiness = ContainerAppProbe_Type("Readiness")
+ ContainerAppProbe_Type_Startup = ContainerAppProbe_Type("Startup")
+)
+
+// Mapping from string to ContainerAppProbe_Type
+var containerAppProbe_Type_Values = map[string]ContainerAppProbe_Type{
+ "liveness": ContainerAppProbe_Type_Liveness,
+ "readiness": ContainerAppProbe_Type_Readiness,
+ "startup": ContainerAppProbe_Type_Startup,
+}
+
+// +kubebuilder:validation:Enum={"Disabled","SniEnabled"}
+type CustomDomain_BindingType string
+
+const (
+ CustomDomain_BindingType_Disabled = CustomDomain_BindingType("Disabled")
+ CustomDomain_BindingType_SniEnabled = CustomDomain_BindingType("SniEnabled")
+)
+
+// Mapping from string to CustomDomain_BindingType
+var customDomain_BindingType_Values = map[string]CustomDomain_BindingType{
+ "disabled": CustomDomain_BindingType_Disabled,
+ "snienabled": CustomDomain_BindingType_SniEnabled,
+}
+
+// Container App container Custom scaling rule.
+type CustomScaleRule struct {
+ // Auth: Authentication secrets for the custom scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe custom scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+
+ // Type: Type of the custom scale rule
+ // eg: azure-servicebus, redis etc.
+ Type *string `json:"type,omitempty"`
+}
+
+// Container App container Http scaling rule.
+type HttpScaleRule struct {
+ // Auth: Authentication secrets for the custom scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe http scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"none","sticky"}
+type Ingress_StickySessions_Affinity string
+
+const (
+ Ingress_StickySessions_Affinity_None = Ingress_StickySessions_Affinity("none")
+ Ingress_StickySessions_Affinity_Sticky = Ingress_StickySessions_Affinity("sticky")
+)
+
+// Mapping from string to Ingress_StickySessions_Affinity
+var ingress_StickySessions_Affinity_Values = map[string]Ingress_StickySessions_Affinity{
+ "none": Ingress_StickySessions_Affinity_None,
+ "sticky": Ingress_StickySessions_Affinity_Sticky,
+}
+
+// +kubebuilder:validation:Enum={"Allow","Deny"}
+type IpSecurityRestrictionRule_Action string
+
+const (
+ IpSecurityRestrictionRule_Action_Allow = IpSecurityRestrictionRule_Action("Allow")
+ IpSecurityRestrictionRule_Action_Deny = IpSecurityRestrictionRule_Action("Deny")
+)
+
+// Mapping from string to IpSecurityRestrictionRule_Action
+var ipSecurityRestrictionRule_Action_Values = map[string]IpSecurityRestrictionRule_Action{
+ "allow": IpSecurityRestrictionRule_Action_Allow,
+ "deny": IpSecurityRestrictionRule_Action_Deny,
+}
+
+// Container App container Azure Queue based scaling rule.
+type QueueScaleRule struct {
+ // Auth: Authentication secrets for the queue scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // QueueLength: Queue length.
+ QueueLength *int `json:"queueLength,omitempty"`
+
+ // QueueName: Queue name.
+ QueueName *string `json:"queueName,omitempty"`
+}
+
+// Container App container Tcp scaling rule.
+type TcpScaleRule struct {
+ // Auth: Authentication secrets for the tcp scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe tcp scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+}
+
+type ContainerAppProbe_HttpGet_HttpHeaders struct {
+ // Name: The header field name
+ Name *string `json:"name,omitempty"`
+
+ // Value: The header field value
+ Value *string `json:"value,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"HTTP","HTTPS"}
+type ContainerAppProbe_HttpGet_Scheme string
+
+const (
+ ContainerAppProbe_HttpGet_Scheme_HTTP = ContainerAppProbe_HttpGet_Scheme("HTTP")
+ ContainerAppProbe_HttpGet_Scheme_HTTPS = ContainerAppProbe_HttpGet_Scheme("HTTPS")
+)
+
+// Mapping from string to ContainerAppProbe_HttpGet_Scheme
+var containerAppProbe_HttpGet_Scheme_Values = map[string]ContainerAppProbe_HttpGet_Scheme{
+ "http": ContainerAppProbe_HttpGet_Scheme_HTTP,
+ "https": ContainerAppProbe_HttpGet_Scheme_HTTPS,
+}
+
+// Auth Secrets for Scale Rule
+type ScaleRuleAuth struct {
+ // SecretRef: Name of the secret from which to pull the auth params.
+ SecretRef *string `json:"secretRef,omitempty"`
+
+ // TriggerParameter: Trigger Parameter that uses the secret
+ TriggerParameter *string `json:"triggerParameter,omitempty"`
+}
diff --git a/v2/api/app/v1api20240301/arm/container_app_spec_types_gen_test.go b/v2/api/app/v1api20240301/arm/container_app_spec_types_gen_test.go
new file mode 100644
index 00000000000..b22e3b556fa
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/container_app_spec_types_gen_test.go
@@ -0,0 +1,2598 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+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_BaseContainer_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 BaseContainer via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBaseContainer, BaseContainerGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBaseContainer runs a test to see if a specific instance of BaseContainer round trips to JSON and back losslessly
+func RunJSONSerializationTestForBaseContainer(subject BaseContainer) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BaseContainer
+ 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 BaseContainer instances for property testing - lazily instantiated by BaseContainerGenerator()
+var baseContainerGenerator gopter.Gen
+
+// BaseContainerGenerator returns a generator of BaseContainer instances for property testing.
+// We first initialize baseContainerGenerator 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 BaseContainerGenerator() gopter.Gen {
+ if baseContainerGenerator != nil {
+ return baseContainerGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer(generators)
+ baseContainerGenerator = gen.Struct(reflect.TypeOf(BaseContainer{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer(generators)
+ AddRelatedPropertyGeneratorsForBaseContainer(generators)
+ baseContainerGenerator = gen.Struct(reflect.TypeOf(BaseContainer{}), generators)
+
+ return baseContainerGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBaseContainer is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBaseContainer(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForBaseContainer is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForBaseContainer(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVarGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResourcesGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMountGenerator())
+}
+
+func Test_Configuration_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 Configuration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForConfiguration, ConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForConfiguration runs a test to see if a specific instance of Configuration round trips to JSON and back losslessly
+func RunJSONSerializationTestForConfiguration(subject Configuration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Configuration
+ 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 Configuration instances for property testing - lazily instantiated by ConfigurationGenerator()
+var configurationGenerator gopter.Gen
+
+// ConfigurationGenerator returns a generator of Configuration instances for property testing.
+// We first initialize configurationGenerator 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 ConfigurationGenerator() gopter.Gen {
+ if configurationGenerator != nil {
+ return configurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration(generators)
+ configurationGenerator = gen.Struct(reflect.TypeOf(Configuration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration(generators)
+ AddRelatedPropertyGeneratorsForConfiguration(generators)
+ configurationGenerator = gen.Struct(reflect.TypeOf(Configuration{}), generators)
+
+ return configurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForConfiguration(gens map[string]gopter.Gen) {
+ gens["ActiveRevisionsMode"] = gen.PtrOf(gen.OneConstOf(Configuration_ActiveRevisionsMode_Multiple, Configuration_ActiveRevisionsMode_Single))
+ gens["MaxInactiveRevisions"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForConfiguration(gens map[string]gopter.Gen) {
+ gens["Dapr"] = gen.PtrOf(DaprGenerator())
+ gens["Ingress"] = gen.PtrOf(IngressGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentialsGenerator())
+ gens["Secrets"] = gen.SliceOf(SecretGenerator())
+ gens["Service"] = gen.PtrOf(ServiceGenerator())
+}
+
+func Test_Container_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 Container via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainer, ContainerGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainer runs a test to see if a specific instance of Container round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainer(subject Container) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Container
+ 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 Container instances for property testing - lazily instantiated by ContainerGenerator()
+var containerGenerator gopter.Gen
+
+// ContainerGenerator returns a generator of Container instances for property testing.
+// We first initialize containerGenerator 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 ContainerGenerator() gopter.Gen {
+ if containerGenerator != nil {
+ return containerGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer(generators)
+ containerGenerator = gen.Struct(reflect.TypeOf(Container{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer(generators)
+ AddRelatedPropertyGeneratorsForContainer(generators)
+ containerGenerator = gen.Struct(reflect.TypeOf(Container{}), generators)
+
+ return containerGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainer is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainer(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainer is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainer(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVarGenerator())
+ gens["Probes"] = gen.SliceOf(ContainerAppProbeGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResourcesGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMountGenerator())
+}
+
+func Test_ContainerAppProbe_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 ContainerAppProbe via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe, ContainerAppProbeGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe runs a test to see if a specific instance of ContainerAppProbe round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe(subject ContainerAppProbe) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe
+ 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 ContainerAppProbe instances for property testing - lazily instantiated by ContainerAppProbeGenerator()
+var containerAppProbeGenerator gopter.Gen
+
+// ContainerAppProbeGenerator returns a generator of ContainerAppProbe instances for property testing.
+// We first initialize containerAppProbeGenerator 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 ContainerAppProbeGenerator() gopter.Gen {
+ if containerAppProbeGenerator != nil {
+ return containerAppProbeGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe(generators)
+ containerAppProbeGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe(generators)
+ containerAppProbeGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe{}), generators)
+
+ return containerAppProbeGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe(gens map[string]gopter.Gen) {
+ gens["FailureThreshold"] = gen.PtrOf(gen.Int())
+ gens["InitialDelaySeconds"] = gen.PtrOf(gen.Int())
+ gens["PeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["SuccessThreshold"] = gen.PtrOf(gen.Int())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["TimeoutSeconds"] = gen.PtrOf(gen.Int())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(ContainerAppProbe_Type_Liveness, ContainerAppProbe_Type_Readiness, ContainerAppProbe_Type_Startup))
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe(gens map[string]gopter.Gen) {
+ gens["HttpGet"] = gen.PtrOf(ContainerAppProbe_HttpGetGenerator())
+ gens["TcpSocket"] = gen.PtrOf(ContainerAppProbe_TcpSocketGenerator())
+}
+
+func Test_ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet, ContainerAppProbe_HttpGetGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet runs a test to see if a specific instance of ContainerAppProbe_HttpGet round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet(subject ContainerAppProbe_HttpGet) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet
+ 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 ContainerAppProbe_HttpGet instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGetGenerator()
+var containerAppProbe_HttpGetGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGetGenerator returns a generator of ContainerAppProbe_HttpGet instances for property testing.
+// We first initialize containerAppProbe_HttpGetGenerator 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 ContainerAppProbe_HttpGetGenerator() gopter.Gen {
+ if containerAppProbe_HttpGetGenerator != nil {
+ return containerAppProbe_HttpGetGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ containerAppProbe_HttpGetGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ containerAppProbe_HttpGetGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet{}), generators)
+
+ return containerAppProbe_HttpGetGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+ gens["Scheme"] = gen.PtrOf(gen.OneConstOf(ContainerAppProbe_HttpGet_Scheme_HTTP, ContainerAppProbe_HttpGet_Scheme_HTTPS))
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet(gens map[string]gopter.Gen) {
+ gens["HttpHeaders"] = gen.SliceOf(ContainerAppProbe_HttpGet_HttpHeadersGenerator())
+}
+
+func Test_ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders, ContainerAppProbe_HttpGet_HttpHeadersGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders runs a test to see if a specific instance of ContainerAppProbe_HttpGet_HttpHeaders round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders(subject ContainerAppProbe_HttpGet_HttpHeaders) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_HttpHeaders
+ 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 ContainerAppProbe_HttpGet_HttpHeaders instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_HttpHeadersGenerator()
+var containerAppProbe_HttpGet_HttpHeadersGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_HttpHeadersGenerator returns a generator of ContainerAppProbe_HttpGet_HttpHeaders instances for property testing.
+func ContainerAppProbe_HttpGet_HttpHeadersGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_HttpHeadersGenerator != nil {
+ return containerAppProbe_HttpGet_HttpHeadersGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders(generators)
+ containerAppProbe_HttpGet_HttpHeadersGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_HttpHeaders{}), generators)
+
+ return containerAppProbe_HttpGet_HttpHeadersGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_TcpSocket, ContainerAppProbe_TcpSocketGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_TcpSocket runs a test to see if a specific instance of ContainerAppProbe_TcpSocket round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_TcpSocket(subject ContainerAppProbe_TcpSocket) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_TcpSocket
+ 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 ContainerAppProbe_TcpSocket instances for property testing - lazily instantiated by
+// ContainerAppProbe_TcpSocketGenerator()
+var containerAppProbe_TcpSocketGenerator gopter.Gen
+
+// ContainerAppProbe_TcpSocketGenerator returns a generator of ContainerAppProbe_TcpSocket instances for property testing.
+func ContainerAppProbe_TcpSocketGenerator() gopter.Gen {
+ if containerAppProbe_TcpSocketGenerator != nil {
+ return containerAppProbe_TcpSocketGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket(generators)
+ containerAppProbe_TcpSocketGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_TcpSocket{}), generators)
+
+ return containerAppProbe_TcpSocketGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+}
+
+func Test_ContainerApp_Properties_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 ContainerApp_Properties_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp_Properties_Spec, ContainerApp_Properties_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp_Properties_Spec runs a test to see if a specific instance of ContainerApp_Properties_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp_Properties_Spec(subject ContainerApp_Properties_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp_Properties_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 ContainerApp_Properties_Spec instances for property testing - lazily instantiated by
+// ContainerApp_Properties_SpecGenerator()
+var containerApp_Properties_SpecGenerator gopter.Gen
+
+// ContainerApp_Properties_SpecGenerator returns a generator of ContainerApp_Properties_Spec instances for property testing.
+// We first initialize containerApp_Properties_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 ContainerApp_Properties_SpecGenerator() gopter.Gen {
+ if containerApp_Properties_SpecGenerator != nil {
+ return containerApp_Properties_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Properties_Spec(generators)
+ containerApp_Properties_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Properties_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Properties_Spec(generators)
+ AddRelatedPropertyGeneratorsForContainerApp_Properties_Spec(generators)
+ containerApp_Properties_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Properties_Spec{}), generators)
+
+ return containerApp_Properties_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerApp_Properties_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerApp_Properties_Spec(gens map[string]gopter.Gen) {
+ gens["EnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["ManagedEnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp_Properties_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp_Properties_Spec(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(ConfigurationGenerator())
+ gens["Template"] = gen.PtrOf(TemplateGenerator())
+}
+
+func Test_ContainerApp_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 ContainerApp_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp_Spec, ContainerApp_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp_Spec runs a test to see if a specific instance of ContainerApp_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp_Spec(subject ContainerApp_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp_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 ContainerApp_Spec instances for property testing - lazily instantiated by ContainerApp_SpecGenerator()
+var containerApp_SpecGenerator gopter.Gen
+
+// ContainerApp_SpecGenerator returns a generator of ContainerApp_Spec instances for property testing.
+// We first initialize containerApp_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 ContainerApp_SpecGenerator() gopter.Gen {
+ if containerApp_SpecGenerator != nil {
+ return containerApp_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Spec(generators)
+ containerApp_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Spec(generators)
+ AddRelatedPropertyGeneratorsForContainerApp_Spec(generators)
+ containerApp_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Spec{}), generators)
+
+ return containerApp_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerApp_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerApp_Spec(gens map[string]gopter.Gen) {
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["ManagedBy"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.AlphaString()
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp_Spec(gens map[string]gopter.Gen) {
+ gens["ExtendedLocation"] = gen.PtrOf(ExtendedLocationGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentityGenerator())
+ gens["Properties"] = gen.PtrOf(ContainerApp_Properties_SpecGenerator())
+}
+
+func Test_ContainerResources_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 ContainerResources via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerResources, ContainerResourcesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerResources runs a test to see if a specific instance of ContainerResources round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerResources(subject ContainerResources) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerResources
+ 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 ContainerResources instances for property testing - lazily instantiated by ContainerResourcesGenerator()
+var containerResourcesGenerator gopter.Gen
+
+// ContainerResourcesGenerator returns a generator of ContainerResources instances for property testing.
+func ContainerResourcesGenerator() gopter.Gen {
+ if containerResourcesGenerator != nil {
+ return containerResourcesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerResources(generators)
+ containerResourcesGenerator = gen.Struct(reflect.TypeOf(ContainerResources{}), generators)
+
+ return containerResourcesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerResources is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerResources(gens map[string]gopter.Gen) {
+ gens["Cpu"] = gen.PtrOf(gen.Float64())
+ gens["Memory"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CorsPolicy_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 CorsPolicy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCorsPolicy, CorsPolicyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCorsPolicy runs a test to see if a specific instance of CorsPolicy round trips to JSON and back losslessly
+func RunJSONSerializationTestForCorsPolicy(subject CorsPolicy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CorsPolicy
+ 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 CorsPolicy instances for property testing - lazily instantiated by CorsPolicyGenerator()
+var corsPolicyGenerator gopter.Gen
+
+// CorsPolicyGenerator returns a generator of CorsPolicy instances for property testing.
+func CorsPolicyGenerator() gopter.Gen {
+ if corsPolicyGenerator != nil {
+ return corsPolicyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCorsPolicy(generators)
+ corsPolicyGenerator = gen.Struct(reflect.TypeOf(CorsPolicy{}), generators)
+
+ return corsPolicyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCorsPolicy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCorsPolicy(gens map[string]gopter.Gen) {
+ gens["AllowCredentials"] = gen.PtrOf(gen.Bool())
+ gens["AllowedHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedMethods"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedOrigins"] = gen.SliceOf(gen.AlphaString())
+ gens["ExposeHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["MaxAge"] = gen.PtrOf(gen.Int())
+}
+
+func Test_CustomDomain_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 CustomDomain via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomain, CustomDomainGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomain runs a test to see if a specific instance of CustomDomain round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomain(subject CustomDomain) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomain
+ 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 CustomDomain instances for property testing - lazily instantiated by CustomDomainGenerator()
+var customDomainGenerator gopter.Gen
+
+// CustomDomainGenerator returns a generator of CustomDomain instances for property testing.
+func CustomDomainGenerator() gopter.Gen {
+ if customDomainGenerator != nil {
+ return customDomainGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomain(generators)
+ customDomainGenerator = gen.Struct(reflect.TypeOf(CustomDomain{}), generators)
+
+ return customDomainGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomain is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomain(gens map[string]gopter.Gen) {
+ gens["BindingType"] = gen.PtrOf(gen.OneConstOf(CustomDomain_BindingType_Disabled, CustomDomain_BindingType_SniEnabled))
+ gens["CertificateId"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomScaleRule_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 CustomScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomScaleRule, CustomScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomScaleRule runs a test to see if a specific instance of CustomScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomScaleRule(subject CustomScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomScaleRule
+ 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 CustomScaleRule instances for property testing - lazily instantiated by CustomScaleRuleGenerator()
+var customScaleRuleGenerator gopter.Gen
+
+// CustomScaleRuleGenerator returns a generator of CustomScaleRule instances for property testing.
+// We first initialize customScaleRuleGenerator 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 CustomScaleRuleGenerator() gopter.Gen {
+ if customScaleRuleGenerator != nil {
+ return customScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule(generators)
+ customScaleRuleGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule(generators)
+ AddRelatedPropertyGeneratorsForCustomScaleRule(generators)
+ customScaleRuleGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule{}), generators)
+
+ return customScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForCustomScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_Dapr_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 Dapr via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDapr, DaprGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDapr runs a test to see if a specific instance of Dapr round trips to JSON and back losslessly
+func RunJSONSerializationTestForDapr(subject Dapr) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Dapr
+ 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 Dapr instances for property testing - lazily instantiated by DaprGenerator()
+var daprGenerator gopter.Gen
+
+// DaprGenerator returns a generator of Dapr instances for property testing.
+func DaprGenerator() gopter.Gen {
+ if daprGenerator != nil {
+ return daprGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDapr(generators)
+ daprGenerator = gen.Struct(reflect.TypeOf(Dapr{}), generators)
+
+ return daprGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDapr is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDapr(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppPort"] = gen.PtrOf(gen.Int())
+ gens["AppProtocol"] = gen.PtrOf(gen.OneConstOf(Dapr_AppProtocol_Grpc, Dapr_AppProtocol_Http))
+ gens["EnableApiLogging"] = gen.PtrOf(gen.Bool())
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["HttpMaxRequestSize"] = gen.PtrOf(gen.Int())
+ gens["HttpReadBufferSize"] = gen.PtrOf(gen.Int())
+ gens["LogLevel"] = gen.PtrOf(gen.OneConstOf(
+ Dapr_LogLevel_Debug,
+ Dapr_LogLevel_Error,
+ Dapr_LogLevel_Info,
+ Dapr_LogLevel_Warn))
+}
+
+func Test_EnvironmentVar_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 EnvironmentVar via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEnvironmentVar, EnvironmentVarGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEnvironmentVar runs a test to see if a specific instance of EnvironmentVar round trips to JSON and back losslessly
+func RunJSONSerializationTestForEnvironmentVar(subject EnvironmentVar) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EnvironmentVar
+ 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 EnvironmentVar instances for property testing - lazily instantiated by EnvironmentVarGenerator()
+var environmentVarGenerator gopter.Gen
+
+// EnvironmentVarGenerator returns a generator of EnvironmentVar instances for property testing.
+func EnvironmentVarGenerator() gopter.Gen {
+ if environmentVarGenerator != nil {
+ return environmentVarGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEnvironmentVar(generators)
+ environmentVarGenerator = gen.Struct(reflect.TypeOf(EnvironmentVar{}), generators)
+
+ return environmentVarGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEnvironmentVar is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEnvironmentVar(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ExtendedLocation_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 ExtendedLocation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForExtendedLocation, ExtendedLocationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForExtendedLocation runs a test to see if a specific instance of ExtendedLocation round trips to JSON and back losslessly
+func RunJSONSerializationTestForExtendedLocation(subject ExtendedLocation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ExtendedLocation
+ 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 ExtendedLocation instances for property testing - lazily instantiated by ExtendedLocationGenerator()
+var extendedLocationGenerator gopter.Gen
+
+// ExtendedLocationGenerator returns a generator of ExtendedLocation instances for property testing.
+func ExtendedLocationGenerator() gopter.Gen {
+ if extendedLocationGenerator != nil {
+ return extendedLocationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForExtendedLocation(generators)
+ extendedLocationGenerator = gen.Struct(reflect.TypeOf(ExtendedLocation{}), generators)
+
+ return extendedLocationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForExtendedLocation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForExtendedLocation(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(ExtendedLocationType_CustomLocation))
+}
+
+func Test_HttpScaleRule_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 HttpScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpScaleRule, HttpScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpScaleRule runs a test to see if a specific instance of HttpScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpScaleRule(subject HttpScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpScaleRule
+ 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 HttpScaleRule instances for property testing - lazily instantiated by HttpScaleRuleGenerator()
+var httpScaleRuleGenerator gopter.Gen
+
+// HttpScaleRuleGenerator returns a generator of HttpScaleRule instances for property testing.
+// We first initialize httpScaleRuleGenerator 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 HttpScaleRuleGenerator() gopter.Gen {
+ if httpScaleRuleGenerator != nil {
+ return httpScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule(generators)
+ httpScaleRuleGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule(generators)
+ AddRelatedPropertyGeneratorsForHttpScaleRule(generators)
+ httpScaleRuleGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule{}), generators)
+
+ return httpScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForHttpScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_Ingress_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 Ingress via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress, IngressGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress runs a test to see if a specific instance of Ingress round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress(subject Ingress) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress
+ 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 Ingress instances for property testing - lazily instantiated by IngressGenerator()
+var ingressGenerator gopter.Gen
+
+// IngressGenerator returns a generator of Ingress instances for property testing.
+// We first initialize ingressGenerator 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 IngressGenerator() gopter.Gen {
+ if ingressGenerator != nil {
+ return ingressGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress(generators)
+ ingressGenerator = gen.Struct(reflect.TypeOf(Ingress{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress(generators)
+ AddRelatedPropertyGeneratorsForIngress(generators)
+ ingressGenerator = gen.Struct(reflect.TypeOf(Ingress{}), generators)
+
+ return ingressGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress(gens map[string]gopter.Gen) {
+ gens["AllowInsecure"] = gen.PtrOf(gen.Bool())
+ gens["ClientCertificateMode"] = gen.PtrOf(gen.OneConstOf(Ingress_ClientCertificateMode_Accept, Ingress_ClientCertificateMode_Ignore, Ingress_ClientCertificateMode_Require))
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+ gens["Transport"] = gen.PtrOf(gen.OneConstOf(
+ Ingress_Transport_Auto,
+ Ingress_Transport_Http,
+ Ingress_Transport_Http2,
+ Ingress_Transport_Tcp))
+}
+
+// AddRelatedPropertyGeneratorsForIngress is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIngress(gens map[string]gopter.Gen) {
+ gens["AdditionalPortMappings"] = gen.SliceOf(IngressPortMappingGenerator())
+ gens["CorsPolicy"] = gen.PtrOf(CorsPolicyGenerator())
+ gens["CustomDomains"] = gen.SliceOf(CustomDomainGenerator())
+ gens["IpSecurityRestrictions"] = gen.SliceOf(IpSecurityRestrictionRuleGenerator())
+ gens["StickySessions"] = gen.PtrOf(Ingress_StickySessionsGenerator())
+ gens["Traffic"] = gen.SliceOf(TrafficWeightGenerator())
+}
+
+func Test_IngressPortMapping_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 IngressPortMapping via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngressPortMapping, IngressPortMappingGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngressPortMapping runs a test to see if a specific instance of IngressPortMapping round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngressPortMapping(subject IngressPortMapping) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IngressPortMapping
+ 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 IngressPortMapping instances for property testing - lazily instantiated by IngressPortMappingGenerator()
+var ingressPortMappingGenerator gopter.Gen
+
+// IngressPortMappingGenerator returns a generator of IngressPortMapping instances for property testing.
+func IngressPortMappingGenerator() gopter.Gen {
+ if ingressPortMappingGenerator != nil {
+ return ingressPortMappingGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngressPortMapping(generators)
+ ingressPortMappingGenerator = gen.Struct(reflect.TypeOf(IngressPortMapping{}), generators)
+
+ return ingressPortMappingGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngressPortMapping is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngressPortMapping(gens map[string]gopter.Gen) {
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+}
+
+func Test_Ingress_StickySessions_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 Ingress_StickySessions via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_StickySessions, Ingress_StickySessionsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_StickySessions runs a test to see if a specific instance of Ingress_StickySessions round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_StickySessions(subject Ingress_StickySessions) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_StickySessions
+ 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 Ingress_StickySessions instances for property testing - lazily instantiated by
+// Ingress_StickySessionsGenerator()
+var ingress_StickySessionsGenerator gopter.Gen
+
+// Ingress_StickySessionsGenerator returns a generator of Ingress_StickySessions instances for property testing.
+func Ingress_StickySessionsGenerator() gopter.Gen {
+ if ingress_StickySessionsGenerator != nil {
+ return ingress_StickySessionsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_StickySessions(generators)
+ ingress_StickySessionsGenerator = gen.Struct(reflect.TypeOf(Ingress_StickySessions{}), generators)
+
+ return ingress_StickySessionsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_StickySessions is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_StickySessions(gens map[string]gopter.Gen) {
+ gens["Affinity"] = gen.PtrOf(gen.OneConstOf(Ingress_StickySessions_Affinity_None, Ingress_StickySessions_Affinity_Sticky))
+}
+
+func Test_IpSecurityRestrictionRule_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 IpSecurityRestrictionRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIpSecurityRestrictionRule, IpSecurityRestrictionRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIpSecurityRestrictionRule runs a test to see if a specific instance of IpSecurityRestrictionRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForIpSecurityRestrictionRule(subject IpSecurityRestrictionRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IpSecurityRestrictionRule
+ 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 IpSecurityRestrictionRule instances for property testing - lazily instantiated by
+// IpSecurityRestrictionRuleGenerator()
+var ipSecurityRestrictionRuleGenerator gopter.Gen
+
+// IpSecurityRestrictionRuleGenerator returns a generator of IpSecurityRestrictionRule instances for property testing.
+func IpSecurityRestrictionRuleGenerator() gopter.Gen {
+ if ipSecurityRestrictionRuleGenerator != nil {
+ return ipSecurityRestrictionRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule(generators)
+ ipSecurityRestrictionRuleGenerator = gen.Struct(reflect.TypeOf(IpSecurityRestrictionRule{}), generators)
+
+ return ipSecurityRestrictionRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule(gens map[string]gopter.Gen) {
+ gens["Action"] = gen.PtrOf(gen.OneConstOf(IpSecurityRestrictionRule_Action_Allow, IpSecurityRestrictionRule_Action_Deny))
+ gens["Description"] = gen.PtrOf(gen.AlphaString())
+ gens["IpAddressRange"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ManagedServiceIdentity_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 ManagedServiceIdentity via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedServiceIdentity, ManagedServiceIdentityGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedServiceIdentity runs a test to see if a specific instance of ManagedServiceIdentity round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedServiceIdentity(subject ManagedServiceIdentity) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedServiceIdentity
+ 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 ManagedServiceIdentity instances for property testing - lazily instantiated by
+// ManagedServiceIdentityGenerator()
+var managedServiceIdentityGenerator gopter.Gen
+
+// ManagedServiceIdentityGenerator returns a generator of ManagedServiceIdentity instances for property testing.
+// We first initialize managedServiceIdentityGenerator 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 ManagedServiceIdentityGenerator() gopter.Gen {
+ if managedServiceIdentityGenerator != nil {
+ return managedServiceIdentityGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity(generators)
+ managedServiceIdentityGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity(generators)
+ AddRelatedPropertyGeneratorsForManagedServiceIdentity(generators)
+ managedServiceIdentityGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity{}), generators)
+
+ return managedServiceIdentityGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedServiceIdentity is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedServiceIdentity(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(
+ ManagedServiceIdentityType_None,
+ ManagedServiceIdentityType_SystemAssigned,
+ ManagedServiceIdentityType_SystemAssignedUserAssigned,
+ ManagedServiceIdentityType_UserAssigned))
+}
+
+// AddRelatedPropertyGeneratorsForManagedServiceIdentity is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedServiceIdentity(gens map[string]gopter.Gen) {
+ gens["UserAssignedIdentities"] = gen.MapOf(
+ gen.AlphaString(),
+ UserAssignedIdentityDetailsGenerator())
+}
+
+func Test_QueueScaleRule_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 QueueScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForQueueScaleRule, QueueScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForQueueScaleRule runs a test to see if a specific instance of QueueScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForQueueScaleRule(subject QueueScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual QueueScaleRule
+ 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 QueueScaleRule instances for property testing - lazily instantiated by QueueScaleRuleGenerator()
+var queueScaleRuleGenerator gopter.Gen
+
+// QueueScaleRuleGenerator returns a generator of QueueScaleRule instances for property testing.
+// We first initialize queueScaleRuleGenerator 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 QueueScaleRuleGenerator() gopter.Gen {
+ if queueScaleRuleGenerator != nil {
+ return queueScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule(generators)
+ queueScaleRuleGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule(generators)
+ AddRelatedPropertyGeneratorsForQueueScaleRule(generators)
+ queueScaleRuleGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule{}), generators)
+
+ return queueScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForQueueScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForQueueScaleRule(gens map[string]gopter.Gen) {
+ gens["QueueLength"] = gen.PtrOf(gen.Int())
+ gens["QueueName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForQueueScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForQueueScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_RegistryCredentials_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 RegistryCredentials via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForRegistryCredentials, RegistryCredentialsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForRegistryCredentials runs a test to see if a specific instance of RegistryCredentials round trips to JSON and back losslessly
+func RunJSONSerializationTestForRegistryCredentials(subject RegistryCredentials) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual RegistryCredentials
+ 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 RegistryCredentials instances for property testing - lazily instantiated by
+// RegistryCredentialsGenerator()
+var registryCredentialsGenerator gopter.Gen
+
+// RegistryCredentialsGenerator returns a generator of RegistryCredentials instances for property testing.
+func RegistryCredentialsGenerator() gopter.Gen {
+ if registryCredentialsGenerator != nil {
+ return registryCredentialsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForRegistryCredentials(generators)
+ registryCredentialsGenerator = gen.Struct(reflect.TypeOf(RegistryCredentials{}), generators)
+
+ return registryCredentialsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForRegistryCredentials is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForRegistryCredentials(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(gen.AlphaString())
+ gens["PasswordSecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Server"] = gen.PtrOf(gen.AlphaString())
+ gens["Username"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Scale_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 Scale via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScale, ScaleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScale runs a test to see if a specific instance of Scale round trips to JSON and back losslessly
+func RunJSONSerializationTestForScale(subject Scale) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Scale
+ 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 Scale instances for property testing - lazily instantiated by ScaleGenerator()
+var scaleGenerator gopter.Gen
+
+// ScaleGenerator returns a generator of Scale instances for property testing.
+// We first initialize scaleGenerator 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 ScaleGenerator() gopter.Gen {
+ if scaleGenerator != nil {
+ return scaleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale(generators)
+ scaleGenerator = gen.Struct(reflect.TypeOf(Scale{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale(generators)
+ AddRelatedPropertyGeneratorsForScale(generators)
+ scaleGenerator = gen.Struct(reflect.TypeOf(Scale{}), generators)
+
+ return scaleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScale is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScale(gens map[string]gopter.Gen) {
+ gens["MaxReplicas"] = gen.PtrOf(gen.Int())
+ gens["MinReplicas"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForScale is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScale(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(ScaleRuleGenerator())
+}
+
+func Test_ScaleRule_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 ScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRule, ScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRule runs a test to see if a specific instance of ScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRule(subject ScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRule
+ 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 ScaleRule instances for property testing - lazily instantiated by ScaleRuleGenerator()
+var scaleRuleGenerator gopter.Gen
+
+// ScaleRuleGenerator returns a generator of ScaleRule instances for property testing.
+// We first initialize scaleRuleGenerator 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 ScaleRuleGenerator() gopter.Gen {
+ if scaleRuleGenerator != nil {
+ return scaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule(generators)
+ scaleRuleGenerator = gen.Struct(reflect.TypeOf(ScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule(generators)
+ AddRelatedPropertyGeneratorsForScaleRule(generators)
+ scaleRuleGenerator = gen.Struct(reflect.TypeOf(ScaleRule{}), generators)
+
+ return scaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRule(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScaleRule(gens map[string]gopter.Gen) {
+ gens["AzureQueue"] = gen.PtrOf(QueueScaleRuleGenerator())
+ gens["Custom"] = gen.PtrOf(CustomScaleRuleGenerator())
+ gens["Http"] = gen.PtrOf(HttpScaleRuleGenerator())
+ gens["Tcp"] = gen.PtrOf(TcpScaleRuleGenerator())
+}
+
+func Test_ScaleRuleAuth_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 ScaleRuleAuth via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRuleAuth, ScaleRuleAuthGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRuleAuth runs a test to see if a specific instance of ScaleRuleAuth round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRuleAuth(subject ScaleRuleAuth) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRuleAuth
+ 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 ScaleRuleAuth instances for property testing - lazily instantiated by ScaleRuleAuthGenerator()
+var scaleRuleAuthGenerator gopter.Gen
+
+// ScaleRuleAuthGenerator returns a generator of ScaleRuleAuth instances for property testing.
+func ScaleRuleAuthGenerator() gopter.Gen {
+ if scaleRuleAuthGenerator != nil {
+ return scaleRuleAuthGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRuleAuth(generators)
+ scaleRuleAuthGenerator = gen.Struct(reflect.TypeOf(ScaleRuleAuth{}), generators)
+
+ return scaleRuleAuthGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRuleAuth is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRuleAuth(gens map[string]gopter.Gen) {
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["TriggerParameter"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Secret_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 Secret via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecret, SecretGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecret runs a test to see if a specific instance of Secret round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecret(subject Secret) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Secret
+ 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 Secret instances for property testing - lazily instantiated by SecretGenerator()
+var secretGenerator gopter.Gen
+
+// SecretGenerator returns a generator of Secret instances for property testing.
+func SecretGenerator() gopter.Gen {
+ if secretGenerator != nil {
+ return secretGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecret(generators)
+ secretGenerator = gen.Struct(reflect.TypeOf(Secret{}), generators)
+
+ return secretGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecret is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecret(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(gen.AlphaString())
+ gens["KeyVaultUrl"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_SecretVolumeItem_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 SecretVolumeItem via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecretVolumeItem, SecretVolumeItemGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecretVolumeItem runs a test to see if a specific instance of SecretVolumeItem round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecretVolumeItem(subject SecretVolumeItem) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual SecretVolumeItem
+ 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 SecretVolumeItem instances for property testing - lazily instantiated by SecretVolumeItemGenerator()
+var secretVolumeItemGenerator gopter.Gen
+
+// SecretVolumeItemGenerator returns a generator of SecretVolumeItem instances for property testing.
+func SecretVolumeItemGenerator() gopter.Gen {
+ if secretVolumeItemGenerator != nil {
+ return secretVolumeItemGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecretVolumeItem(generators)
+ secretVolumeItemGenerator = gen.Struct(reflect.TypeOf(SecretVolumeItem{}), generators)
+
+ return secretVolumeItemGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecretVolumeItem is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecretVolumeItem(gens map[string]gopter.Gen) {
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Service_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 Service via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForService, ServiceGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForService runs a test to see if a specific instance of Service round trips to JSON and back losslessly
+func RunJSONSerializationTestForService(subject Service) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Service
+ err = json.Unmarshal(bin, &actual)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Check for outcome
+ match := cmp.Equal(subject, actual, cmpopts.EquateEmpty())
+ if !match {
+ actualFmt := pretty.Sprint(actual)
+ subjectFmt := pretty.Sprint(subject)
+ result := diff.Diff(subjectFmt, actualFmt)
+ return result
+ }
+
+ return ""
+}
+
+// Generator of Service instances for property testing - lazily instantiated by ServiceGenerator()
+var serviceGenerator gopter.Gen
+
+// ServiceGenerator returns a generator of Service instances for property testing.
+func ServiceGenerator() gopter.Gen {
+ if serviceGenerator != nil {
+ return serviceGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForService(generators)
+ serviceGenerator = gen.Struct(reflect.TypeOf(Service{}), generators)
+
+ return serviceGenerator
+}
+
+// AddIndependentPropertyGeneratorsForService is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForService(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ServiceBind_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 ServiceBind via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForServiceBind, ServiceBindGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForServiceBind runs a test to see if a specific instance of ServiceBind round trips to JSON and back losslessly
+func RunJSONSerializationTestForServiceBind(subject ServiceBind) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ServiceBind
+ 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 ServiceBind instances for property testing - lazily instantiated by ServiceBindGenerator()
+var serviceBindGenerator gopter.Gen
+
+// ServiceBindGenerator returns a generator of ServiceBind instances for property testing.
+func ServiceBindGenerator() gopter.Gen {
+ if serviceBindGenerator != nil {
+ return serviceBindGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForServiceBind(generators)
+ serviceBindGenerator = gen.Struct(reflect.TypeOf(ServiceBind{}), generators)
+
+ return serviceBindGenerator
+}
+
+// AddIndependentPropertyGeneratorsForServiceBind is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForServiceBind(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["ServiceId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_TcpScaleRule_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 TcpScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTcpScaleRule, TcpScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTcpScaleRule runs a test to see if a specific instance of TcpScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForTcpScaleRule(subject TcpScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TcpScaleRule
+ 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 TcpScaleRule instances for property testing - lazily instantiated by TcpScaleRuleGenerator()
+var tcpScaleRuleGenerator gopter.Gen
+
+// TcpScaleRuleGenerator returns a generator of TcpScaleRule instances for property testing.
+// We first initialize tcpScaleRuleGenerator 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 TcpScaleRuleGenerator() gopter.Gen {
+ if tcpScaleRuleGenerator != nil {
+ return tcpScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule(generators)
+ tcpScaleRuleGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule(generators)
+ AddRelatedPropertyGeneratorsForTcpScaleRule(generators)
+ tcpScaleRuleGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule{}), generators)
+
+ return tcpScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTcpScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTcpScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForTcpScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTcpScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_Template_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 Template via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTemplate, TemplateGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTemplate runs a test to see if a specific instance of Template round trips to JSON and back losslessly
+func RunJSONSerializationTestForTemplate(subject Template) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Template
+ 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 Template instances for property testing - lazily instantiated by TemplateGenerator()
+var templateGenerator gopter.Gen
+
+// TemplateGenerator returns a generator of Template instances for property testing.
+// We first initialize templateGenerator 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 TemplateGenerator() gopter.Gen {
+ if templateGenerator != nil {
+ return templateGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate(generators)
+ templateGenerator = gen.Struct(reflect.TypeOf(Template{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate(generators)
+ AddRelatedPropertyGeneratorsForTemplate(generators)
+ templateGenerator = gen.Struct(reflect.TypeOf(Template{}), generators)
+
+ return templateGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTemplate is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTemplate(gens map[string]gopter.Gen) {
+ gens["RevisionSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForTemplate is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTemplate(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(ContainerGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainerGenerator())
+ gens["Scale"] = gen.PtrOf(ScaleGenerator())
+ gens["ServiceBinds"] = gen.SliceOf(ServiceBindGenerator())
+ gens["Volumes"] = gen.SliceOf(VolumeGenerator())
+}
+
+func Test_TrafficWeight_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 TrafficWeight via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTrafficWeight, TrafficWeightGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTrafficWeight runs a test to see if a specific instance of TrafficWeight round trips to JSON and back losslessly
+func RunJSONSerializationTestForTrafficWeight(subject TrafficWeight) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TrafficWeight
+ 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 TrafficWeight instances for property testing - lazily instantiated by TrafficWeightGenerator()
+var trafficWeightGenerator gopter.Gen
+
+// TrafficWeightGenerator returns a generator of TrafficWeight instances for property testing.
+func TrafficWeightGenerator() gopter.Gen {
+ if trafficWeightGenerator != nil {
+ return trafficWeightGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTrafficWeight(generators)
+ trafficWeightGenerator = gen.Struct(reflect.TypeOf(TrafficWeight{}), generators)
+
+ return trafficWeightGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTrafficWeight is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTrafficWeight(gens map[string]gopter.Gen) {
+ gens["Label"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevision"] = gen.PtrOf(gen.Bool())
+ gens["RevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["Weight"] = gen.PtrOf(gen.Int())
+}
+
+func Test_UserAssignedIdentityDetails_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 UserAssignedIdentityDetails via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForUserAssignedIdentityDetails, UserAssignedIdentityDetailsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForUserAssignedIdentityDetails runs a test to see if a specific instance of UserAssignedIdentityDetails round trips to JSON and back losslessly
+func RunJSONSerializationTestForUserAssignedIdentityDetails(subject UserAssignedIdentityDetails) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual UserAssignedIdentityDetails
+ 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 UserAssignedIdentityDetails instances for property testing - lazily instantiated by
+// UserAssignedIdentityDetailsGenerator()
+var userAssignedIdentityDetailsGenerator gopter.Gen
+
+// UserAssignedIdentityDetailsGenerator returns a generator of UserAssignedIdentityDetails instances for property testing.
+func UserAssignedIdentityDetailsGenerator() gopter.Gen {
+ if userAssignedIdentityDetailsGenerator != nil {
+ return userAssignedIdentityDetailsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ userAssignedIdentityDetailsGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentityDetails{}), generators)
+
+ return userAssignedIdentityDetailsGenerator
+}
+
+func Test_Volume_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 Volume via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolume, VolumeGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolume runs a test to see if a specific instance of Volume round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolume(subject Volume) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Volume
+ 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 Volume instances for property testing - lazily instantiated by VolumeGenerator()
+var volumeGenerator gopter.Gen
+
+// VolumeGenerator returns a generator of Volume instances for property testing.
+// We first initialize volumeGenerator 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 VolumeGenerator() gopter.Gen {
+ if volumeGenerator != nil {
+ return volumeGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume(generators)
+ volumeGenerator = gen.Struct(reflect.TypeOf(Volume{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume(generators)
+ AddRelatedPropertyGeneratorsForVolume(generators)
+ volumeGenerator = gen.Struct(reflect.TypeOf(Volume{}), generators)
+
+ return volumeGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolume is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolume(gens map[string]gopter.Gen) {
+ gens["MountOptions"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageName"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageType"] = gen.PtrOf(gen.OneConstOf(Volume_StorageType_AzureFile, Volume_StorageType_EmptyDir, Volume_StorageType_Secret))
+}
+
+// AddRelatedPropertyGeneratorsForVolume is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForVolume(gens map[string]gopter.Gen) {
+ gens["Secrets"] = gen.SliceOf(SecretVolumeItemGenerator())
+}
+
+func Test_VolumeMount_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 VolumeMount via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolumeMount, VolumeMountGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolumeMount runs a test to see if a specific instance of VolumeMount round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolumeMount(subject VolumeMount) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VolumeMount
+ 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 VolumeMount instances for property testing - lazily instantiated by VolumeMountGenerator()
+var volumeMountGenerator gopter.Gen
+
+// VolumeMountGenerator returns a generator of VolumeMount instances for property testing.
+func VolumeMountGenerator() gopter.Gen {
+ if volumeMountGenerator != nil {
+ return volumeMountGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolumeMount(generators)
+ volumeMountGenerator = gen.Struct(reflect.TypeOf(VolumeMount{}), generators)
+
+ return volumeMountGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolumeMount is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolumeMount(gens map[string]gopter.Gen) {
+ gens["MountPath"] = gen.PtrOf(gen.AlphaString())
+ gens["SubPath"] = gen.PtrOf(gen.AlphaString())
+ gens["VolumeName"] = gen.PtrOf(gen.AlphaString())
+}
diff --git a/v2/api/app/v1api20240301/arm/container_app_status_types_gen.go b/v2/api/app/v1api20240301/arm/container_app_status_types_gen.go
new file mode 100644
index 00000000000..df03ee5666e
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/container_app_status_types_gen.go
@@ -0,0 +1,844 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+// Container App.
+type ContainerApp_STATUS struct {
+ // ExtendedLocation: The complex type of the extended location.
+ ExtendedLocation *ExtendedLocation_STATUS `json:"extendedLocation,omitempty"`
+
+ // Id: Fully qualified resource ID for the resource. Ex -
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ Id *string `json:"id,omitempty"`
+
+ // Identity: managed identities for the Container App to interact with other Azure services without maintaining any secrets
+ // or credentials in code.
+ Identity *ManagedServiceIdentity_STATUS `json:"identity,omitempty"`
+
+ // Location: The geo-location where the resource lives
+ Location *string `json:"location,omitempty"`
+
+ // ManagedBy: The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is
+ // managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is
+ // removed from the template since it is managed by another resource.
+ ManagedBy *string `json:"managedBy,omitempty"`
+
+ // Name: The name of the resource
+ Name *string `json:"name,omitempty"`
+
+ // Properties: ContainerApp resource specific properties
+ Properties *ContainerApp_Properties_STATUS `json:"properties,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"`
+}
+
+type ContainerApp_Properties_STATUS struct {
+ // Configuration: Non versioned Container App configuration properties.
+ Configuration *Configuration_STATUS `json:"configuration,omitempty"`
+
+ // CustomDomainVerificationId: Id used to verify domain name ownership
+ CustomDomainVerificationId *string `json:"customDomainVerificationId,omitempty"`
+
+ // EnvironmentId: Resource ID of environment.
+ EnvironmentId *string `json:"environmentId,omitempty"`
+
+ // EventStreamEndpoint: The endpoint of the eventstream of the container app.
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+
+ // LatestReadyRevisionName: Name of the latest ready revision of the Container App.
+ LatestReadyRevisionName *string `json:"latestReadyRevisionName,omitempty"`
+
+ // LatestRevisionFqdn: Fully Qualified Domain Name of the latest revision of the Container App.
+ LatestRevisionFqdn *string `json:"latestRevisionFqdn,omitempty"`
+
+ // LatestRevisionName: Name of the latest revision of the Container App.
+ LatestRevisionName *string `json:"latestRevisionName,omitempty"`
+
+ // ManagedEnvironmentId: Deprecated. Resource ID of the Container App's environment.
+ ManagedEnvironmentId *string `json:"managedEnvironmentId,omitempty"`
+
+ // OutboundIpAddresses: Outbound IP Addresses for container app.
+ OutboundIpAddresses []string `json:"outboundIpAddresses,omitempty"`
+
+ // ProvisioningState: Provisioning state of the Container App.
+ ProvisioningState *ContainerApp_Properties_ProvisioningState_STATUS `json:"provisioningState,omitempty"`
+
+ // Template: Container App versioned application definition.
+ Template *Template_STATUS `json:"template,omitempty"`
+
+ // WorkloadProfileName: Workload profile name to pin for container app execution.
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+// The complex type of the extended location.
+type ExtendedLocation_STATUS struct {
+ // Name: The name of the extended location.
+ Name *string `json:"name,omitempty"`
+
+ // Type: The type of the extended location.
+ Type *ExtendedLocationType_STATUS `json:"type,omitempty"`
+}
+
+// Managed service identity (system assigned and/or user assigned identities)
+type ManagedServiceIdentity_STATUS struct {
+ // PrincipalId: The service principal ID of the system assigned identity. This property will only be provided for a system
+ // assigned identity.
+ PrincipalId *string `json:"principalId,omitempty"`
+
+ // TenantId: The tenant ID of the system assigned identity. This property will only be provided for a system assigned
+ // identity.
+ TenantId *string `json:"tenantId,omitempty"`
+
+ // Type: Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
+ Type *ManagedServiceIdentityType_STATUS `json:"type,omitempty"`
+ UserAssignedIdentities map[string]UserAssignedIdentity_STATUS `json:"userAssignedIdentities,omitempty"`
+}
+
+// Non versioned Container App configuration properties that define the mutable settings of a Container app
+type Configuration_STATUS struct {
+ // ActiveRevisionsMode: ActiveRevisionsMode controls how active revisions are handled for the Container app:
+ // - Multiple: multiple revisions can be active.
- Single: Only one revision can be active at a time.
+ // Revision weights can not be used in this mode. If no value if provided, this is the default.
+ ActiveRevisionsMode *Configuration_ActiveRevisionsMode_STATUS `json:"activeRevisionsMode,omitempty"`
+
+ // Dapr: Dapr configuration for the Container App.
+ Dapr *Dapr_STATUS `json:"dapr,omitempty"`
+
+ // Ingress: Ingress configurations.
+ Ingress *Ingress_STATUS `json:"ingress,omitempty"`
+
+ // MaxInactiveRevisions: Optional. Max inactive revisions a Container App can have.
+ MaxInactiveRevisions *int `json:"maxInactiveRevisions,omitempty"`
+
+ // Registries: Collection of private container registry credentials for containers used by the Container app
+ Registries []RegistryCredentials_STATUS `json:"registries,omitempty"`
+
+ // Secrets: Collection of secrets used by a Container app
+ Secrets []Secret_STATUS `json:"secrets,omitempty"`
+
+ // Service: Container App to be a dev Container App Service
+ Service *Service_STATUS `json:"service,omitempty"`
+}
+
+type ContainerApp_Properties_ProvisioningState_STATUS string
+
+const (
+ ContainerApp_Properties_ProvisioningState_STATUS_Canceled = ContainerApp_Properties_ProvisioningState_STATUS("Canceled")
+ ContainerApp_Properties_ProvisioningState_STATUS_Deleting = ContainerApp_Properties_ProvisioningState_STATUS("Deleting")
+ ContainerApp_Properties_ProvisioningState_STATUS_Failed = ContainerApp_Properties_ProvisioningState_STATUS("Failed")
+ ContainerApp_Properties_ProvisioningState_STATUS_InProgress = ContainerApp_Properties_ProvisioningState_STATUS("InProgress")
+ ContainerApp_Properties_ProvisioningState_STATUS_Succeeded = ContainerApp_Properties_ProvisioningState_STATUS("Succeeded")
+)
+
+// Mapping from string to ContainerApp_Properties_ProvisioningState_STATUS
+var containerApp_Properties_ProvisioningState_STATUS_Values = map[string]ContainerApp_Properties_ProvisioningState_STATUS{
+ "canceled": ContainerApp_Properties_ProvisioningState_STATUS_Canceled,
+ "deleting": ContainerApp_Properties_ProvisioningState_STATUS_Deleting,
+ "failed": ContainerApp_Properties_ProvisioningState_STATUS_Failed,
+ "inprogress": ContainerApp_Properties_ProvisioningState_STATUS_InProgress,
+ "succeeded": ContainerApp_Properties_ProvisioningState_STATUS_Succeeded,
+}
+
+// The type of extendedLocation.
+type ExtendedLocationType_STATUS string
+
+const ExtendedLocationType_STATUS_CustomLocation = ExtendedLocationType_STATUS("CustomLocation")
+
+// Mapping from string to ExtendedLocationType_STATUS
+var extendedLocationType_STATUS_Values = map[string]ExtendedLocationType_STATUS{
+ "customlocation": ExtendedLocationType_STATUS_CustomLocation,
+}
+
+// Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
+type ManagedServiceIdentityType_STATUS string
+
+const (
+ ManagedServiceIdentityType_STATUS_None = ManagedServiceIdentityType_STATUS("None")
+ ManagedServiceIdentityType_STATUS_SystemAssigned = ManagedServiceIdentityType_STATUS("SystemAssigned")
+ ManagedServiceIdentityType_STATUS_SystemAssignedUserAssigned = ManagedServiceIdentityType_STATUS("SystemAssigned,UserAssigned")
+ ManagedServiceIdentityType_STATUS_UserAssigned = ManagedServiceIdentityType_STATUS("UserAssigned")
+)
+
+// Mapping from string to ManagedServiceIdentityType_STATUS
+var managedServiceIdentityType_STATUS_Values = map[string]ManagedServiceIdentityType_STATUS{
+ "none": ManagedServiceIdentityType_STATUS_None,
+ "systemassigned": ManagedServiceIdentityType_STATUS_SystemAssigned,
+ "systemassigned,userassigned": ManagedServiceIdentityType_STATUS_SystemAssignedUserAssigned,
+ "userassigned": ManagedServiceIdentityType_STATUS_UserAssigned,
+}
+
+// Container App versioned application definition.
+// Defines the desired state of an immutable revision.
+// Any changes to this
+// section Will result in a new revision being created
+type Template_STATUS struct {
+ // Containers: List of container definitions for the Container App.
+ Containers []Container_STATUS `json:"containers,omitempty"`
+
+ // InitContainers: List of specialized containers that run before app containers.
+ InitContainers []BaseContainer_STATUS `json:"initContainers,omitempty"`
+
+ // RevisionSuffix: User friendly suffix that is appended to the revision name
+ RevisionSuffix *string `json:"revisionSuffix,omitempty"`
+
+ // Scale: Scaling properties for the Container App.
+ Scale *Scale_STATUS `json:"scale,omitempty"`
+
+ // ServiceBinds: List of container app services bound to the app
+ ServiceBinds []ServiceBind_STATUS `json:"serviceBinds,omitempty"`
+
+ // TerminationGracePeriodSeconds: Optional duration in seconds the Container App Instance needs to terminate gracefully.
+ // Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to
+ // shut down). If this value is nil, the default grace period will be used instead. Set this value longer than the expected
+ // cleanup time for your process. Defaults to 30 seconds.
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+
+ // Volumes: List of volume definitions for the Container App.
+ Volumes []Volume_STATUS `json:"volumes,omitempty"`
+}
+
+// User assigned identity properties
+type UserAssignedIdentity_STATUS struct {
+ // ClientId: The client ID of the assigned identity.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // PrincipalId: The principal ID of the assigned identity.
+ PrincipalId *string `json:"principalId,omitempty"`
+}
+
+// Container App base container definition.
+type BaseContainer_STATUS struct {
+ // Args: Container start command arguments.
+ Args []string `json:"args,omitempty"`
+
+ // Command: Container start command.
+ Command []string `json:"command,omitempty"`
+
+ // Env: Container environment variables.
+ Env []EnvironmentVar_STATUS `json:"env,omitempty"`
+
+ // Image: Container image tag.
+ Image *string `json:"image,omitempty"`
+
+ // Name: Custom container name.
+ Name *string `json:"name,omitempty"`
+
+ // Resources: Container resource requirements.
+ Resources *ContainerResources_STATUS `json:"resources,omitempty"`
+
+ // VolumeMounts: Container volume mounts.
+ VolumeMounts []VolumeMount_STATUS `json:"volumeMounts,omitempty"`
+}
+
+type Configuration_ActiveRevisionsMode_STATUS string
+
+const (
+ Configuration_ActiveRevisionsMode_STATUS_Multiple = Configuration_ActiveRevisionsMode_STATUS("Multiple")
+ Configuration_ActiveRevisionsMode_STATUS_Single = Configuration_ActiveRevisionsMode_STATUS("Single")
+)
+
+// Mapping from string to Configuration_ActiveRevisionsMode_STATUS
+var configuration_ActiveRevisionsMode_STATUS_Values = map[string]Configuration_ActiveRevisionsMode_STATUS{
+ "multiple": Configuration_ActiveRevisionsMode_STATUS_Multiple,
+ "single": Configuration_ActiveRevisionsMode_STATUS_Single,
+}
+
+// Container App container definition
+type Container_STATUS struct {
+ // Args: Container start command arguments.
+ Args []string `json:"args,omitempty"`
+
+ // Command: Container start command.
+ Command []string `json:"command,omitempty"`
+
+ // Env: Container environment variables.
+ Env []EnvironmentVar_STATUS `json:"env,omitempty"`
+
+ // Image: Container image tag.
+ Image *string `json:"image,omitempty"`
+
+ // Name: Custom container name.
+ Name *string `json:"name,omitempty"`
+
+ // Probes: List of probes for the container.
+ Probes []ContainerAppProbe_STATUS `json:"probes,omitempty"`
+
+ // Resources: Container resource requirements.
+ Resources *ContainerResources_STATUS `json:"resources,omitempty"`
+
+ // VolumeMounts: Container volume mounts.
+ VolumeMounts []VolumeMount_STATUS `json:"volumeMounts,omitempty"`
+}
+
+// Container App Dapr configuration.
+type Dapr_STATUS struct {
+ // AppId: Dapr application identifier
+ AppId *string `json:"appId,omitempty"`
+
+ // AppPort: Tells Dapr which port your application is listening on
+ AppPort *int `json:"appPort,omitempty"`
+
+ // AppProtocol: Tells Dapr which protocol your application is using. Valid options are http and grpc. Default is http
+ AppProtocol *Dapr_AppProtocol_STATUS `json:"appProtocol,omitempty"`
+
+ // EnableApiLogging: Enables API logging for the Dapr sidecar
+ EnableApiLogging *bool `json:"enableApiLogging,omitempty"`
+
+ // Enabled: Boolean indicating if the Dapr side car is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // HttpMaxRequestSize: Increasing max size of request body http and grpc servers parameter in MB to handle uploading of big
+ // files. Default is 4 MB.
+ HttpMaxRequestSize *int `json:"httpMaxRequestSize,omitempty"`
+
+ // HttpReadBufferSize: Dapr max size of http header read buffer in KB to handle when sending multi-KB headers. Default is
+ // 65KB.
+ HttpReadBufferSize *int `json:"httpReadBufferSize,omitempty"`
+
+ // LogLevel: Sets the log level for the Dapr sidecar. Allowed values are debug, info, warn, error. Default is info.
+ LogLevel *Dapr_LogLevel_STATUS `json:"logLevel,omitempty"`
+}
+
+// Container App Ingress configuration.
+type Ingress_STATUS struct {
+ // AdditionalPortMappings: Settings to expose additional ports on container app
+ AdditionalPortMappings []IngressPortMapping_STATUS `json:"additionalPortMappings,omitempty"`
+
+ // AllowInsecure: Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically
+ // redirected to HTTPS connections
+ AllowInsecure *bool `json:"allowInsecure,omitempty"`
+
+ // ClientCertificateMode: Client certificate mode for mTLS authentication. Ignore indicates server drops client certificate
+ // on forwarding. Accept indicates server forwards client certificate but does not require a client certificate. Require
+ // indicates server requires a client certificate.
+ ClientCertificateMode *Ingress_ClientCertificateMode_STATUS `json:"clientCertificateMode,omitempty"`
+
+ // CorsPolicy: CORS policy for container app
+ CorsPolicy *CorsPolicy_STATUS `json:"corsPolicy,omitempty"`
+
+ // CustomDomains: custom domain bindings for Container Apps' hostnames.
+ CustomDomains []CustomDomain_STATUS `json:"customDomains,omitempty"`
+
+ // ExposedPort: Exposed Port in containers for TCP traffic from ingress
+ ExposedPort *int `json:"exposedPort,omitempty"`
+
+ // External: Bool indicating if app exposes an external http endpoint
+ External *bool `json:"external,omitempty"`
+
+ // Fqdn: Hostname.
+ Fqdn *string `json:"fqdn,omitempty"`
+
+ // IpSecurityRestrictions: Rules to restrict incoming IP address.
+ IpSecurityRestrictions []IpSecurityRestrictionRule_STATUS `json:"ipSecurityRestrictions,omitempty"`
+
+ // StickySessions: Sticky Sessions for Single Revision Mode
+ StickySessions *Ingress_StickySessions_STATUS `json:"stickySessions,omitempty"`
+
+ // TargetPort: Target Port in containers for traffic from ingress
+ TargetPort *int `json:"targetPort,omitempty"`
+
+ // Traffic: Traffic weights for app's revisions
+ Traffic []TrafficWeight_STATUS `json:"traffic,omitempty"`
+
+ // Transport: Ingress transport protocol
+ Transport *Ingress_Transport_STATUS `json:"transport,omitempty"`
+}
+
+// Container App Private Registry
+type RegistryCredentials_STATUS struct {
+ // Identity: A Managed Identity to use to authenticate with Azure Container Registry. For user-assigned identities, use the
+ // full user-assigned identity Resource ID. For system-assigned identities, use 'system'
+ Identity *string `json:"identity,omitempty"`
+
+ // PasswordSecretRef: The name of the Secret that contains the registry login password
+ PasswordSecretRef *string `json:"passwordSecretRef,omitempty"`
+
+ // Server: Container Registry Server
+ Server *string `json:"server,omitempty"`
+
+ // Username: Container Registry Username
+ Username *string `json:"username,omitempty"`
+}
+
+// Container App scaling configurations.
+type Scale_STATUS struct {
+ // MaxReplicas: Optional. Maximum number of container replicas. Defaults to 10 if not set.
+ MaxReplicas *int `json:"maxReplicas,omitempty"`
+
+ // MinReplicas: Optional. Minimum number of container replicas.
+ MinReplicas *int `json:"minReplicas,omitempty"`
+
+ // Rules: Scaling rules.
+ Rules []ScaleRule_STATUS `json:"rules,omitempty"`
+}
+
+// Secret definition.
+type Secret_STATUS struct {
+ // Identity: Resource ID of a managed identity to authenticate with Azure Key Vault, or System to use a system-assigned
+ // identity.
+ Identity *string `json:"identity,omitempty"`
+
+ // KeyVaultUrl: Azure Key Vault URL pointing to the secret referenced by the container app.
+ KeyVaultUrl *string `json:"keyVaultUrl,omitempty"`
+
+ // Name: Secret Name.
+ Name *string `json:"name,omitempty"`
+}
+
+// Container App to be a dev service
+type Service_STATUS struct {
+ // Type: Dev ContainerApp service type
+ Type *string `json:"type,omitempty"`
+}
+
+// Configuration to bind a ContainerApp to a dev ContainerApp Service
+type ServiceBind_STATUS struct {
+ // Name: Name of the service bind
+ Name *string `json:"name,omitempty"`
+
+ // ServiceId: Resource id of the target service
+ ServiceId *string `json:"serviceId,omitempty"`
+}
+
+// Volume definitions for the Container App.
+type Volume_STATUS struct {
+ // MountOptions: Mount options used while mounting the AzureFile. Must be a comma-separated string.
+ MountOptions *string `json:"mountOptions,omitempty"`
+
+ // Name: Volume name.
+ Name *string `json:"name,omitempty"`
+
+ // Secrets: List of secrets to be added in volume. If no secrets are provided, all secrets in collection will be added to
+ // volume.
+ Secrets []SecretVolumeItem_STATUS `json:"secrets,omitempty"`
+
+ // StorageName: Name of storage resource. No need to provide for EmptyDir and Secret.
+ StorageName *string `json:"storageName,omitempty"`
+
+ // StorageType: Storage type for the volume. If not provided, use EmptyDir.
+ StorageType *Volume_StorageType_STATUS `json:"storageType,omitempty"`
+}
+
+// Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive
+// traffic.
+type ContainerAppProbe_STATUS struct {
+ // FailureThreshold: Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to
+ // 3. Minimum value is 1. Maximum value is 10.
+ FailureThreshold *int `json:"failureThreshold,omitempty"`
+
+ // HttpGet: HTTPGet specifies the http request to perform.
+ HttpGet *ContainerAppProbe_HttpGet_STATUS `json:"httpGet,omitempty"`
+
+ // InitialDelaySeconds: Number of seconds after the container has started before liveness probes are initiated. Minimum
+ // value is 1. Maximum value is 60.
+ InitialDelaySeconds *int `json:"initialDelaySeconds,omitempty"`
+
+ // PeriodSeconds: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is
+ // 240.
+ PeriodSeconds *int `json:"periodSeconds,omitempty"`
+
+ // SuccessThreshold: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults
+ // to 1. Must be 1 for liveness and startup. Minimum value is 1. Maximum value is 10.
+ SuccessThreshold *int `json:"successThreshold,omitempty"`
+
+ // TcpSocket: TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported.
+ TcpSocket *ContainerAppProbe_TcpSocket_STATUS `json:"tcpSocket,omitempty"`
+
+ // TerminationGracePeriodSeconds: Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ // The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the
+ // time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for
+ // your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value
+ // overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop
+ // immediately via the kill signal (no opportunity to shut down). This is an alpha field and requires enabling
+ // ProbeTerminationGracePeriod feature gate. Maximum value is 3600 seconds (1 hour)
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+
+ // TimeoutSeconds: Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum
+ // value is 240.
+ TimeoutSeconds *int `json:"timeoutSeconds,omitempty"`
+
+ // Type: The type of probe.
+ Type *ContainerAppProbe_Type_STATUS `json:"type,omitempty"`
+}
+
+// Container App container resource requirements.
+type ContainerResources_STATUS struct {
+ // Cpu: Required CPU in cores, e.g. 0.5
+ Cpu *float64 `json:"cpu,omitempty"`
+
+ // EphemeralStorage: Ephemeral Storage, e.g. "1Gi"
+ EphemeralStorage *string `json:"ephemeralStorage,omitempty"`
+
+ // Memory: Required memory, e.g. "250Mb"
+ Memory *string `json:"memory,omitempty"`
+}
+
+// Cross-Origin-Resource-Sharing policy
+type CorsPolicy_STATUS struct {
+ // AllowCredentials: Specifies whether the resource allows credentials
+ AllowCredentials *bool `json:"allowCredentials,omitempty"`
+
+ // AllowedHeaders: Specifies the content for the access-control-allow-headers header
+ AllowedHeaders []string `json:"allowedHeaders,omitempty"`
+
+ // AllowedMethods: Specifies the content for the access-control-allow-methods header
+ AllowedMethods []string `json:"allowedMethods,omitempty"`
+
+ // AllowedOrigins: Specifies the content for the access-control-allow-origins header
+ AllowedOrigins []string `json:"allowedOrigins,omitempty"`
+
+ // ExposeHeaders: Specifies the content for the access-control-expose-headers header
+ ExposeHeaders []string `json:"exposeHeaders,omitempty"`
+
+ // MaxAge: Specifies the content for the access-control-max-age header
+ MaxAge *int `json:"maxAge,omitempty"`
+}
+
+// Custom Domain of a Container App
+type CustomDomain_STATUS struct {
+ // BindingType: Custom Domain binding type.
+ BindingType *CustomDomain_BindingType_STATUS `json:"bindingType,omitempty"`
+
+ // CertificateId: Resource Id of the Certificate to be bound to this hostname. Must exist in the Managed Environment.
+ CertificateId *string `json:"certificateId,omitempty"`
+
+ // Name: Hostname.
+ Name *string `json:"name,omitempty"`
+}
+
+type Dapr_AppProtocol_STATUS string
+
+const (
+ Dapr_AppProtocol_STATUS_Grpc = Dapr_AppProtocol_STATUS("grpc")
+ Dapr_AppProtocol_STATUS_Http = Dapr_AppProtocol_STATUS("http")
+)
+
+// Mapping from string to Dapr_AppProtocol_STATUS
+var dapr_AppProtocol_STATUS_Values = map[string]Dapr_AppProtocol_STATUS{
+ "grpc": Dapr_AppProtocol_STATUS_Grpc,
+ "http": Dapr_AppProtocol_STATUS_Http,
+}
+
+type Dapr_LogLevel_STATUS string
+
+const (
+ Dapr_LogLevel_STATUS_Debug = Dapr_LogLevel_STATUS("debug")
+ Dapr_LogLevel_STATUS_Error = Dapr_LogLevel_STATUS("error")
+ Dapr_LogLevel_STATUS_Info = Dapr_LogLevel_STATUS("info")
+ Dapr_LogLevel_STATUS_Warn = Dapr_LogLevel_STATUS("warn")
+)
+
+// Mapping from string to Dapr_LogLevel_STATUS
+var dapr_LogLevel_STATUS_Values = map[string]Dapr_LogLevel_STATUS{
+ "debug": Dapr_LogLevel_STATUS_Debug,
+ "error": Dapr_LogLevel_STATUS_Error,
+ "info": Dapr_LogLevel_STATUS_Info,
+ "warn": Dapr_LogLevel_STATUS_Warn,
+}
+
+// Container App container environment variable.
+type EnvironmentVar_STATUS struct {
+ // Name: Environment variable name.
+ Name *string `json:"name,omitempty"`
+
+ // SecretRef: Name of the Container App secret from which to pull the environment variable value.
+ SecretRef *string `json:"secretRef,omitempty"`
+
+ // Value: Non-secret environment variable value.
+ Value *string `json:"value,omitempty"`
+}
+
+type Ingress_ClientCertificateMode_STATUS string
+
+const (
+ Ingress_ClientCertificateMode_STATUS_Accept = Ingress_ClientCertificateMode_STATUS("accept")
+ Ingress_ClientCertificateMode_STATUS_Ignore = Ingress_ClientCertificateMode_STATUS("ignore")
+ Ingress_ClientCertificateMode_STATUS_Require = Ingress_ClientCertificateMode_STATUS("require")
+)
+
+// Mapping from string to Ingress_ClientCertificateMode_STATUS
+var ingress_ClientCertificateMode_STATUS_Values = map[string]Ingress_ClientCertificateMode_STATUS{
+ "accept": Ingress_ClientCertificateMode_STATUS_Accept,
+ "ignore": Ingress_ClientCertificateMode_STATUS_Ignore,
+ "require": Ingress_ClientCertificateMode_STATUS_Require,
+}
+
+type Ingress_StickySessions_STATUS struct {
+ // Affinity: Sticky Session Affinity
+ Affinity *Ingress_StickySessions_Affinity_STATUS `json:"affinity,omitempty"`
+}
+
+type Ingress_Transport_STATUS string
+
+const (
+ Ingress_Transport_STATUS_Auto = Ingress_Transport_STATUS("auto")
+ Ingress_Transport_STATUS_Http = Ingress_Transport_STATUS("http")
+ Ingress_Transport_STATUS_Http2 = Ingress_Transport_STATUS("http2")
+ Ingress_Transport_STATUS_Tcp = Ingress_Transport_STATUS("tcp")
+)
+
+// Mapping from string to Ingress_Transport_STATUS
+var ingress_Transport_STATUS_Values = map[string]Ingress_Transport_STATUS{
+ "auto": Ingress_Transport_STATUS_Auto,
+ "http": Ingress_Transport_STATUS_Http,
+ "http2": Ingress_Transport_STATUS_Http2,
+ "tcp": Ingress_Transport_STATUS_Tcp,
+}
+
+// Port mappings of container app ingress
+type IngressPortMapping_STATUS struct {
+ // ExposedPort: Specifies the exposed port for the target port. If not specified, it defaults to target port
+ ExposedPort *int `json:"exposedPort,omitempty"`
+
+ // External: Specifies whether the app port is accessible outside of the environment
+ External *bool `json:"external,omitempty"`
+
+ // TargetPort: Specifies the port user's container listens on
+ TargetPort *int `json:"targetPort,omitempty"`
+}
+
+// Rule to restrict incoming IP address.
+type IpSecurityRestrictionRule_STATUS struct {
+ // Action: Allow or Deny rules to determine for incoming IP. Note: Rules can only consist of ALL Allow or ALL Deny
+ Action *IpSecurityRestrictionRule_Action_STATUS `json:"action,omitempty"`
+
+ // Description: Describe the IP restriction rule that is being sent to the container-app. This is an optional field.
+ Description *string `json:"description,omitempty"`
+
+ // IpAddressRange: CIDR notation to match incoming IP address
+ IpAddressRange *string `json:"ipAddressRange,omitempty"`
+
+ // Name: Name for the IP restriction rule.
+ Name *string `json:"name,omitempty"`
+}
+
+// Container App container scaling rule.
+type ScaleRule_STATUS struct {
+ // AzureQueue: Azure Queue based scaling.
+ AzureQueue *QueueScaleRule_STATUS `json:"azureQueue,omitempty"`
+
+ // Custom: Custom scale rule.
+ Custom *CustomScaleRule_STATUS `json:"custom,omitempty"`
+
+ // Http: HTTP requests based scaling.
+ Http *HttpScaleRule_STATUS `json:"http,omitempty"`
+
+ // Name: Scale Rule Name
+ Name *string `json:"name,omitempty"`
+
+ // Tcp: Tcp requests based scaling.
+ Tcp *TcpScaleRule_STATUS `json:"tcp,omitempty"`
+}
+
+// Secret to be added to volume.
+type SecretVolumeItem_STATUS struct {
+ // Path: Path to project secret to. If no path is provided, path defaults to name of secret listed in secretRef.
+ Path *string `json:"path,omitempty"`
+
+ // SecretRef: Name of the Container App secret from which to pull the secret value.
+ SecretRef *string `json:"secretRef,omitempty"`
+}
+
+// Traffic weight assigned to a revision
+type TrafficWeight_STATUS struct {
+ // Label: Associates a traffic label with a revision
+ Label *string `json:"label,omitempty"`
+
+ // LatestRevision: Indicates that the traffic weight belongs to a latest stable revision
+ LatestRevision *bool `json:"latestRevision,omitempty"`
+
+ // RevisionName: Name of a revision
+ RevisionName *string `json:"revisionName,omitempty"`
+
+ // Weight: Traffic weight assigned to a revision
+ Weight *int `json:"weight,omitempty"`
+}
+
+type Volume_StorageType_STATUS string
+
+const (
+ Volume_StorageType_STATUS_AzureFile = Volume_StorageType_STATUS("AzureFile")
+ Volume_StorageType_STATUS_EmptyDir = Volume_StorageType_STATUS("EmptyDir")
+ Volume_StorageType_STATUS_Secret = Volume_StorageType_STATUS("Secret")
+)
+
+// Mapping from string to Volume_StorageType_STATUS
+var volume_StorageType_STATUS_Values = map[string]Volume_StorageType_STATUS{
+ "azurefile": Volume_StorageType_STATUS_AzureFile,
+ "emptydir": Volume_StorageType_STATUS_EmptyDir,
+ "secret": Volume_StorageType_STATUS_Secret,
+}
+
+// Volume mount for the Container App.
+type VolumeMount_STATUS struct {
+ // MountPath: Path within the container at which the volume should be mounted.Must not contain ':'.
+ MountPath *string `json:"mountPath,omitempty"`
+
+ // SubPath: Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root).
+ SubPath *string `json:"subPath,omitempty"`
+
+ // VolumeName: This must match the Name of a Volume.
+ VolumeName *string `json:"volumeName,omitempty"`
+}
+
+type ContainerAppProbe_HttpGet_STATUS struct {
+ // Host: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
+ Host *string `json:"host,omitempty"`
+
+ // HttpHeaders: Custom headers to set in the request. HTTP allows repeated headers.
+ HttpHeaders []ContainerAppProbe_HttpGet_HttpHeaders_STATUS `json:"httpHeaders,omitempty"`
+
+ // Path: Path to access on the HTTP server.
+ Path *string `json:"path,omitempty"`
+
+ // Port: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an
+ // IANA_SVC_NAME.
+ Port *int `json:"port,omitempty"`
+
+ // Scheme: Scheme to use for connecting to the host. Defaults to HTTP.
+ Scheme *ContainerAppProbe_HttpGet_Scheme_STATUS `json:"scheme,omitempty"`
+}
+
+type ContainerAppProbe_TcpSocket_STATUS struct {
+ // Host: Optional: Host name to connect to, defaults to the pod IP.
+ Host *string `json:"host,omitempty"`
+
+ // Port: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an
+ // IANA_SVC_NAME.
+ Port *int `json:"port,omitempty"`
+}
+
+type ContainerAppProbe_Type_STATUS string
+
+const (
+ ContainerAppProbe_Type_STATUS_Liveness = ContainerAppProbe_Type_STATUS("Liveness")
+ ContainerAppProbe_Type_STATUS_Readiness = ContainerAppProbe_Type_STATUS("Readiness")
+ ContainerAppProbe_Type_STATUS_Startup = ContainerAppProbe_Type_STATUS("Startup")
+)
+
+// Mapping from string to ContainerAppProbe_Type_STATUS
+var containerAppProbe_Type_STATUS_Values = map[string]ContainerAppProbe_Type_STATUS{
+ "liveness": ContainerAppProbe_Type_STATUS_Liveness,
+ "readiness": ContainerAppProbe_Type_STATUS_Readiness,
+ "startup": ContainerAppProbe_Type_STATUS_Startup,
+}
+
+type CustomDomain_BindingType_STATUS string
+
+const (
+ CustomDomain_BindingType_STATUS_Disabled = CustomDomain_BindingType_STATUS("Disabled")
+ CustomDomain_BindingType_STATUS_SniEnabled = CustomDomain_BindingType_STATUS("SniEnabled")
+)
+
+// Mapping from string to CustomDomain_BindingType_STATUS
+var customDomain_BindingType_STATUS_Values = map[string]CustomDomain_BindingType_STATUS{
+ "disabled": CustomDomain_BindingType_STATUS_Disabled,
+ "snienabled": CustomDomain_BindingType_STATUS_SniEnabled,
+}
+
+// Container App container Custom scaling rule.
+type CustomScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the custom scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe custom scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+
+ // Type: Type of the custom scale rule
+ // eg: azure-servicebus, redis etc.
+ Type *string `json:"type,omitempty"`
+}
+
+// Container App container Http scaling rule.
+type HttpScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the custom scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe http scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+}
+
+type Ingress_StickySessions_Affinity_STATUS string
+
+const (
+ Ingress_StickySessions_Affinity_STATUS_None = Ingress_StickySessions_Affinity_STATUS("none")
+ Ingress_StickySessions_Affinity_STATUS_Sticky = Ingress_StickySessions_Affinity_STATUS("sticky")
+)
+
+// Mapping from string to Ingress_StickySessions_Affinity_STATUS
+var ingress_StickySessions_Affinity_STATUS_Values = map[string]Ingress_StickySessions_Affinity_STATUS{
+ "none": Ingress_StickySessions_Affinity_STATUS_None,
+ "sticky": Ingress_StickySessions_Affinity_STATUS_Sticky,
+}
+
+type IpSecurityRestrictionRule_Action_STATUS string
+
+const (
+ IpSecurityRestrictionRule_Action_STATUS_Allow = IpSecurityRestrictionRule_Action_STATUS("Allow")
+ IpSecurityRestrictionRule_Action_STATUS_Deny = IpSecurityRestrictionRule_Action_STATUS("Deny")
+)
+
+// Mapping from string to IpSecurityRestrictionRule_Action_STATUS
+var ipSecurityRestrictionRule_Action_STATUS_Values = map[string]IpSecurityRestrictionRule_Action_STATUS{
+ "allow": IpSecurityRestrictionRule_Action_STATUS_Allow,
+ "deny": IpSecurityRestrictionRule_Action_STATUS_Deny,
+}
+
+// Container App container Azure Queue based scaling rule.
+type QueueScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the queue scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // QueueLength: Queue length.
+ QueueLength *int `json:"queueLength,omitempty"`
+
+ // QueueName: Queue name.
+ QueueName *string `json:"queueName,omitempty"`
+}
+
+// Container App container Tcp scaling rule.
+type TcpScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the tcp scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe tcp scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+}
+
+type ContainerAppProbe_HttpGet_HttpHeaders_STATUS struct {
+ // Name: The header field name
+ Name *string `json:"name,omitempty"`
+
+ // Value: The header field value
+ Value *string `json:"value,omitempty"`
+}
+
+type ContainerAppProbe_HttpGet_Scheme_STATUS string
+
+const (
+ ContainerAppProbe_HttpGet_Scheme_STATUS_HTTP = ContainerAppProbe_HttpGet_Scheme_STATUS("HTTP")
+ ContainerAppProbe_HttpGet_Scheme_STATUS_HTTPS = ContainerAppProbe_HttpGet_Scheme_STATUS("HTTPS")
+)
+
+// Mapping from string to ContainerAppProbe_HttpGet_Scheme_STATUS
+var containerAppProbe_HttpGet_Scheme_STATUS_Values = map[string]ContainerAppProbe_HttpGet_Scheme_STATUS{
+ "http": ContainerAppProbe_HttpGet_Scheme_STATUS_HTTP,
+ "https": ContainerAppProbe_HttpGet_Scheme_STATUS_HTTPS,
+}
+
+// Auth Secrets for Scale Rule
+type ScaleRuleAuth_STATUS struct {
+ // SecretRef: Name of the secret from which to pull the auth params.
+ SecretRef *string `json:"secretRef,omitempty"`
+
+ // TriggerParameter: Trigger Parameter that uses the secret
+ TriggerParameter *string `json:"triggerParameter,omitempty"`
+}
diff --git a/v2/api/app/v1api20240301/arm/container_app_status_types_gen_test.go b/v2/api/app/v1api20240301/arm/container_app_status_types_gen_test.go
new file mode 100644
index 00000000000..3612f63dd03
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/container_app_status_types_gen_test.go
@@ -0,0 +1,2639 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+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_BaseContainer_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 BaseContainer_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBaseContainer_STATUS, BaseContainer_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBaseContainer_STATUS runs a test to see if a specific instance of BaseContainer_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForBaseContainer_STATUS(subject BaseContainer_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BaseContainer_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 BaseContainer_STATUS instances for property testing - lazily instantiated by
+// BaseContainer_STATUSGenerator()
+var baseContainer_STATUSGenerator gopter.Gen
+
+// BaseContainer_STATUSGenerator returns a generator of BaseContainer_STATUS instances for property testing.
+// We first initialize baseContainer_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 BaseContainer_STATUSGenerator() gopter.Gen {
+ if baseContainer_STATUSGenerator != nil {
+ return baseContainer_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer_STATUS(generators)
+ baseContainer_STATUSGenerator = gen.Struct(reflect.TypeOf(BaseContainer_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer_STATUS(generators)
+ AddRelatedPropertyGeneratorsForBaseContainer_STATUS(generators)
+ baseContainer_STATUSGenerator = gen.Struct(reflect.TypeOf(BaseContainer_STATUS{}), generators)
+
+ return baseContainer_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBaseContainer_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBaseContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForBaseContainer_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForBaseContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVar_STATUSGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResources_STATUSGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMount_STATUSGenerator())
+}
+
+func Test_Configuration_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 Configuration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForConfiguration_STATUS, Configuration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForConfiguration_STATUS runs a test to see if a specific instance of Configuration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForConfiguration_STATUS(subject Configuration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Configuration_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 Configuration_STATUS instances for property testing - lazily instantiated by
+// Configuration_STATUSGenerator()
+var configuration_STATUSGenerator gopter.Gen
+
+// Configuration_STATUSGenerator returns a generator of Configuration_STATUS instances for property testing.
+// We first initialize configuration_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 Configuration_STATUSGenerator() gopter.Gen {
+ if configuration_STATUSGenerator != nil {
+ return configuration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration_STATUS(generators)
+ configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(Configuration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForConfiguration_STATUS(generators)
+ configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(Configuration_STATUS{}), generators)
+
+ return configuration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["ActiveRevisionsMode"] = gen.PtrOf(gen.OneConstOf(Configuration_ActiveRevisionsMode_STATUS_Multiple, Configuration_ActiveRevisionsMode_STATUS_Single))
+ gens["MaxInactiveRevisions"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Dapr"] = gen.PtrOf(Dapr_STATUSGenerator())
+ gens["Ingress"] = gen.PtrOf(Ingress_STATUSGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentials_STATUSGenerator())
+ gens["Secrets"] = gen.SliceOf(Secret_STATUSGenerator())
+ gens["Service"] = gen.PtrOf(Service_STATUSGenerator())
+}
+
+func Test_ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS, ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS runs a test to see if a specific instance of ContainerAppProbe_HttpGet_HttpHeaders_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS(subject ContainerAppProbe_HttpGet_HttpHeaders_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator()
+var containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator returns a generator of ContainerAppProbe_HttpGet_HttpHeaders_STATUS instances for property testing.
+func ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator != nil {
+ return containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS(generators)
+ containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_HttpHeaders_STATUS{}), generators)
+
+ return containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS, ContainerAppProbe_HttpGet_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS runs a test to see if a specific instance of ContainerAppProbe_HttpGet_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS(subject ContainerAppProbe_HttpGet_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_STATUSGenerator()
+var containerAppProbe_HttpGet_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_STATUSGenerator returns a generator of ContainerAppProbe_HttpGet_STATUS instances for property testing.
+// We first initialize containerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_STATUSGenerator != nil {
+ return containerAppProbe_HttpGet_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ containerAppProbe_HttpGet_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ containerAppProbe_HttpGet_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_STATUS{}), generators)
+
+ return containerAppProbe_HttpGet_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+ gens["Scheme"] = gen.PtrOf(gen.OneConstOf(ContainerAppProbe_HttpGet_Scheme_STATUS_HTTP, ContainerAppProbe_HttpGet_Scheme_STATUS_HTTPS))
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(gens map[string]gopter.Gen) {
+ gens["HttpHeaders"] = gen.SliceOf(ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator())
+}
+
+func Test_ContainerAppProbe_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 ContainerAppProbe_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_STATUS, ContainerAppProbe_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_STATUS runs a test to see if a specific instance of ContainerAppProbe_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_STATUS(subject ContainerAppProbe_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_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 ContainerAppProbe_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_STATUSGenerator()
+var containerAppProbe_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_STATUSGenerator returns a generator of ContainerAppProbe_STATUS instances for property testing.
+// We first initialize containerAppProbe_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 ContainerAppProbe_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_STATUSGenerator != nil {
+ return containerAppProbe_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ containerAppProbe_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ containerAppProbe_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_STATUS{}), generators)
+
+ return containerAppProbe_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(gens map[string]gopter.Gen) {
+ gens["FailureThreshold"] = gen.PtrOf(gen.Int())
+ gens["InitialDelaySeconds"] = gen.PtrOf(gen.Int())
+ gens["PeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["SuccessThreshold"] = gen.PtrOf(gen.Int())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["TimeoutSeconds"] = gen.PtrOf(gen.Int())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(ContainerAppProbe_Type_STATUS_Liveness, ContainerAppProbe_Type_STATUS_Readiness, ContainerAppProbe_Type_STATUS_Startup))
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS(gens map[string]gopter.Gen) {
+ gens["HttpGet"] = gen.PtrOf(ContainerAppProbe_HttpGet_STATUSGenerator())
+ gens["TcpSocket"] = gen.PtrOf(ContainerAppProbe_TcpSocket_STATUSGenerator())
+}
+
+func Test_ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS, ContainerAppProbe_TcpSocket_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS runs a test to see if a specific instance of ContainerAppProbe_TcpSocket_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS(subject ContainerAppProbe_TcpSocket_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_TcpSocket_STATUSGenerator()
+var containerAppProbe_TcpSocket_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_TcpSocket_STATUSGenerator returns a generator of ContainerAppProbe_TcpSocket_STATUS instances for property testing.
+func ContainerAppProbe_TcpSocket_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_TcpSocket_STATUSGenerator != nil {
+ return containerAppProbe_TcpSocket_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS(generators)
+ containerAppProbe_TcpSocket_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_TcpSocket_STATUS{}), generators)
+
+ return containerAppProbe_TcpSocket_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+}
+
+func Test_ContainerApp_Properties_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 ContainerApp_Properties_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp_Properties_STATUS, ContainerApp_Properties_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp_Properties_STATUS runs a test to see if a specific instance of ContainerApp_Properties_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp_Properties_STATUS(subject ContainerApp_Properties_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp_Properties_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 ContainerApp_Properties_STATUS instances for property testing - lazily instantiated by
+// ContainerApp_Properties_STATUSGenerator()
+var containerApp_Properties_STATUSGenerator gopter.Gen
+
+// ContainerApp_Properties_STATUSGenerator returns a generator of ContainerApp_Properties_STATUS instances for property testing.
+// We first initialize containerApp_Properties_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 ContainerApp_Properties_STATUSGenerator() gopter.Gen {
+ if containerApp_Properties_STATUSGenerator != nil {
+ return containerApp_Properties_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Properties_STATUS(generators)
+ containerApp_Properties_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Properties_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Properties_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerApp_Properties_STATUS(generators)
+ containerApp_Properties_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Properties_STATUS{}), generators)
+
+ return containerApp_Properties_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerApp_Properties_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerApp_Properties_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomDomainVerificationId"] = gen.PtrOf(gen.AlphaString())
+ gens["EnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestReadyRevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevisionFqdn"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["ManagedEnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["OutboundIpAddresses"] = gen.SliceOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.OneConstOf(
+ ContainerApp_Properties_ProvisioningState_STATUS_Canceled,
+ ContainerApp_Properties_ProvisioningState_STATUS_Deleting,
+ ContainerApp_Properties_ProvisioningState_STATUS_Failed,
+ ContainerApp_Properties_ProvisioningState_STATUS_InProgress,
+ ContainerApp_Properties_ProvisioningState_STATUS_Succeeded))
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp_Properties_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp_Properties_STATUS(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(Configuration_STATUSGenerator())
+ gens["Template"] = gen.PtrOf(Template_STATUSGenerator())
+}
+
+func Test_ContainerApp_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 ContainerApp_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp_STATUS, ContainerApp_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp_STATUS runs a test to see if a specific instance of ContainerApp_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp_STATUS(subject ContainerApp_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp_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 ContainerApp_STATUS instances for property testing - lazily instantiated by
+// ContainerApp_STATUSGenerator()
+var containerApp_STATUSGenerator gopter.Gen
+
+// ContainerApp_STATUSGenerator returns a generator of ContainerApp_STATUS instances for property testing.
+// We first initialize containerApp_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 ContainerApp_STATUSGenerator() gopter.Gen {
+ if containerApp_STATUSGenerator != nil {
+ return containerApp_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_STATUS(generators)
+ containerApp_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApp_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerApp_STATUS(generators)
+ containerApp_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApp_STATUS{}), generators)
+
+ return containerApp_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerApp_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerApp_STATUS(gens map[string]gopter.Gen) {
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["ManagedBy"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp_STATUS(gens map[string]gopter.Gen) {
+ gens["ExtendedLocation"] = gen.PtrOf(ExtendedLocation_STATUSGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentity_STATUSGenerator())
+ gens["Properties"] = gen.PtrOf(ContainerApp_Properties_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+}
+
+func Test_ContainerResources_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 ContainerResources_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerResources_STATUS, ContainerResources_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerResources_STATUS runs a test to see if a specific instance of ContainerResources_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerResources_STATUS(subject ContainerResources_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerResources_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 ContainerResources_STATUS instances for property testing - lazily instantiated by
+// ContainerResources_STATUSGenerator()
+var containerResources_STATUSGenerator gopter.Gen
+
+// ContainerResources_STATUSGenerator returns a generator of ContainerResources_STATUS instances for property testing.
+func ContainerResources_STATUSGenerator() gopter.Gen {
+ if containerResources_STATUSGenerator != nil {
+ return containerResources_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerResources_STATUS(generators)
+ containerResources_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerResources_STATUS{}), generators)
+
+ return containerResources_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerResources_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerResources_STATUS(gens map[string]gopter.Gen) {
+ gens["Cpu"] = gen.PtrOf(gen.Float64())
+ gens["EphemeralStorage"] = gen.PtrOf(gen.AlphaString())
+ gens["Memory"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Container_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 Container_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainer_STATUS, Container_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainer_STATUS runs a test to see if a specific instance of Container_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainer_STATUS(subject Container_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Container_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 Container_STATUS instances for property testing - lazily instantiated by Container_STATUSGenerator()
+var container_STATUSGenerator gopter.Gen
+
+// Container_STATUSGenerator returns a generator of Container_STATUS instances for property testing.
+// We first initialize container_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 Container_STATUSGenerator() gopter.Gen {
+ if container_STATUSGenerator != nil {
+ return container_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer_STATUS(generators)
+ container_STATUSGenerator = gen.Struct(reflect.TypeOf(Container_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainer_STATUS(generators)
+ container_STATUSGenerator = gen.Struct(reflect.TypeOf(Container_STATUS{}), generators)
+
+ return container_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainer_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainer_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVar_STATUSGenerator())
+ gens["Probes"] = gen.SliceOf(ContainerAppProbe_STATUSGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResources_STATUSGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMount_STATUSGenerator())
+}
+
+func Test_CorsPolicy_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 CorsPolicy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCorsPolicy_STATUS, CorsPolicy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCorsPolicy_STATUS runs a test to see if a specific instance of CorsPolicy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCorsPolicy_STATUS(subject CorsPolicy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CorsPolicy_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 CorsPolicy_STATUS instances for property testing - lazily instantiated by CorsPolicy_STATUSGenerator()
+var corsPolicy_STATUSGenerator gopter.Gen
+
+// CorsPolicy_STATUSGenerator returns a generator of CorsPolicy_STATUS instances for property testing.
+func CorsPolicy_STATUSGenerator() gopter.Gen {
+ if corsPolicy_STATUSGenerator != nil {
+ return corsPolicy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCorsPolicy_STATUS(generators)
+ corsPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(CorsPolicy_STATUS{}), generators)
+
+ return corsPolicy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCorsPolicy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCorsPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowCredentials"] = gen.PtrOf(gen.Bool())
+ gens["AllowedHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedMethods"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedOrigins"] = gen.SliceOf(gen.AlphaString())
+ gens["ExposeHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["MaxAge"] = gen.PtrOf(gen.Int())
+}
+
+func Test_CustomDomain_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 CustomDomain_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomain_STATUS, CustomDomain_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomain_STATUS runs a test to see if a specific instance of CustomDomain_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomain_STATUS(subject CustomDomain_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomain_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 CustomDomain_STATUS instances for property testing - lazily instantiated by
+// CustomDomain_STATUSGenerator()
+var customDomain_STATUSGenerator gopter.Gen
+
+// CustomDomain_STATUSGenerator returns a generator of CustomDomain_STATUS instances for property testing.
+func CustomDomain_STATUSGenerator() gopter.Gen {
+ if customDomain_STATUSGenerator != nil {
+ return customDomain_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomain_STATUS(generators)
+ customDomain_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomDomain_STATUS{}), generators)
+
+ return customDomain_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomain_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomain_STATUS(gens map[string]gopter.Gen) {
+ gens["BindingType"] = gen.PtrOf(gen.OneConstOf(CustomDomain_BindingType_STATUS_Disabled, CustomDomain_BindingType_STATUS_SniEnabled))
+ gens["CertificateId"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomScaleRule_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 CustomScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomScaleRule_STATUS, CustomScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomScaleRule_STATUS runs a test to see if a specific instance of CustomScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomScaleRule_STATUS(subject CustomScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomScaleRule_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 CustomScaleRule_STATUS instances for property testing - lazily instantiated by
+// CustomScaleRule_STATUSGenerator()
+var customScaleRule_STATUSGenerator gopter.Gen
+
+// CustomScaleRule_STATUSGenerator returns a generator of CustomScaleRule_STATUS instances for property testing.
+// We first initialize customScaleRule_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 CustomScaleRule_STATUSGenerator() gopter.Gen {
+ if customScaleRule_STATUSGenerator != nil {
+ return customScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ customScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ customScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule_STATUS{}), generators)
+
+ return customScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_Dapr_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 Dapr_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDapr_STATUS, Dapr_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDapr_STATUS runs a test to see if a specific instance of Dapr_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDapr_STATUS(subject Dapr_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Dapr_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 Dapr_STATUS instances for property testing - lazily instantiated by Dapr_STATUSGenerator()
+var dapr_STATUSGenerator gopter.Gen
+
+// Dapr_STATUSGenerator returns a generator of Dapr_STATUS instances for property testing.
+func Dapr_STATUSGenerator() gopter.Gen {
+ if dapr_STATUSGenerator != nil {
+ return dapr_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDapr_STATUS(generators)
+ dapr_STATUSGenerator = gen.Struct(reflect.TypeOf(Dapr_STATUS{}), generators)
+
+ return dapr_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDapr_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDapr_STATUS(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppPort"] = gen.PtrOf(gen.Int())
+ gens["AppProtocol"] = gen.PtrOf(gen.OneConstOf(Dapr_AppProtocol_STATUS_Grpc, Dapr_AppProtocol_STATUS_Http))
+ gens["EnableApiLogging"] = gen.PtrOf(gen.Bool())
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["HttpMaxRequestSize"] = gen.PtrOf(gen.Int())
+ gens["HttpReadBufferSize"] = gen.PtrOf(gen.Int())
+ gens["LogLevel"] = gen.PtrOf(gen.OneConstOf(
+ Dapr_LogLevel_STATUS_Debug,
+ Dapr_LogLevel_STATUS_Error,
+ Dapr_LogLevel_STATUS_Info,
+ Dapr_LogLevel_STATUS_Warn))
+}
+
+func Test_EnvironmentVar_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 EnvironmentVar_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEnvironmentVar_STATUS, EnvironmentVar_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEnvironmentVar_STATUS runs a test to see if a specific instance of EnvironmentVar_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForEnvironmentVar_STATUS(subject EnvironmentVar_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EnvironmentVar_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 EnvironmentVar_STATUS instances for property testing - lazily instantiated by
+// EnvironmentVar_STATUSGenerator()
+var environmentVar_STATUSGenerator gopter.Gen
+
+// EnvironmentVar_STATUSGenerator returns a generator of EnvironmentVar_STATUS instances for property testing.
+func EnvironmentVar_STATUSGenerator() gopter.Gen {
+ if environmentVar_STATUSGenerator != nil {
+ return environmentVar_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS(generators)
+ environmentVar_STATUSGenerator = gen.Struct(reflect.TypeOf(EnvironmentVar_STATUS{}), generators)
+
+ return environmentVar_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ExtendedLocation_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 ExtendedLocation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForExtendedLocation_STATUS, ExtendedLocation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForExtendedLocation_STATUS runs a test to see if a specific instance of ExtendedLocation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForExtendedLocation_STATUS(subject ExtendedLocation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ExtendedLocation_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 ExtendedLocation_STATUS instances for property testing - lazily instantiated by
+// ExtendedLocation_STATUSGenerator()
+var extendedLocation_STATUSGenerator gopter.Gen
+
+// ExtendedLocation_STATUSGenerator returns a generator of ExtendedLocation_STATUS instances for property testing.
+func ExtendedLocation_STATUSGenerator() gopter.Gen {
+ if extendedLocation_STATUSGenerator != nil {
+ return extendedLocation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForExtendedLocation_STATUS(generators)
+ extendedLocation_STATUSGenerator = gen.Struct(reflect.TypeOf(ExtendedLocation_STATUS{}), generators)
+
+ return extendedLocation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForExtendedLocation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForExtendedLocation_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(ExtendedLocationType_STATUS_CustomLocation))
+}
+
+func Test_HttpScaleRule_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 HttpScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpScaleRule_STATUS, HttpScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpScaleRule_STATUS runs a test to see if a specific instance of HttpScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpScaleRule_STATUS(subject HttpScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpScaleRule_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 HttpScaleRule_STATUS instances for property testing - lazily instantiated by
+// HttpScaleRule_STATUSGenerator()
+var httpScaleRule_STATUSGenerator gopter.Gen
+
+// HttpScaleRule_STATUSGenerator returns a generator of HttpScaleRule_STATUS instances for property testing.
+// We first initialize httpScaleRule_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 HttpScaleRule_STATUSGenerator() gopter.Gen {
+ if httpScaleRule_STATUSGenerator != nil {
+ return httpScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ httpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ httpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule_STATUS{}), generators)
+
+ return httpScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_IngressPortMapping_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 IngressPortMapping_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngressPortMapping_STATUS, IngressPortMapping_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngressPortMapping_STATUS runs a test to see if a specific instance of IngressPortMapping_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngressPortMapping_STATUS(subject IngressPortMapping_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IngressPortMapping_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 IngressPortMapping_STATUS instances for property testing - lazily instantiated by
+// IngressPortMapping_STATUSGenerator()
+var ingressPortMapping_STATUSGenerator gopter.Gen
+
+// IngressPortMapping_STATUSGenerator returns a generator of IngressPortMapping_STATUS instances for property testing.
+func IngressPortMapping_STATUSGenerator() gopter.Gen {
+ if ingressPortMapping_STATUSGenerator != nil {
+ return ingressPortMapping_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS(generators)
+ ingressPortMapping_STATUSGenerator = gen.Struct(reflect.TypeOf(IngressPortMapping_STATUS{}), generators)
+
+ return ingressPortMapping_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS(gens map[string]gopter.Gen) {
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+}
+
+func Test_Ingress_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 Ingress_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_STATUS, Ingress_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_STATUS runs a test to see if a specific instance of Ingress_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_STATUS(subject Ingress_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_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 Ingress_STATUS instances for property testing - lazily instantiated by Ingress_STATUSGenerator()
+var ingress_STATUSGenerator gopter.Gen
+
+// Ingress_STATUSGenerator returns a generator of Ingress_STATUS instances for property testing.
+// We first initialize ingress_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 Ingress_STATUSGenerator() gopter.Gen {
+ if ingress_STATUSGenerator != nil {
+ return ingress_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_STATUS(generators)
+ ingress_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_STATUS(generators)
+ AddRelatedPropertyGeneratorsForIngress_STATUS(generators)
+ ingress_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_STATUS{}), generators)
+
+ return ingress_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowInsecure"] = gen.PtrOf(gen.Bool())
+ gens["ClientCertificateMode"] = gen.PtrOf(gen.OneConstOf(Ingress_ClientCertificateMode_STATUS_Accept, Ingress_ClientCertificateMode_STATUS_Ignore, Ingress_ClientCertificateMode_STATUS_Require))
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["Fqdn"] = gen.PtrOf(gen.AlphaString())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+ gens["Transport"] = gen.PtrOf(gen.OneConstOf(
+ Ingress_Transport_STATUS_Auto,
+ Ingress_Transport_STATUS_Http,
+ Ingress_Transport_STATUS_Http2,
+ Ingress_Transport_STATUS_Tcp))
+}
+
+// AddRelatedPropertyGeneratorsForIngress_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIngress_STATUS(gens map[string]gopter.Gen) {
+ gens["AdditionalPortMappings"] = gen.SliceOf(IngressPortMapping_STATUSGenerator())
+ gens["CorsPolicy"] = gen.PtrOf(CorsPolicy_STATUSGenerator())
+ gens["CustomDomains"] = gen.SliceOf(CustomDomain_STATUSGenerator())
+ gens["IpSecurityRestrictions"] = gen.SliceOf(IpSecurityRestrictionRule_STATUSGenerator())
+ gens["StickySessions"] = gen.PtrOf(Ingress_StickySessions_STATUSGenerator())
+ gens["Traffic"] = gen.SliceOf(TrafficWeight_STATUSGenerator())
+}
+
+func Test_Ingress_StickySessions_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 Ingress_StickySessions_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_StickySessions_STATUS, Ingress_StickySessions_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_StickySessions_STATUS runs a test to see if a specific instance of Ingress_StickySessions_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_StickySessions_STATUS(subject Ingress_StickySessions_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_StickySessions_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 Ingress_StickySessions_STATUS instances for property testing - lazily instantiated by
+// Ingress_StickySessions_STATUSGenerator()
+var ingress_StickySessions_STATUSGenerator gopter.Gen
+
+// Ingress_StickySessions_STATUSGenerator returns a generator of Ingress_StickySessions_STATUS instances for property testing.
+func Ingress_StickySessions_STATUSGenerator() gopter.Gen {
+ if ingress_StickySessions_STATUSGenerator != nil {
+ return ingress_StickySessions_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS(generators)
+ ingress_StickySessions_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_StickySessions_STATUS{}), generators)
+
+ return ingress_StickySessions_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS(gens map[string]gopter.Gen) {
+ gens["Affinity"] = gen.PtrOf(gen.OneConstOf(Ingress_StickySessions_Affinity_STATUS_None, Ingress_StickySessions_Affinity_STATUS_Sticky))
+}
+
+func Test_IpSecurityRestrictionRule_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 IpSecurityRestrictionRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS, IpSecurityRestrictionRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS runs a test to see if a specific instance of IpSecurityRestrictionRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS(subject IpSecurityRestrictionRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IpSecurityRestrictionRule_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 IpSecurityRestrictionRule_STATUS instances for property testing - lazily instantiated by
+// IpSecurityRestrictionRule_STATUSGenerator()
+var ipSecurityRestrictionRule_STATUSGenerator gopter.Gen
+
+// IpSecurityRestrictionRule_STATUSGenerator returns a generator of IpSecurityRestrictionRule_STATUS instances for property testing.
+func IpSecurityRestrictionRule_STATUSGenerator() gopter.Gen {
+ if ipSecurityRestrictionRule_STATUSGenerator != nil {
+ return ipSecurityRestrictionRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS(generators)
+ ipSecurityRestrictionRule_STATUSGenerator = gen.Struct(reflect.TypeOf(IpSecurityRestrictionRule_STATUS{}), generators)
+
+ return ipSecurityRestrictionRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Action"] = gen.PtrOf(gen.OneConstOf(IpSecurityRestrictionRule_Action_STATUS_Allow, IpSecurityRestrictionRule_Action_STATUS_Deny))
+ gens["Description"] = gen.PtrOf(gen.AlphaString())
+ gens["IpAddressRange"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ManagedServiceIdentity_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 ManagedServiceIdentity_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedServiceIdentity_STATUS, ManagedServiceIdentity_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedServiceIdentity_STATUS runs a test to see if a specific instance of ManagedServiceIdentity_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedServiceIdentity_STATUS(subject ManagedServiceIdentity_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedServiceIdentity_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 ManagedServiceIdentity_STATUS instances for property testing - lazily instantiated by
+// ManagedServiceIdentity_STATUSGenerator()
+var managedServiceIdentity_STATUSGenerator gopter.Gen
+
+// ManagedServiceIdentity_STATUSGenerator returns a generator of ManagedServiceIdentity_STATUS instances for property testing.
+// We first initialize managedServiceIdentity_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 ManagedServiceIdentity_STATUSGenerator() gopter.Gen {
+ if managedServiceIdentity_STATUSGenerator != nil {
+ return managedServiceIdentity_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ managedServiceIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ managedServiceIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity_STATUS{}), generators)
+
+ return managedServiceIdentity_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["PrincipalId"] = gen.PtrOf(gen.AlphaString())
+ gens["TenantId"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(
+ ManagedServiceIdentityType_STATUS_None,
+ ManagedServiceIdentityType_STATUS_SystemAssigned,
+ ManagedServiceIdentityType_STATUS_SystemAssignedUserAssigned,
+ ManagedServiceIdentityType_STATUS_UserAssigned))
+}
+
+// AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["UserAssignedIdentities"] = gen.MapOf(
+ gen.AlphaString(),
+ UserAssignedIdentity_STATUSGenerator())
+}
+
+func Test_QueueScaleRule_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 QueueScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForQueueScaleRule_STATUS, QueueScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForQueueScaleRule_STATUS runs a test to see if a specific instance of QueueScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForQueueScaleRule_STATUS(subject QueueScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual QueueScaleRule_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 QueueScaleRule_STATUS instances for property testing - lazily instantiated by
+// QueueScaleRule_STATUSGenerator()
+var queueScaleRule_STATUSGenerator gopter.Gen
+
+// QueueScaleRule_STATUSGenerator returns a generator of QueueScaleRule_STATUS instances for property testing.
+// We first initialize queueScaleRule_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 QueueScaleRule_STATUSGenerator() gopter.Gen {
+ if queueScaleRule_STATUSGenerator != nil {
+ return queueScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ queueScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ queueScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule_STATUS{}), generators)
+
+ return queueScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["QueueLength"] = gen.PtrOf(gen.Int())
+ gens["QueueName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_RegistryCredentials_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 RegistryCredentials_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForRegistryCredentials_STATUS, RegistryCredentials_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForRegistryCredentials_STATUS runs a test to see if a specific instance of RegistryCredentials_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForRegistryCredentials_STATUS(subject RegistryCredentials_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual RegistryCredentials_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 RegistryCredentials_STATUS instances for property testing - lazily instantiated by
+// RegistryCredentials_STATUSGenerator()
+var registryCredentials_STATUSGenerator gopter.Gen
+
+// RegistryCredentials_STATUSGenerator returns a generator of RegistryCredentials_STATUS instances for property testing.
+func RegistryCredentials_STATUSGenerator() gopter.Gen {
+ if registryCredentials_STATUSGenerator != nil {
+ return registryCredentials_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS(generators)
+ registryCredentials_STATUSGenerator = gen.Struct(reflect.TypeOf(RegistryCredentials_STATUS{}), generators)
+
+ return registryCredentials_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(gen.AlphaString())
+ gens["PasswordSecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Server"] = gen.PtrOf(gen.AlphaString())
+ gens["Username"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ScaleRuleAuth_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 ScaleRuleAuth_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRuleAuth_STATUS, ScaleRuleAuth_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRuleAuth_STATUS runs a test to see if a specific instance of ScaleRuleAuth_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRuleAuth_STATUS(subject ScaleRuleAuth_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRuleAuth_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 ScaleRuleAuth_STATUS instances for property testing - lazily instantiated by
+// ScaleRuleAuth_STATUSGenerator()
+var scaleRuleAuth_STATUSGenerator gopter.Gen
+
+// ScaleRuleAuth_STATUSGenerator returns a generator of ScaleRuleAuth_STATUS instances for property testing.
+func ScaleRuleAuth_STATUSGenerator() gopter.Gen {
+ if scaleRuleAuth_STATUSGenerator != nil {
+ return scaleRuleAuth_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS(generators)
+ scaleRuleAuth_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRuleAuth_STATUS{}), generators)
+
+ return scaleRuleAuth_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS(gens map[string]gopter.Gen) {
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["TriggerParameter"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ScaleRule_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 ScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRule_STATUS, ScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRule_STATUS runs a test to see if a specific instance of ScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRule_STATUS(subject ScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRule_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 ScaleRule_STATUS instances for property testing - lazily instantiated by ScaleRule_STATUSGenerator()
+var scaleRule_STATUSGenerator gopter.Gen
+
+// ScaleRule_STATUSGenerator returns a generator of ScaleRule_STATUS instances for property testing.
+// We first initialize scaleRule_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 ScaleRule_STATUSGenerator() gopter.Gen {
+ if scaleRule_STATUSGenerator != nil {
+ return scaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule_STATUS(generators)
+ scaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForScaleRule_STATUS(generators)
+ scaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRule_STATUS{}), generators)
+
+ return scaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["AzureQueue"] = gen.PtrOf(QueueScaleRule_STATUSGenerator())
+ gens["Custom"] = gen.PtrOf(CustomScaleRule_STATUSGenerator())
+ gens["Http"] = gen.PtrOf(HttpScaleRule_STATUSGenerator())
+ gens["Tcp"] = gen.PtrOf(TcpScaleRule_STATUSGenerator())
+}
+
+func Test_Scale_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 Scale_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScale_STATUS, Scale_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScale_STATUS runs a test to see if a specific instance of Scale_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScale_STATUS(subject Scale_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Scale_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 Scale_STATUS instances for property testing - lazily instantiated by Scale_STATUSGenerator()
+var scale_STATUSGenerator gopter.Gen
+
+// Scale_STATUSGenerator returns a generator of Scale_STATUS instances for property testing.
+// We first initialize scale_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 Scale_STATUSGenerator() gopter.Gen {
+ if scale_STATUSGenerator != nil {
+ return scale_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale_STATUS(generators)
+ scale_STATUSGenerator = gen.Struct(reflect.TypeOf(Scale_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale_STATUS(generators)
+ AddRelatedPropertyGeneratorsForScale_STATUS(generators)
+ scale_STATUSGenerator = gen.Struct(reflect.TypeOf(Scale_STATUS{}), generators)
+
+ return scale_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScale_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScale_STATUS(gens map[string]gopter.Gen) {
+ gens["MaxReplicas"] = gen.PtrOf(gen.Int())
+ gens["MinReplicas"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForScale_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScale_STATUS(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(ScaleRule_STATUSGenerator())
+}
+
+func Test_SecretVolumeItem_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 SecretVolumeItem_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecretVolumeItem_STATUS, SecretVolumeItem_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecretVolumeItem_STATUS runs a test to see if a specific instance of SecretVolumeItem_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecretVolumeItem_STATUS(subject SecretVolumeItem_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual SecretVolumeItem_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 SecretVolumeItem_STATUS instances for property testing - lazily instantiated by
+// SecretVolumeItem_STATUSGenerator()
+var secretVolumeItem_STATUSGenerator gopter.Gen
+
+// SecretVolumeItem_STATUSGenerator returns a generator of SecretVolumeItem_STATUS instances for property testing.
+func SecretVolumeItem_STATUSGenerator() gopter.Gen {
+ if secretVolumeItem_STATUSGenerator != nil {
+ return secretVolumeItem_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS(generators)
+ secretVolumeItem_STATUSGenerator = gen.Struct(reflect.TypeOf(SecretVolumeItem_STATUS{}), generators)
+
+ return secretVolumeItem_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS(gens map[string]gopter.Gen) {
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Secret_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 Secret_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecret_STATUS, Secret_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecret_STATUS runs a test to see if a specific instance of Secret_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecret_STATUS(subject Secret_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Secret_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 Secret_STATUS instances for property testing - lazily instantiated by Secret_STATUSGenerator()
+var secret_STATUSGenerator gopter.Gen
+
+// Secret_STATUSGenerator returns a generator of Secret_STATUS instances for property testing.
+func Secret_STATUSGenerator() gopter.Gen {
+ if secret_STATUSGenerator != nil {
+ return secret_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecret_STATUS(generators)
+ secret_STATUSGenerator = gen.Struct(reflect.TypeOf(Secret_STATUS{}), generators)
+
+ return secret_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecret_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecret_STATUS(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(gen.AlphaString())
+ gens["KeyVaultUrl"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ServiceBind_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 ServiceBind_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForServiceBind_STATUS, ServiceBind_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForServiceBind_STATUS runs a test to see if a specific instance of ServiceBind_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForServiceBind_STATUS(subject ServiceBind_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ServiceBind_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 ServiceBind_STATUS instances for property testing - lazily instantiated by ServiceBind_STATUSGenerator()
+var serviceBind_STATUSGenerator gopter.Gen
+
+// ServiceBind_STATUSGenerator returns a generator of ServiceBind_STATUS instances for property testing.
+func ServiceBind_STATUSGenerator() gopter.Gen {
+ if serviceBind_STATUSGenerator != nil {
+ return serviceBind_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForServiceBind_STATUS(generators)
+ serviceBind_STATUSGenerator = gen.Struct(reflect.TypeOf(ServiceBind_STATUS{}), generators)
+
+ return serviceBind_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForServiceBind_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForServiceBind_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["ServiceId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Service_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MinSuccessfulTests = 80
+ parameters.MaxSize = 3
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip of Service_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForService_STATUS, Service_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForService_STATUS runs a test to see if a specific instance of Service_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForService_STATUS(subject Service_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Service_STATUS
+ err = json.Unmarshal(bin, &actual)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Check for outcome
+ match := cmp.Equal(subject, actual, cmpopts.EquateEmpty())
+ if !match {
+ actualFmt := pretty.Sprint(actual)
+ subjectFmt := pretty.Sprint(subject)
+ result := diff.Diff(subjectFmt, actualFmt)
+ return result
+ }
+
+ return ""
+}
+
+// Generator of Service_STATUS instances for property testing - lazily instantiated by Service_STATUSGenerator()
+var service_STATUSGenerator gopter.Gen
+
+// Service_STATUSGenerator returns a generator of Service_STATUS instances for property testing.
+func Service_STATUSGenerator() gopter.Gen {
+ if service_STATUSGenerator != nil {
+ return service_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForService_STATUS(generators)
+ service_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_STATUS{}), generators)
+
+ return service_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForService_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForService_STATUS(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_TcpScaleRule_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 TcpScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTcpScaleRule_STATUS, TcpScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTcpScaleRule_STATUS runs a test to see if a specific instance of TcpScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTcpScaleRule_STATUS(subject TcpScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TcpScaleRule_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 TcpScaleRule_STATUS instances for property testing - lazily instantiated by
+// TcpScaleRule_STATUSGenerator()
+var tcpScaleRule_STATUSGenerator gopter.Gen
+
+// TcpScaleRule_STATUSGenerator returns a generator of TcpScaleRule_STATUS instances for property testing.
+// We first initialize tcpScaleRule_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 TcpScaleRule_STATUSGenerator() gopter.Gen {
+ if tcpScaleRule_STATUSGenerator != nil {
+ return tcpScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ tcpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ tcpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule_STATUS{}), generators)
+
+ return tcpScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_Template_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 Template_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTemplate_STATUS, Template_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTemplate_STATUS runs a test to see if a specific instance of Template_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTemplate_STATUS(subject Template_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Template_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 Template_STATUS instances for property testing - lazily instantiated by Template_STATUSGenerator()
+var template_STATUSGenerator gopter.Gen
+
+// Template_STATUSGenerator returns a generator of Template_STATUS instances for property testing.
+// We first initialize template_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 Template_STATUSGenerator() gopter.Gen {
+ if template_STATUSGenerator != nil {
+ return template_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate_STATUS(generators)
+ template_STATUSGenerator = gen.Struct(reflect.TypeOf(Template_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTemplate_STATUS(generators)
+ template_STATUSGenerator = gen.Struct(reflect.TypeOf(Template_STATUS{}), generators)
+
+ return template_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTemplate_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["RevisionSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForTemplate_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(Container_STATUSGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainer_STATUSGenerator())
+ gens["Scale"] = gen.PtrOf(Scale_STATUSGenerator())
+ gens["ServiceBinds"] = gen.SliceOf(ServiceBind_STATUSGenerator())
+ gens["Volumes"] = gen.SliceOf(Volume_STATUSGenerator())
+}
+
+func Test_TrafficWeight_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 TrafficWeight_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTrafficWeight_STATUS, TrafficWeight_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTrafficWeight_STATUS runs a test to see if a specific instance of TrafficWeight_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTrafficWeight_STATUS(subject TrafficWeight_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TrafficWeight_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 TrafficWeight_STATUS instances for property testing - lazily instantiated by
+// TrafficWeight_STATUSGenerator()
+var trafficWeight_STATUSGenerator gopter.Gen
+
+// TrafficWeight_STATUSGenerator returns a generator of TrafficWeight_STATUS instances for property testing.
+func TrafficWeight_STATUSGenerator() gopter.Gen {
+ if trafficWeight_STATUSGenerator != nil {
+ return trafficWeight_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTrafficWeight_STATUS(generators)
+ trafficWeight_STATUSGenerator = gen.Struct(reflect.TypeOf(TrafficWeight_STATUS{}), generators)
+
+ return trafficWeight_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTrafficWeight_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTrafficWeight_STATUS(gens map[string]gopter.Gen) {
+ gens["Label"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevision"] = gen.PtrOf(gen.Bool())
+ gens["RevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["Weight"] = gen.PtrOf(gen.Int())
+}
+
+func Test_UserAssignedIdentity_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 UserAssignedIdentity_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForUserAssignedIdentity_STATUS, UserAssignedIdentity_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForUserAssignedIdentity_STATUS runs a test to see if a specific instance of UserAssignedIdentity_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForUserAssignedIdentity_STATUS(subject UserAssignedIdentity_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual UserAssignedIdentity_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 UserAssignedIdentity_STATUS instances for property testing - lazily instantiated by
+// UserAssignedIdentity_STATUSGenerator()
+var userAssignedIdentity_STATUSGenerator gopter.Gen
+
+// UserAssignedIdentity_STATUSGenerator returns a generator of UserAssignedIdentity_STATUS instances for property testing.
+func UserAssignedIdentity_STATUSGenerator() gopter.Gen {
+ if userAssignedIdentity_STATUSGenerator != nil {
+ return userAssignedIdentity_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS(generators)
+ userAssignedIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity_STATUS{}), generators)
+
+ return userAssignedIdentity_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["PrincipalId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_VolumeMount_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 VolumeMount_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolumeMount_STATUS, VolumeMount_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolumeMount_STATUS runs a test to see if a specific instance of VolumeMount_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolumeMount_STATUS(subject VolumeMount_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VolumeMount_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 VolumeMount_STATUS instances for property testing - lazily instantiated by VolumeMount_STATUSGenerator()
+var volumeMount_STATUSGenerator gopter.Gen
+
+// VolumeMount_STATUSGenerator returns a generator of VolumeMount_STATUS instances for property testing.
+func VolumeMount_STATUSGenerator() gopter.Gen {
+ if volumeMount_STATUSGenerator != nil {
+ return volumeMount_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolumeMount_STATUS(generators)
+ volumeMount_STATUSGenerator = gen.Struct(reflect.TypeOf(VolumeMount_STATUS{}), generators)
+
+ return volumeMount_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolumeMount_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolumeMount_STATUS(gens map[string]gopter.Gen) {
+ gens["MountPath"] = gen.PtrOf(gen.AlphaString())
+ gens["SubPath"] = gen.PtrOf(gen.AlphaString())
+ gens["VolumeName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Volume_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 Volume_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolume_STATUS, Volume_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolume_STATUS runs a test to see if a specific instance of Volume_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolume_STATUS(subject Volume_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Volume_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 Volume_STATUS instances for property testing - lazily instantiated by Volume_STATUSGenerator()
+var volume_STATUSGenerator gopter.Gen
+
+// Volume_STATUSGenerator returns a generator of Volume_STATUS instances for property testing.
+// We first initialize volume_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 Volume_STATUSGenerator() gopter.Gen {
+ if volume_STATUSGenerator != nil {
+ return volume_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume_STATUS(generators)
+ volume_STATUSGenerator = gen.Struct(reflect.TypeOf(Volume_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume_STATUS(generators)
+ AddRelatedPropertyGeneratorsForVolume_STATUS(generators)
+ volume_STATUSGenerator = gen.Struct(reflect.TypeOf(Volume_STATUS{}), generators)
+
+ return volume_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolume_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolume_STATUS(gens map[string]gopter.Gen) {
+ gens["MountOptions"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageName"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageType"] = gen.PtrOf(gen.OneConstOf(Volume_StorageType_STATUS_AzureFile, Volume_StorageType_STATUS_EmptyDir, Volume_StorageType_STATUS_Secret))
+}
+
+// AddRelatedPropertyGeneratorsForVolume_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForVolume_STATUS(gens map[string]gopter.Gen) {
+ gens["Secrets"] = gen.SliceOf(SecretVolumeItem_STATUSGenerator())
+}
diff --git a/v2/api/app/v1api20240301/arm/job_spec_types_gen.go b/v2/api/app/v1api20240301/arm/job_spec_types_gen.go
new file mode 100644
index 00000000000..61611b15447
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/job_spec_types_gen.go
@@ -0,0 +1,161 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+import (
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime"
+ "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
+)
+
+type Job_Spec struct {
+ // Identity: Managed identities needed by a container app job to interact with other Azure services to not maintain any
+ // secrets or credentials in code.
+ Identity *ManagedServiceIdentity `json:"identity,omitempty"`
+
+ // Location: The geo-location where the resource lives
+ Location *string `json:"location,omitempty"`
+ Name string `json:"name,omitempty"`
+
+ // Properties: Container Apps Job resource specific properties.
+ Properties *Job_Properties_Spec `json:"properties,omitempty"`
+
+ // Tags: Resource tags.
+ Tags map[string]string `json:"tags,omitempty"`
+}
+
+var _ genruntime.ARMResourceSpec = &Job_Spec{}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (job Job_Spec) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetName returns the Name of the resource
+func (job *Job_Spec) GetName() string {
+ return job.Name
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/jobs"
+func (job *Job_Spec) GetType() string {
+ return "Microsoft.App/jobs"
+}
+
+type Job_Properties_Spec struct {
+ // Configuration: Container Apps Job configuration properties.
+ Configuration *JobConfiguration `json:"configuration,omitempty"`
+ EnvironmentId *string `json:"environmentId,omitempty"`
+
+ // Template: Container Apps job definition.
+ Template *JobTemplate `json:"template,omitempty"`
+
+ // WorkloadProfileName: Workload profile name to pin for container apps job execution.
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+// Non versioned Container Apps Job configuration properties
+type JobConfiguration struct {
+ // EventTriggerConfig: Trigger configuration of an event driven job.
+ EventTriggerConfig *JobConfiguration_EventTriggerConfig `json:"eventTriggerConfig,omitempty"`
+
+ // ManualTriggerConfig: Manual trigger configuration for a single execution job. Properties replicaCompletionCount and
+ // parallelism would be set to 1 by default
+ ManualTriggerConfig *JobConfiguration_ManualTriggerConfig `json:"manualTriggerConfig,omitempty"`
+
+ // Registries: Collection of private container registry credentials used by a Container apps job
+ Registries []RegistryCredentials `json:"registries,omitempty"`
+
+ // ReplicaRetryLimit: Maximum number of retries before failing the job.
+ ReplicaRetryLimit *int `json:"replicaRetryLimit,omitempty"`
+
+ // ReplicaTimeout: Maximum number of seconds a replica is allowed to run.
+ ReplicaTimeout *int `json:"replicaTimeout,omitempty"`
+
+ // ScheduleTriggerConfig: Cron formatted repeating trigger schedule ("* * * * *") for cronjobs. Properties completions and
+ // parallelism would be set to 1 by default
+ ScheduleTriggerConfig *JobConfiguration_ScheduleTriggerConfig `json:"scheduleTriggerConfig,omitempty"`
+
+ // Secrets: Collection of secrets used by a Container Apps Job
+ Secrets []Secret `json:"secrets,omitempty"`
+
+ // TriggerType: Trigger type of the job
+ TriggerType *JobConfiguration_TriggerType `json:"triggerType,omitempty"`
+}
+
+// Container Apps Job versioned application definition. Defines the desired state of an immutable revision. Any changes to
+// this section Will result in a new revision being created
+type JobTemplate struct {
+ // Containers: List of container definitions for the Container App.
+ Containers []Container `json:"containers,omitempty"`
+
+ // InitContainers: List of specialized containers that run before app containers.
+ InitContainers []BaseContainer `json:"initContainers,omitempty"`
+
+ // Volumes: List of volume definitions for the Container App.
+ Volumes []Volume `json:"volumes,omitempty"`
+}
+
+type JobConfiguration_EventTriggerConfig struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+
+ // Scale: Scaling configurations for event driven jobs.
+ Scale *JobScale `json:"scale,omitempty"`
+}
+
+type JobConfiguration_ManualTriggerConfig struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+type JobConfiguration_ScheduleTriggerConfig struct {
+ // CronExpression: Cron formatted repeating schedule ("* * * * *") of a Cron Job.
+ CronExpression *string `json:"cronExpression,omitempty"`
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+// +kubebuilder:validation:Enum={"Event","Manual","Schedule"}
+type JobConfiguration_TriggerType string
+
+const (
+ JobConfiguration_TriggerType_Event = JobConfiguration_TriggerType("Event")
+ JobConfiguration_TriggerType_Manual = JobConfiguration_TriggerType("Manual")
+ JobConfiguration_TriggerType_Schedule = JobConfiguration_TriggerType("Schedule")
+)
+
+// Mapping from string to JobConfiguration_TriggerType
+var jobConfiguration_TriggerType_Values = map[string]JobConfiguration_TriggerType{
+ "event": JobConfiguration_TriggerType_Event,
+ "manual": JobConfiguration_TriggerType_Manual,
+ "schedule": JobConfiguration_TriggerType_Schedule,
+}
+
+// Scaling configurations for event driven jobs.
+type JobScale struct {
+ // MaxExecutions: Maximum number of job executions that are created for a trigger, default 100.
+ MaxExecutions *int `json:"maxExecutions,omitempty"`
+
+ // MinExecutions: Minimum number of job executions that are created for a trigger, default 0
+ MinExecutions *int `json:"minExecutions,omitempty"`
+ PollingInterval *int `json:"pollingInterval,omitempty"`
+
+ // Rules: Scaling rules.
+ Rules []JobScaleRule `json:"rules,omitempty"`
+}
+
+// Scaling rule.
+type JobScaleRule struct {
+ // Auth: Authentication secrets for the scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe the scale rule.
+ Metadata map[string]v1.JSON `json:"metadata,omitempty"`
+
+ // Name: Scale Rule Name
+ Name *string `json:"name,omitempty"`
+
+ // Type: Type of the scale rule
+ // eg: azure-servicebus, redis etc.
+ Type *string `json:"type,omitempty"`
+}
diff --git a/v2/api/app/v1api20240301/arm/job_spec_types_gen_test.go b/v2/api/app/v1api20240301/arm/job_spec_types_gen_test.go
new file mode 100644
index 00000000000..f1e4a709f01
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/job_spec_types_gen_test.go
@@ -0,0 +1,668 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+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_JobConfiguration_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 JobConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration, JobConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration runs a test to see if a specific instance of JobConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration(subject JobConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration
+ 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 JobConfiguration instances for property testing - lazily instantiated by JobConfigurationGenerator()
+var jobConfigurationGenerator gopter.Gen
+
+// JobConfigurationGenerator returns a generator of JobConfiguration instances for property testing.
+// We first initialize jobConfigurationGenerator 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 JobConfigurationGenerator() gopter.Gen {
+ if jobConfigurationGenerator != nil {
+ return jobConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration(generators)
+ jobConfigurationGenerator = gen.Struct(reflect.TypeOf(JobConfiguration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration(generators)
+ jobConfigurationGenerator = gen.Struct(reflect.TypeOf(JobConfiguration{}), generators)
+
+ return jobConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration(gens map[string]gopter.Gen) {
+ gens["ReplicaRetryLimit"] = gen.PtrOf(gen.Int())
+ gens["ReplicaTimeout"] = gen.PtrOf(gen.Int())
+ gens["TriggerType"] = gen.PtrOf(gen.OneConstOf(JobConfiguration_TriggerType_Event, JobConfiguration_TriggerType_Manual, JobConfiguration_TriggerType_Schedule))
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration(gens map[string]gopter.Gen) {
+ gens["EventTriggerConfig"] = gen.PtrOf(JobConfiguration_EventTriggerConfigGenerator())
+ gens["ManualTriggerConfig"] = gen.PtrOf(JobConfiguration_ManualTriggerConfigGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentialsGenerator())
+ gens["ScheduleTriggerConfig"] = gen.PtrOf(JobConfiguration_ScheduleTriggerConfigGenerator())
+ gens["Secrets"] = gen.SliceOf(SecretGenerator())
+}
+
+func Test_JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_EventTriggerConfig, JobConfiguration_EventTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_EventTriggerConfig runs a test to see if a specific instance of JobConfiguration_EventTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_EventTriggerConfig(subject JobConfiguration_EventTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_EventTriggerConfig
+ 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 JobConfiguration_EventTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_EventTriggerConfigGenerator()
+var jobConfiguration_EventTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_EventTriggerConfigGenerator returns a generator of JobConfiguration_EventTriggerConfig instances for property testing.
+// We first initialize jobConfiguration_EventTriggerConfigGenerator 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 JobConfiguration_EventTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_EventTriggerConfigGenerator != nil {
+ return jobConfiguration_EventTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ jobConfiguration_EventTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ jobConfiguration_EventTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig{}), generators)
+
+ return jobConfiguration_EventTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Scale"] = gen.PtrOf(JobScaleGenerator())
+}
+
+func Test_JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig, JobConfiguration_ManualTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig runs a test to see if a specific instance of JobConfiguration_ManualTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig(subject JobConfiguration_ManualTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ManualTriggerConfig
+ 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 JobConfiguration_ManualTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_ManualTriggerConfigGenerator()
+var jobConfiguration_ManualTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_ManualTriggerConfigGenerator returns a generator of JobConfiguration_ManualTriggerConfig instances for property testing.
+func JobConfiguration_ManualTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_ManualTriggerConfigGenerator != nil {
+ return jobConfiguration_ManualTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig(generators)
+ jobConfiguration_ManualTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ManualTriggerConfig{}), generators)
+
+ return jobConfiguration_ManualTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig, JobConfiguration_ScheduleTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig runs a test to see if a specific instance of JobConfiguration_ScheduleTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig(subject JobConfiguration_ScheduleTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ScheduleTriggerConfig
+ 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 JobConfiguration_ScheduleTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_ScheduleTriggerConfigGenerator()
+var jobConfiguration_ScheduleTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_ScheduleTriggerConfigGenerator returns a generator of JobConfiguration_ScheduleTriggerConfig instances for property testing.
+func JobConfiguration_ScheduleTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_ScheduleTriggerConfigGenerator != nil {
+ return jobConfiguration_ScheduleTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig(generators)
+ jobConfiguration_ScheduleTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ScheduleTriggerConfig{}), generators)
+
+ return jobConfiguration_ScheduleTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig(gens map[string]gopter.Gen) {
+ gens["CronExpression"] = gen.PtrOf(gen.AlphaString())
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobScale_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 JobScale via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScale, JobScaleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScale runs a test to see if a specific instance of JobScale round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScale(subject JobScale) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScale
+ 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 JobScale instances for property testing - lazily instantiated by JobScaleGenerator()
+var jobScaleGenerator gopter.Gen
+
+// JobScaleGenerator returns a generator of JobScale instances for property testing.
+// We first initialize jobScaleGenerator 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 JobScaleGenerator() gopter.Gen {
+ if jobScaleGenerator != nil {
+ return jobScaleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale(generators)
+ jobScaleGenerator = gen.Struct(reflect.TypeOf(JobScale{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale(generators)
+ AddRelatedPropertyGeneratorsForJobScale(generators)
+ jobScaleGenerator = gen.Struct(reflect.TypeOf(JobScale{}), generators)
+
+ return jobScaleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScale is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScale(gens map[string]gopter.Gen) {
+ gens["MaxExecutions"] = gen.PtrOf(gen.Int())
+ gens["MinExecutions"] = gen.PtrOf(gen.Int())
+ gens["PollingInterval"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobScale is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScale(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(JobScaleRuleGenerator())
+}
+
+func Test_JobScaleRule_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 JobScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScaleRule, JobScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScaleRule runs a test to see if a specific instance of JobScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScaleRule(subject JobScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScaleRule
+ 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 JobScaleRule instances for property testing - lazily instantiated by JobScaleRuleGenerator()
+var jobScaleRuleGenerator gopter.Gen
+
+// JobScaleRuleGenerator returns a generator of JobScaleRule instances for property testing.
+// We first initialize jobScaleRuleGenerator 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 JobScaleRuleGenerator() gopter.Gen {
+ if jobScaleRuleGenerator != nil {
+ return jobScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule(generators)
+ jobScaleRuleGenerator = gen.Struct(reflect.TypeOf(JobScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule(generators)
+ AddRelatedPropertyGeneratorsForJobScaleRule(generators)
+ jobScaleRuleGenerator = gen.Struct(reflect.TypeOf(JobScaleRule{}), generators)
+
+ return jobScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScaleRule(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJobScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_JobTemplate_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 JobTemplate via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobTemplate, JobTemplateGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobTemplate runs a test to see if a specific instance of JobTemplate round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobTemplate(subject JobTemplate) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobTemplate
+ 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 JobTemplate instances for property testing - lazily instantiated by JobTemplateGenerator()
+var jobTemplateGenerator gopter.Gen
+
+// JobTemplateGenerator returns a generator of JobTemplate instances for property testing.
+func JobTemplateGenerator() gopter.Gen {
+ if jobTemplateGenerator != nil {
+ return jobTemplateGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForJobTemplate(generators)
+ jobTemplateGenerator = gen.Struct(reflect.TypeOf(JobTemplate{}), generators)
+
+ return jobTemplateGenerator
+}
+
+// AddRelatedPropertyGeneratorsForJobTemplate is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobTemplate(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(ContainerGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainerGenerator())
+ gens["Volumes"] = gen.SliceOf(VolumeGenerator())
+}
+
+func Test_Job_Properties_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 Job_Properties_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob_Properties_Spec, Job_Properties_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob_Properties_Spec runs a test to see if a specific instance of Job_Properties_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob_Properties_Spec(subject Job_Properties_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job_Properties_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 Job_Properties_Spec instances for property testing - lazily instantiated by
+// Job_Properties_SpecGenerator()
+var job_Properties_SpecGenerator gopter.Gen
+
+// Job_Properties_SpecGenerator returns a generator of Job_Properties_Spec instances for property testing.
+// We first initialize job_Properties_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 Job_Properties_SpecGenerator() gopter.Gen {
+ if job_Properties_SpecGenerator != nil {
+ return job_Properties_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Properties_Spec(generators)
+ job_Properties_SpecGenerator = gen.Struct(reflect.TypeOf(Job_Properties_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Properties_Spec(generators)
+ AddRelatedPropertyGeneratorsForJob_Properties_Spec(generators)
+ job_Properties_SpecGenerator = gen.Struct(reflect.TypeOf(Job_Properties_Spec{}), generators)
+
+ return job_Properties_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJob_Properties_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJob_Properties_Spec(gens map[string]gopter.Gen) {
+ gens["EnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJob_Properties_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob_Properties_Spec(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(JobConfigurationGenerator())
+ gens["Template"] = gen.PtrOf(JobTemplateGenerator())
+}
+
+func Test_Job_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 Job_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob_Spec, Job_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob_Spec runs a test to see if a specific instance of Job_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob_Spec(subject Job_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job_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 Job_Spec instances for property testing - lazily instantiated by Job_SpecGenerator()
+var job_SpecGenerator gopter.Gen
+
+// Job_SpecGenerator returns a generator of Job_Spec instances for property testing.
+// We first initialize job_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 Job_SpecGenerator() gopter.Gen {
+ if job_SpecGenerator != nil {
+ return job_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Spec(generators)
+ job_SpecGenerator = gen.Struct(reflect.TypeOf(Job_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Spec(generators)
+ AddRelatedPropertyGeneratorsForJob_Spec(generators)
+ job_SpecGenerator = gen.Struct(reflect.TypeOf(Job_Spec{}), generators)
+
+ return job_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJob_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJob_Spec(gens map[string]gopter.Gen) {
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.AlphaString()
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJob_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob_Spec(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentityGenerator())
+ gens["Properties"] = gen.PtrOf(Job_Properties_SpecGenerator())
+}
diff --git a/v2/api/app/v1api20240301/arm/job_status_types_gen.go b/v2/api/app/v1api20240301/arm/job_status_types_gen.go
new file mode 100644
index 00000000000..af3435aea0d
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/job_status_types_gen.go
@@ -0,0 +1,183 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+import "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
+
+// Container App Job
+type Job_STATUS struct {
+ // Id: Fully qualified resource ID for the resource. Ex -
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ Id *string `json:"id,omitempty"`
+
+ // Identity: Managed identities needed by a container app job to interact with other Azure services to not maintain any
+ // secrets or credentials in code.
+ Identity *ManagedServiceIdentity_STATUS `json:"identity,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: Container Apps Job resource specific properties.
+ Properties *Job_Properties_STATUS `json:"properties,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"`
+}
+
+type Job_Properties_STATUS struct {
+ // Configuration: Container Apps Job configuration properties.
+ Configuration *JobConfiguration_STATUS `json:"configuration,omitempty"`
+
+ // EnvironmentId: Resource ID of environment.
+ EnvironmentId *string `json:"environmentId,omitempty"`
+
+ // EventStreamEndpoint: The endpoint of the eventstream of the container apps job.
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+
+ // OutboundIpAddresses: Outbound IP Addresses of a container apps job.
+ OutboundIpAddresses []string `json:"outboundIpAddresses,omitempty"`
+
+ // ProvisioningState: Provisioning state of the Container Apps Job.
+ ProvisioningState *Job_Properties_ProvisioningState_STATUS `json:"provisioningState,omitempty"`
+
+ // Template: Container Apps job definition.
+ Template *JobTemplate_STATUS `json:"template,omitempty"`
+
+ // WorkloadProfileName: Workload profile name to pin for container apps job execution.
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+type Job_Properties_ProvisioningState_STATUS string
+
+const (
+ Job_Properties_ProvisioningState_STATUS_Canceled = Job_Properties_ProvisioningState_STATUS("Canceled")
+ Job_Properties_ProvisioningState_STATUS_Deleting = Job_Properties_ProvisioningState_STATUS("Deleting")
+ Job_Properties_ProvisioningState_STATUS_Failed = Job_Properties_ProvisioningState_STATUS("Failed")
+ Job_Properties_ProvisioningState_STATUS_InProgress = Job_Properties_ProvisioningState_STATUS("InProgress")
+ Job_Properties_ProvisioningState_STATUS_Succeeded = Job_Properties_ProvisioningState_STATUS("Succeeded")
+)
+
+// Mapping from string to Job_Properties_ProvisioningState_STATUS
+var job_Properties_ProvisioningState_STATUS_Values = map[string]Job_Properties_ProvisioningState_STATUS{
+ "canceled": Job_Properties_ProvisioningState_STATUS_Canceled,
+ "deleting": Job_Properties_ProvisioningState_STATUS_Deleting,
+ "failed": Job_Properties_ProvisioningState_STATUS_Failed,
+ "inprogress": Job_Properties_ProvisioningState_STATUS_InProgress,
+ "succeeded": Job_Properties_ProvisioningState_STATUS_Succeeded,
+}
+
+// Non versioned Container Apps Job configuration properties
+type JobConfiguration_STATUS struct {
+ // EventTriggerConfig: Trigger configuration of an event driven job.
+ EventTriggerConfig *JobConfiguration_EventTriggerConfig_STATUS `json:"eventTriggerConfig,omitempty"`
+
+ // ManualTriggerConfig: Manual trigger configuration for a single execution job. Properties replicaCompletionCount and
+ // parallelism would be set to 1 by default
+ ManualTriggerConfig *JobConfiguration_ManualTriggerConfig_STATUS `json:"manualTriggerConfig,omitempty"`
+
+ // Registries: Collection of private container registry credentials used by a Container apps job
+ Registries []RegistryCredentials_STATUS `json:"registries,omitempty"`
+
+ // ReplicaRetryLimit: Maximum number of retries before failing the job.
+ ReplicaRetryLimit *int `json:"replicaRetryLimit,omitempty"`
+
+ // ReplicaTimeout: Maximum number of seconds a replica is allowed to run.
+ ReplicaTimeout *int `json:"replicaTimeout,omitempty"`
+
+ // ScheduleTriggerConfig: Cron formatted repeating trigger schedule ("* * * * *") for cronjobs. Properties completions and
+ // parallelism would be set to 1 by default
+ ScheduleTriggerConfig *JobConfiguration_ScheduleTriggerConfig_STATUS `json:"scheduleTriggerConfig,omitempty"`
+
+ // Secrets: Collection of secrets used by a Container Apps Job
+ Secrets []Secret_STATUS `json:"secrets,omitempty"`
+
+ // TriggerType: Trigger type of the job
+ TriggerType *JobConfiguration_TriggerType_STATUS `json:"triggerType,omitempty"`
+}
+
+// Container Apps Job versioned application definition. Defines the desired state of an immutable revision. Any changes to
+// this section Will result in a new revision being created
+type JobTemplate_STATUS struct {
+ // Containers: List of container definitions for the Container App.
+ Containers []Container_STATUS `json:"containers,omitempty"`
+
+ // InitContainers: List of specialized containers that run before app containers.
+ InitContainers []BaseContainer_STATUS `json:"initContainers,omitempty"`
+
+ // Volumes: List of volume definitions for the Container App.
+ Volumes []Volume_STATUS `json:"volumes,omitempty"`
+}
+
+type JobConfiguration_EventTriggerConfig_STATUS struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+
+ // Scale: Scaling configurations for event driven jobs.
+ Scale *JobScale_STATUS `json:"scale,omitempty"`
+}
+
+type JobConfiguration_ManualTriggerConfig_STATUS struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+type JobConfiguration_ScheduleTriggerConfig_STATUS struct {
+ // CronExpression: Cron formatted repeating schedule ("* * * * *") of a Cron Job.
+ CronExpression *string `json:"cronExpression,omitempty"`
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+type JobConfiguration_TriggerType_STATUS string
+
+const (
+ JobConfiguration_TriggerType_STATUS_Event = JobConfiguration_TriggerType_STATUS("Event")
+ JobConfiguration_TriggerType_STATUS_Manual = JobConfiguration_TriggerType_STATUS("Manual")
+ JobConfiguration_TriggerType_STATUS_Schedule = JobConfiguration_TriggerType_STATUS("Schedule")
+)
+
+// Mapping from string to JobConfiguration_TriggerType_STATUS
+var jobConfiguration_TriggerType_STATUS_Values = map[string]JobConfiguration_TriggerType_STATUS{
+ "event": JobConfiguration_TriggerType_STATUS_Event,
+ "manual": JobConfiguration_TriggerType_STATUS_Manual,
+ "schedule": JobConfiguration_TriggerType_STATUS_Schedule,
+}
+
+// Scaling configurations for event driven jobs.
+type JobScale_STATUS struct {
+ // MaxExecutions: Maximum number of job executions that are created for a trigger, default 100.
+ MaxExecutions *int `json:"maxExecutions,omitempty"`
+
+ // MinExecutions: Minimum number of job executions that are created for a trigger, default 0
+ MinExecutions *int `json:"minExecutions,omitempty"`
+ PollingInterval *int `json:"pollingInterval,omitempty"`
+
+ // Rules: Scaling rules.
+ Rules []JobScaleRule_STATUS `json:"rules,omitempty"`
+}
+
+// Scaling rule.
+type JobScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe the scale rule.
+ Metadata map[string]v1.JSON `json:"metadata,omitempty"`
+
+ // Name: Scale Rule Name
+ Name *string `json:"name,omitempty"`
+
+ // Type: Type of the scale rule
+ // eg: azure-servicebus, redis etc.
+ Type *string `json:"type,omitempty"`
+}
diff --git a/v2/api/app/v1api20240301/arm/job_status_types_gen_test.go b/v2/api/app/v1api20240301/arm/job_status_types_gen_test.go
new file mode 100644
index 00000000000..1a7ff1a6d58
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/job_status_types_gen_test.go
@@ -0,0 +1,681 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+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_JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS, JobConfiguration_EventTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_EventTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS(subject JobConfiguration_EventTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_EventTriggerConfig_STATUSGenerator()
+var jobConfiguration_EventTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_EventTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_EventTriggerConfig_STATUS instances for property testing.
+// We first initialize jobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_EventTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_EventTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ jobConfiguration_EventTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ jobConfiguration_EventTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_EventTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Scale"] = gen.PtrOf(JobScale_STATUSGenerator())
+}
+
+func Test_JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS, JobConfiguration_ManualTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_ManualTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS(subject JobConfiguration_ManualTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_ManualTriggerConfig_STATUSGenerator()
+var jobConfiguration_ManualTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_ManualTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_ManualTriggerConfig_STATUS instances for property testing.
+func JobConfiguration_ManualTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_ManualTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_ManualTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS(generators)
+ jobConfiguration_ManualTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ManualTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_ManualTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobConfiguration_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 JobConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_STATUS, JobConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_STATUS runs a test to see if a specific instance of JobConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_STATUS(subject JobConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_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 JobConfiguration_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_STATUSGenerator()
+var jobConfiguration_STATUSGenerator gopter.Gen
+
+// JobConfiguration_STATUSGenerator returns a generator of JobConfiguration_STATUS instances for property testing.
+// We first initialize jobConfiguration_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 JobConfiguration_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_STATUSGenerator != nil {
+ return jobConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ jobConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ jobConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_STATUS{}), generators)
+
+ return jobConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["ReplicaRetryLimit"] = gen.PtrOf(gen.Int())
+ gens["ReplicaTimeout"] = gen.PtrOf(gen.Int())
+ gens["TriggerType"] = gen.PtrOf(gen.OneConstOf(JobConfiguration_TriggerType_STATUS_Event, JobConfiguration_TriggerType_STATUS_Manual, JobConfiguration_TriggerType_STATUS_Schedule))
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["EventTriggerConfig"] = gen.PtrOf(JobConfiguration_EventTriggerConfig_STATUSGenerator())
+ gens["ManualTriggerConfig"] = gen.PtrOf(JobConfiguration_ManualTriggerConfig_STATUSGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentials_STATUSGenerator())
+ gens["ScheduleTriggerConfig"] = gen.PtrOf(JobConfiguration_ScheduleTriggerConfig_STATUSGenerator())
+ gens["Secrets"] = gen.SliceOf(Secret_STATUSGenerator())
+}
+
+func Test_JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS, JobConfiguration_ScheduleTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_ScheduleTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS(subject JobConfiguration_ScheduleTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_ScheduleTriggerConfig_STATUSGenerator()
+var jobConfiguration_ScheduleTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_ScheduleTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_ScheduleTriggerConfig_STATUS instances for property testing.
+func JobConfiguration_ScheduleTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_ScheduleTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_ScheduleTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS(generators)
+ jobConfiguration_ScheduleTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ScheduleTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_ScheduleTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["CronExpression"] = gen.PtrOf(gen.AlphaString())
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobScaleRule_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 JobScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScaleRule_STATUS, JobScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScaleRule_STATUS runs a test to see if a specific instance of JobScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScaleRule_STATUS(subject JobScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScaleRule_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 JobScaleRule_STATUS instances for property testing - lazily instantiated by
+// JobScaleRule_STATUSGenerator()
+var jobScaleRule_STATUSGenerator gopter.Gen
+
+// JobScaleRule_STATUSGenerator returns a generator of JobScaleRule_STATUS instances for property testing.
+// We first initialize jobScaleRule_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 JobScaleRule_STATUSGenerator() gopter.Gen {
+ if jobScaleRule_STATUSGenerator != nil {
+ return jobScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ jobScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ jobScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScaleRule_STATUS{}), generators)
+
+ return jobScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJobScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_JobScale_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 JobScale_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScale_STATUS, JobScale_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScale_STATUS runs a test to see if a specific instance of JobScale_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScale_STATUS(subject JobScale_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScale_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 JobScale_STATUS instances for property testing - lazily instantiated by JobScale_STATUSGenerator()
+var jobScale_STATUSGenerator gopter.Gen
+
+// JobScale_STATUSGenerator returns a generator of JobScale_STATUS instances for property testing.
+// We first initialize jobScale_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 JobScale_STATUSGenerator() gopter.Gen {
+ if jobScale_STATUSGenerator != nil {
+ return jobScale_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale_STATUS(generators)
+ jobScale_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScale_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobScale_STATUS(generators)
+ jobScale_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScale_STATUS{}), generators)
+
+ return jobScale_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScale_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScale_STATUS(gens map[string]gopter.Gen) {
+ gens["MaxExecutions"] = gen.PtrOf(gen.Int())
+ gens["MinExecutions"] = gen.PtrOf(gen.Int())
+ gens["PollingInterval"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobScale_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScale_STATUS(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(JobScaleRule_STATUSGenerator())
+}
+
+func Test_JobTemplate_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 JobTemplate_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobTemplate_STATUS, JobTemplate_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobTemplate_STATUS runs a test to see if a specific instance of JobTemplate_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobTemplate_STATUS(subject JobTemplate_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobTemplate_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 JobTemplate_STATUS instances for property testing - lazily instantiated by JobTemplate_STATUSGenerator()
+var jobTemplate_STATUSGenerator gopter.Gen
+
+// JobTemplate_STATUSGenerator returns a generator of JobTemplate_STATUS instances for property testing.
+func JobTemplate_STATUSGenerator() gopter.Gen {
+ if jobTemplate_STATUSGenerator != nil {
+ return jobTemplate_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForJobTemplate_STATUS(generators)
+ jobTemplate_STATUSGenerator = gen.Struct(reflect.TypeOf(JobTemplate_STATUS{}), generators)
+
+ return jobTemplate_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForJobTemplate_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(Container_STATUSGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainer_STATUSGenerator())
+ gens["Volumes"] = gen.SliceOf(Volume_STATUSGenerator())
+}
+
+func Test_Job_Properties_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 Job_Properties_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob_Properties_STATUS, Job_Properties_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob_Properties_STATUS runs a test to see if a specific instance of Job_Properties_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob_Properties_STATUS(subject Job_Properties_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job_Properties_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 Job_Properties_STATUS instances for property testing - lazily instantiated by
+// Job_Properties_STATUSGenerator()
+var job_Properties_STATUSGenerator gopter.Gen
+
+// Job_Properties_STATUSGenerator returns a generator of Job_Properties_STATUS instances for property testing.
+// We first initialize job_Properties_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 Job_Properties_STATUSGenerator() gopter.Gen {
+ if job_Properties_STATUSGenerator != nil {
+ return job_Properties_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Properties_STATUS(generators)
+ job_Properties_STATUSGenerator = gen.Struct(reflect.TypeOf(Job_Properties_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Properties_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJob_Properties_STATUS(generators)
+ job_Properties_STATUSGenerator = gen.Struct(reflect.TypeOf(Job_Properties_STATUS{}), generators)
+
+ return job_Properties_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJob_Properties_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJob_Properties_STATUS(gens map[string]gopter.Gen) {
+ gens["EnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["OutboundIpAddresses"] = gen.SliceOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.OneConstOf(
+ Job_Properties_ProvisioningState_STATUS_Canceled,
+ Job_Properties_ProvisioningState_STATUS_Deleting,
+ Job_Properties_ProvisioningState_STATUS_Failed,
+ Job_Properties_ProvisioningState_STATUS_InProgress,
+ Job_Properties_ProvisioningState_STATUS_Succeeded))
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJob_Properties_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob_Properties_STATUS(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(JobConfiguration_STATUSGenerator())
+ gens["Template"] = gen.PtrOf(JobTemplate_STATUSGenerator())
+}
+
+func Test_Job_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 Job_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob_STATUS, Job_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob_STATUS runs a test to see if a specific instance of Job_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob_STATUS(subject Job_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job_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 Job_STATUS instances for property testing - lazily instantiated by Job_STATUSGenerator()
+var job_STATUSGenerator gopter.Gen
+
+// Job_STATUSGenerator returns a generator of Job_STATUS instances for property testing.
+// We first initialize job_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 Job_STATUSGenerator() gopter.Gen {
+ if job_STATUSGenerator != nil {
+ return job_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_STATUS(generators)
+ job_STATUSGenerator = gen.Struct(reflect.TypeOf(Job_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJob_STATUS(generators)
+ job_STATUSGenerator = gen.Struct(reflect.TypeOf(Job_STATUS{}), generators)
+
+ return job_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJob_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJob_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["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJob_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob_STATUS(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentity_STATUSGenerator())
+ gens["Properties"] = gen.PtrOf(Job_Properties_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+}
diff --git a/v2/api/app/v1api20240301/arm/managed_environment_spec_types_gen.go b/v2/api/app/v1api20240301/arm/managed_environment_spec_types_gen.go
new file mode 100644
index 00000000000..cd385b20691
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/managed_environment_spec_types_gen.go
@@ -0,0 +1,161 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+import "github.com/Azure/azure-service-operator/v2/pkg/genruntime"
+
+type ManagedEnvironment_Spec struct {
+ // Kind: Kind of the Environment.
+ Kind *string `json:"kind,omitempty"`
+
+ // Location: The geo-location where the resource lives
+ Location *string `json:"location,omitempty"`
+ Name string `json:"name,omitempty"`
+
+ // Properties: Managed environment resource specific properties
+ Properties *ManagedEnvironment_Properties_Spec `json:"properties,omitempty"`
+
+ // Tags: Resource tags.
+ Tags map[string]string `json:"tags,omitempty"`
+}
+
+var _ genruntime.ARMResourceSpec = &ManagedEnvironment_Spec{}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (environment ManagedEnvironment_Spec) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetName returns the Name of the resource
+func (environment *ManagedEnvironment_Spec) GetName() string {
+ return environment.Name
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/managedEnvironments"
+func (environment *ManagedEnvironment_Spec) GetType() string {
+ return "Microsoft.App/managedEnvironments"
+}
+
+type ManagedEnvironment_Properties_Spec struct {
+ // AppLogsConfiguration: Cluster configuration which enables the log daemon to export app logs to configured destination.
+ AppLogsConfiguration *AppLogsConfiguration `json:"appLogsConfiguration,omitempty"`
+
+ // CustomDomainConfiguration: Custom domain configuration for the environment
+ CustomDomainConfiguration *CustomDomainConfiguration `json:"customDomainConfiguration,omitempty"`
+
+ // DaprAIConnectionString: Application Insights connection string used by Dapr to export Service to Service communication
+ // telemetry
+ DaprAIConnectionString *string `json:"daprAIConnectionString,omitempty"`
+
+ // DaprAIInstrumentationKey: Azure Monitor instrumentation key used by Dapr to export Service to Service communication
+ // telemetry
+ DaprAIInstrumentationKey *string `json:"daprAIInstrumentationKey,omitempty"`
+
+ // InfrastructureResourceGroup: Name of the platform-managed resource group created for the Managed Environment to host
+ // infrastructure resources. If a subnet ID is provided, this resource group will be created in the same subscription as
+ // the subnet.
+ InfrastructureResourceGroup *string `json:"infrastructureResourceGroup,omitempty"`
+
+ // PeerAuthentication: Peer authentication settings for the Managed Environment
+ PeerAuthentication *ManagedEnvironment_Properties_PeerAuthentication_Spec `json:"peerAuthentication,omitempty"`
+
+ // PeerTrafficConfiguration: Peer traffic settings for the Managed Environment
+ PeerTrafficConfiguration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec `json:"peerTrafficConfiguration,omitempty"`
+
+ // VnetConfiguration: Vnet configuration for the environment
+ VnetConfiguration *VnetConfiguration `json:"vnetConfiguration,omitempty"`
+
+ // WorkloadProfiles: Workload profiles configured for the Managed Environment.
+ WorkloadProfiles []WorkloadProfile `json:"workloadProfiles,omitempty"`
+
+ // ZoneRedundant: Whether or not this Managed Environment is zone-redundant.
+ ZoneRedundant *bool `json:"zoneRedundant,omitempty"`
+}
+
+// Configuration of application logs
+type AppLogsConfiguration struct {
+ // Destination: Logs destination, can be 'log-analytics', 'azure-monitor' or 'none'
+ Destination *string `json:"destination,omitempty"`
+
+ // LogAnalyticsConfiguration: Log Analytics configuration, must only be provided when destination is configured as
+ // 'log-analytics'
+ LogAnalyticsConfiguration *LogAnalyticsConfiguration `json:"logAnalyticsConfiguration,omitempty"`
+}
+
+// Configuration properties for apps environment custom domain
+type CustomDomainConfiguration struct {
+ // CertificatePassword: Certificate password
+ CertificatePassword *string `json:"certificatePassword,omitempty"`
+
+ // CertificateValue: PFX or PEM blob
+ CertificateValue *string `json:"certificateValue,omitempty"`
+
+ // DnsSuffix: Dns suffix for the environment domain
+ DnsSuffix *string `json:"dnsSuffix,omitempty"`
+}
+
+type ManagedEnvironment_Properties_PeerAuthentication_Spec struct {
+ // Mtls: Mutual TLS authentication settings for the Managed Environment
+ Mtls *Mtls `json:"mtls,omitempty"`
+}
+
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec struct {
+ // Encryption: Peer traffic encryption settings for the Managed Environment
+ Encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec `json:"encryption,omitempty"`
+}
+
+// Configuration properties for apps environment to join a Virtual Network
+type VnetConfiguration struct {
+ // DockerBridgeCidr: CIDR notation IP range assigned to the Docker bridge, network. Must not overlap with any other
+ // provided IP ranges.
+ DockerBridgeCidr *string `json:"dockerBridgeCidr,omitempty"`
+ InfrastructureSubnetId *string `json:"infrastructureSubnetId,omitempty"`
+
+ // Internal: Boolean indicating the environment only has an internal load balancer. These environments do not have a public
+ // static IP resource. They must provide infrastructureSubnetId if enabling this property
+ Internal *bool `json:"internal,omitempty"`
+
+ // PlatformReservedCidr: IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. Must
+ // not overlap with any other provided IP ranges.
+ PlatformReservedCidr *string `json:"platformReservedCidr,omitempty"`
+
+ // PlatformReservedDnsIP: An IP address from the IP range defined by platformReservedCidr that will be reserved for the
+ // internal DNS server.
+ PlatformReservedDnsIP *string `json:"platformReservedDnsIP,omitempty"`
+}
+
+// Workload profile to scope container app execution.
+type WorkloadProfile struct {
+ // MaximumCount: The maximum capacity.
+ MaximumCount *int `json:"maximumCount,omitempty"`
+
+ // MinimumCount: The minimum capacity.
+ MinimumCount *int `json:"minimumCount,omitempty"`
+
+ // Name: Workload profile type for the workloads to run on.
+ Name *string `json:"name,omitempty"`
+
+ // WorkloadProfileType: Workload profile type for the workloads to run on.
+ WorkloadProfileType *string `json:"workloadProfileType,omitempty"`
+}
+
+// Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'
+type LogAnalyticsConfiguration struct {
+ // CustomerId: Log analytics customer id
+ CustomerId *string `json:"customerId,omitempty"`
+
+ // SharedKey: Log analytics customer key
+ SharedKey *string `json:"sharedKey,omitempty"`
+}
+
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec struct {
+ // Enabled: Boolean indicating whether the peer traffic encryption is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+}
+
+// Configuration properties for mutual TLS authentication
+type Mtls struct {
+ // Enabled: Boolean indicating whether the mutual TLS authentication is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+}
diff --git a/v2/api/app/v1api20240301/arm/managed_environment_spec_types_gen_test.go b/v2/api/app/v1api20240301/arm/managed_environment_spec_types_gen_test.go
new file mode 100644
index 00000000000..aba63a9f93a
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/managed_environment_spec_types_gen_test.go
@@ -0,0 +1,751 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+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_AppLogsConfiguration_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 AppLogsConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppLogsConfiguration, AppLogsConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppLogsConfiguration runs a test to see if a specific instance of AppLogsConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppLogsConfiguration(subject AppLogsConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppLogsConfiguration
+ 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 AppLogsConfiguration instances for property testing - lazily instantiated by
+// AppLogsConfigurationGenerator()
+var appLogsConfigurationGenerator gopter.Gen
+
+// AppLogsConfigurationGenerator returns a generator of AppLogsConfiguration instances for property testing.
+// We first initialize appLogsConfigurationGenerator 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 AppLogsConfigurationGenerator() gopter.Gen {
+ if appLogsConfigurationGenerator != nil {
+ return appLogsConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration(generators)
+ appLogsConfigurationGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration(generators)
+ AddRelatedPropertyGeneratorsForAppLogsConfiguration(generators)
+ appLogsConfigurationGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration{}), generators)
+
+ return appLogsConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppLogsConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppLogsConfiguration(gens map[string]gopter.Gen) {
+ gens["Destination"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAppLogsConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAppLogsConfiguration(gens map[string]gopter.Gen) {
+ gens["LogAnalyticsConfiguration"] = gen.PtrOf(LogAnalyticsConfigurationGenerator())
+}
+
+func Test_CustomDomainConfiguration_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 CustomDomainConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomainConfiguration, CustomDomainConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomainConfiguration runs a test to see if a specific instance of CustomDomainConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomainConfiguration(subject CustomDomainConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomainConfiguration
+ 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 CustomDomainConfiguration instances for property testing - lazily instantiated by
+// CustomDomainConfigurationGenerator()
+var customDomainConfigurationGenerator gopter.Gen
+
+// CustomDomainConfigurationGenerator returns a generator of CustomDomainConfiguration instances for property testing.
+func CustomDomainConfigurationGenerator() gopter.Gen {
+ if customDomainConfigurationGenerator != nil {
+ return customDomainConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomainConfiguration(generators)
+ customDomainConfigurationGenerator = gen.Struct(reflect.TypeOf(CustomDomainConfiguration{}), generators)
+
+ return customDomainConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomainConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomainConfiguration(gens map[string]gopter.Gen) {
+ gens["CertificatePassword"] = gen.PtrOf(gen.AlphaString())
+ gens["CertificateValue"] = gen.PtrOf(gen.AlphaString())
+ gens["DnsSuffix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LogAnalyticsConfiguration_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 LogAnalyticsConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogAnalyticsConfiguration, LogAnalyticsConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogAnalyticsConfiguration runs a test to see if a specific instance of LogAnalyticsConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogAnalyticsConfiguration(subject LogAnalyticsConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LogAnalyticsConfiguration
+ 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 LogAnalyticsConfiguration instances for property testing - lazily instantiated by
+// LogAnalyticsConfigurationGenerator()
+var logAnalyticsConfigurationGenerator gopter.Gen
+
+// LogAnalyticsConfigurationGenerator returns a generator of LogAnalyticsConfiguration instances for property testing.
+func LogAnalyticsConfigurationGenerator() gopter.Gen {
+ if logAnalyticsConfigurationGenerator != nil {
+ return logAnalyticsConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration(generators)
+ logAnalyticsConfigurationGenerator = gen.Struct(reflect.TypeOf(LogAnalyticsConfiguration{}), generators)
+
+ return logAnalyticsConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration(gens map[string]gopter.Gen) {
+ gens["CustomerId"] = gen.PtrOf(gen.AlphaString())
+ gens["SharedKey"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec, ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerAuthentication_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec(subject ManagedEnvironment_Properties_PeerAuthentication_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_Spec instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator()
+var managedEnvironment_Properties_PeerAuthentication_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerAuthentication_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerAuthentication_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerAuthentication_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec(generators)
+ managedEnvironment_Properties_PeerAuthentication_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerAuthentication_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerAuthentication_SpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec(gens map[string]gopter.Gen) {
+ gens["Mtls"] = gen.PtrOf(MtlsGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec, ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec instances for property testing -
+// lazily instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec, ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(gens map[string]gopter.Gen) {
+ gens["Encryption"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_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 ManagedEnvironment_Properties_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_Spec, ManagedEnvironment_Properties_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_Spec(subject ManagedEnvironment_Properties_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_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 ManagedEnvironment_Properties_Spec instances for property testing - lazily instantiated by
+// ManagedEnvironment_Properties_SpecGenerator()
+var managedEnvironment_Properties_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_SpecGenerator returns a generator of ManagedEnvironment_Properties_Spec instances for property testing.
+// We first initialize managedEnvironment_Properties_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 ManagedEnvironment_Properties_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_SpecGenerator != nil {
+ return managedEnvironment_Properties_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_Spec(generators)
+ managedEnvironment_Properties_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_Spec(generators)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_Spec(generators)
+ managedEnvironment_Properties_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_Spec{}), generators)
+
+ return managedEnvironment_Properties_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_Spec(gens map[string]gopter.Gen) {
+ gens["DaprAIConnectionString"] = gen.PtrOf(gen.AlphaString())
+ gens["DaprAIInstrumentationKey"] = gen.PtrOf(gen.AlphaString())
+ gens["InfrastructureResourceGroup"] = gen.PtrOf(gen.AlphaString())
+ gens["ZoneRedundant"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_Spec(gens map[string]gopter.Gen) {
+ gens["AppLogsConfiguration"] = gen.PtrOf(AppLogsConfigurationGenerator())
+ gens["CustomDomainConfiguration"] = gen.PtrOf(CustomDomainConfigurationGenerator())
+ gens["PeerAuthentication"] = gen.PtrOf(ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator())
+ gens["PeerTrafficConfiguration"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator())
+ gens["VnetConfiguration"] = gen.PtrOf(VnetConfigurationGenerator())
+ gens["WorkloadProfiles"] = gen.SliceOf(WorkloadProfileGenerator())
+}
+
+func Test_ManagedEnvironment_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 ManagedEnvironment_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Spec, ManagedEnvironment_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Spec runs a test to see if a specific instance of ManagedEnvironment_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Spec(subject ManagedEnvironment_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_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 ManagedEnvironment_Spec instances for property testing - lazily instantiated by
+// ManagedEnvironment_SpecGenerator()
+var managedEnvironment_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_SpecGenerator returns a generator of ManagedEnvironment_Spec instances for property testing.
+// We first initialize managedEnvironment_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 ManagedEnvironment_SpecGenerator() gopter.Gen {
+ if managedEnvironment_SpecGenerator != nil {
+ return managedEnvironment_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ managedEnvironment_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ managedEnvironment_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Spec{}), generators)
+
+ return managedEnvironment_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(gens map[string]gopter.Gen) {
+ gens["Kind"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.AlphaString()
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Spec(gens map[string]gopter.Gen) {
+ gens["Properties"] = gen.PtrOf(ManagedEnvironment_Properties_SpecGenerator())
+}
+
+func Test_Mtls_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 Mtls via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForMtls, MtlsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForMtls runs a test to see if a specific instance of Mtls round trips to JSON and back losslessly
+func RunJSONSerializationTestForMtls(subject Mtls) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Mtls
+ 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 Mtls instances for property testing - lazily instantiated by MtlsGenerator()
+var mtlsGenerator gopter.Gen
+
+// MtlsGenerator returns a generator of Mtls instances for property testing.
+func MtlsGenerator() gopter.Gen {
+ if mtlsGenerator != nil {
+ return mtlsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForMtls(generators)
+ mtlsGenerator = gen.Struct(reflect.TypeOf(Mtls{}), generators)
+
+ return mtlsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForMtls is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForMtls(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_VnetConfiguration_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 VnetConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVnetConfiguration, VnetConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVnetConfiguration runs a test to see if a specific instance of VnetConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForVnetConfiguration(subject VnetConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VnetConfiguration
+ 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 VnetConfiguration instances for property testing - lazily instantiated by VnetConfigurationGenerator()
+var vnetConfigurationGenerator gopter.Gen
+
+// VnetConfigurationGenerator returns a generator of VnetConfiguration instances for property testing.
+func VnetConfigurationGenerator() gopter.Gen {
+ if vnetConfigurationGenerator != nil {
+ return vnetConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVnetConfiguration(generators)
+ vnetConfigurationGenerator = gen.Struct(reflect.TypeOf(VnetConfiguration{}), generators)
+
+ return vnetConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVnetConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVnetConfiguration(gens map[string]gopter.Gen) {
+ gens["DockerBridgeCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["InfrastructureSubnetId"] = gen.PtrOf(gen.AlphaString())
+ gens["Internal"] = gen.PtrOf(gen.Bool())
+ gens["PlatformReservedCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["PlatformReservedDnsIP"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_WorkloadProfile_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 WorkloadProfile via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForWorkloadProfile, WorkloadProfileGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForWorkloadProfile runs a test to see if a specific instance of WorkloadProfile round trips to JSON and back losslessly
+func RunJSONSerializationTestForWorkloadProfile(subject WorkloadProfile) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual WorkloadProfile
+ 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 WorkloadProfile instances for property testing - lazily instantiated by WorkloadProfileGenerator()
+var workloadProfileGenerator gopter.Gen
+
+// WorkloadProfileGenerator returns a generator of WorkloadProfile instances for property testing.
+func WorkloadProfileGenerator() gopter.Gen {
+ if workloadProfileGenerator != nil {
+ return workloadProfileGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForWorkloadProfile(generators)
+ workloadProfileGenerator = gen.Struct(reflect.TypeOf(WorkloadProfile{}), generators)
+
+ return workloadProfileGenerator
+}
+
+// AddIndependentPropertyGeneratorsForWorkloadProfile is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForWorkloadProfile(gens map[string]gopter.Gen) {
+ gens["MaximumCount"] = gen.PtrOf(gen.Int())
+ gens["MinimumCount"] = gen.PtrOf(gen.Int())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileType"] = gen.PtrOf(gen.AlphaString())
+}
diff --git a/v2/api/app/v1api20240301/arm/managed_environment_status_types_gen.go b/v2/api/app/v1api20240301/arm/managed_environment_status_types_gen.go
new file mode 100644
index 00000000000..1137beab433
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/managed_environment_status_types_gen.go
@@ -0,0 +1,215 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+// An environment for hosting container apps
+type ManagedEnvironment_STATUS struct {
+ // Id: Fully qualified resource ID for the resource. Ex -
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ Id *string `json:"id,omitempty"`
+
+ // Kind: Kind of the Environment.
+ Kind *string `json:"kind,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: Managed environment resource specific properties
+ Properties *ManagedEnvironment_Properties_STATUS `json:"properties,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"`
+}
+
+type ManagedEnvironment_Properties_STATUS struct {
+ // AppLogsConfiguration: Cluster configuration which enables the log daemon to export app logs to configured destination.
+ AppLogsConfiguration *AppLogsConfiguration_STATUS `json:"appLogsConfiguration,omitempty"`
+
+ // CustomDomainConfiguration: Custom domain configuration for the environment
+ CustomDomainConfiguration *CustomDomainConfiguration_STATUS `json:"customDomainConfiguration,omitempty"`
+
+ // DaprConfiguration: The configuration of Dapr component.
+ DaprConfiguration *DaprConfiguration_STATUS `json:"daprConfiguration,omitempty"`
+
+ // DefaultDomain: Default Domain Name for the cluster
+ DefaultDomain *string `json:"defaultDomain,omitempty"`
+
+ // DeploymentErrors: Any errors that occurred during deployment or deployment validation
+ DeploymentErrors *string `json:"deploymentErrors,omitempty"`
+
+ // EventStreamEndpoint: The endpoint of the eventstream of the Environment.
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+
+ // InfrastructureResourceGroup: Name of the platform-managed resource group created for the Managed Environment to host
+ // infrastructure resources. If a subnet ID is provided, this resource group will be created in the same subscription as
+ // the subnet.
+ InfrastructureResourceGroup *string `json:"infrastructureResourceGroup,omitempty"`
+
+ // KedaConfiguration: The configuration of Keda component.
+ KedaConfiguration *KedaConfiguration_STATUS `json:"kedaConfiguration,omitempty"`
+
+ // PeerAuthentication: Peer authentication settings for the Managed Environment
+ PeerAuthentication *ManagedEnvironment_Properties_PeerAuthentication_STATUS `json:"peerAuthentication,omitempty"`
+
+ // PeerTrafficConfiguration: Peer traffic settings for the Managed Environment
+ PeerTrafficConfiguration *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS `json:"peerTrafficConfiguration,omitempty"`
+
+ // ProvisioningState: Provisioning state of the Environment.
+ ProvisioningState *ManagedEnvironment_Properties_ProvisioningState_STATUS `json:"provisioningState,omitempty"`
+
+ // StaticIp: Static IP of the Environment
+ StaticIp *string `json:"staticIp,omitempty"`
+
+ // VnetConfiguration: Vnet configuration for the environment
+ VnetConfiguration *VnetConfiguration_STATUS `json:"vnetConfiguration,omitempty"`
+
+ // WorkloadProfiles: Workload profiles configured for the Managed Environment.
+ WorkloadProfiles []WorkloadProfile_STATUS `json:"workloadProfiles,omitempty"`
+
+ // ZoneRedundant: Whether or not this Managed Environment is zone-redundant.
+ ZoneRedundant *bool `json:"zoneRedundant,omitempty"`
+}
+
+// Configuration of application logs
+type AppLogsConfiguration_STATUS struct {
+ // Destination: Logs destination, can be 'log-analytics', 'azure-monitor' or 'none'
+ Destination *string `json:"destination,omitempty"`
+
+ // LogAnalyticsConfiguration: Log Analytics configuration, must only be provided when destination is configured as
+ // 'log-analytics'
+ LogAnalyticsConfiguration *LogAnalyticsConfiguration_STATUS `json:"logAnalyticsConfiguration,omitempty"`
+}
+
+// Configuration properties for apps environment custom domain
+type CustomDomainConfiguration_STATUS struct {
+ // CustomDomainVerificationId: Id used to verify domain name ownership
+ CustomDomainVerificationId *string `json:"customDomainVerificationId,omitempty"`
+
+ // DnsSuffix: Dns suffix for the environment domain
+ DnsSuffix *string `json:"dnsSuffix,omitempty"`
+
+ // ExpirationDate: Certificate expiration date.
+ ExpirationDate *string `json:"expirationDate,omitempty"`
+
+ // SubjectName: Subject name of the certificate.
+ SubjectName *string `json:"subjectName,omitempty"`
+
+ // Thumbprint: Certificate thumbprint.
+ Thumbprint *string `json:"thumbprint,omitempty"`
+}
+
+// Configuration properties Dapr component
+type DaprConfiguration_STATUS struct {
+ // Version: The version of Dapr
+ Version *string `json:"version,omitempty"`
+}
+
+// Configuration properties Keda component
+type KedaConfiguration_STATUS struct {
+ // Version: The version of Keda
+ Version *string `json:"version,omitempty"`
+}
+
+type ManagedEnvironment_Properties_PeerAuthentication_STATUS struct {
+ // Mtls: Mutual TLS authentication settings for the Managed Environment
+ Mtls *Mtls_STATUS `json:"mtls,omitempty"`
+}
+
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS struct {
+ // Encryption: Peer traffic encryption settings for the Managed Environment
+ Encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS `json:"encryption,omitempty"`
+}
+
+type ManagedEnvironment_Properties_ProvisioningState_STATUS string
+
+const (
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Canceled = ManagedEnvironment_Properties_ProvisioningState_STATUS("Canceled")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Failed = ManagedEnvironment_Properties_ProvisioningState_STATUS("Failed")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupComplete = ManagedEnvironment_Properties_ProvisioningState_STATUS("InfrastructureSetupComplete")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupInProgress = ManagedEnvironment_Properties_ProvisioningState_STATUS("InfrastructureSetupInProgress")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InitializationInProgress = ManagedEnvironment_Properties_ProvisioningState_STATUS("InitializationInProgress")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_ScheduledForDelete = ManagedEnvironment_Properties_ProvisioningState_STATUS("ScheduledForDelete")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Succeeded = ManagedEnvironment_Properties_ProvisioningState_STATUS("Succeeded")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeFailed = ManagedEnvironment_Properties_ProvisioningState_STATUS("UpgradeFailed")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeRequested = ManagedEnvironment_Properties_ProvisioningState_STATUS("UpgradeRequested")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Waiting = ManagedEnvironment_Properties_ProvisioningState_STATUS("Waiting")
+)
+
+// Mapping from string to ManagedEnvironment_Properties_ProvisioningState_STATUS
+var managedEnvironment_Properties_ProvisioningState_STATUS_Values = map[string]ManagedEnvironment_Properties_ProvisioningState_STATUS{
+ "canceled": ManagedEnvironment_Properties_ProvisioningState_STATUS_Canceled,
+ "failed": ManagedEnvironment_Properties_ProvisioningState_STATUS_Failed,
+ "infrastructuresetupcomplete": ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupComplete,
+ "infrastructuresetupinprogress": ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupInProgress,
+ "initializationinprogress": ManagedEnvironment_Properties_ProvisioningState_STATUS_InitializationInProgress,
+ "scheduledfordelete": ManagedEnvironment_Properties_ProvisioningState_STATUS_ScheduledForDelete,
+ "succeeded": ManagedEnvironment_Properties_ProvisioningState_STATUS_Succeeded,
+ "upgradefailed": ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeFailed,
+ "upgraderequested": ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeRequested,
+ "waiting": ManagedEnvironment_Properties_ProvisioningState_STATUS_Waiting,
+}
+
+// Configuration properties for apps environment to join a Virtual Network
+type VnetConfiguration_STATUS struct {
+ // DockerBridgeCidr: CIDR notation IP range assigned to the Docker bridge, network. Must not overlap with any other
+ // provided IP ranges.
+ DockerBridgeCidr *string `json:"dockerBridgeCidr,omitempty"`
+
+ // InfrastructureSubnetId: Resource ID of a subnet for infrastructure components. Must not overlap with any other provided
+ // IP ranges.
+ InfrastructureSubnetId *string `json:"infrastructureSubnetId,omitempty"`
+
+ // Internal: Boolean indicating the environment only has an internal load balancer. These environments do not have a public
+ // static IP resource. They must provide infrastructureSubnetId if enabling this property
+ Internal *bool `json:"internal,omitempty"`
+
+ // PlatformReservedCidr: IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. Must
+ // not overlap with any other provided IP ranges.
+ PlatformReservedCidr *string `json:"platformReservedCidr,omitempty"`
+
+ // PlatformReservedDnsIP: An IP address from the IP range defined by platformReservedCidr that will be reserved for the
+ // internal DNS server.
+ PlatformReservedDnsIP *string `json:"platformReservedDnsIP,omitempty"`
+}
+
+// Workload profile to scope container app execution.
+type WorkloadProfile_STATUS struct {
+ // MaximumCount: The maximum capacity.
+ MaximumCount *int `json:"maximumCount,omitempty"`
+
+ // MinimumCount: The minimum capacity.
+ MinimumCount *int `json:"minimumCount,omitempty"`
+
+ // Name: Workload profile type for the workloads to run on.
+ Name *string `json:"name,omitempty"`
+
+ // WorkloadProfileType: Workload profile type for the workloads to run on.
+ WorkloadProfileType *string `json:"workloadProfileType,omitempty"`
+}
+
+// Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'
+type LogAnalyticsConfiguration_STATUS struct {
+ // CustomerId: Log analytics customer id
+ CustomerId *string `json:"customerId,omitempty"`
+}
+
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS struct {
+ // Enabled: Boolean indicating whether the peer traffic encryption is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+}
+
+// Configuration properties for mutual TLS authentication
+type Mtls_STATUS struct {
+ // Enabled: Boolean indicating whether the mutual TLS authentication is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+}
diff --git a/v2/api/app/v1api20240301/arm/managed_environment_status_types_gen_test.go b/v2/api/app/v1api20240301/arm/managed_environment_status_types_gen_test.go
new file mode 100644
index 00000000000..73515811ade
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/managed_environment_status_types_gen_test.go
@@ -0,0 +1,894 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package arm
+
+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_AppLogsConfiguration_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 AppLogsConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppLogsConfiguration_STATUS, AppLogsConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppLogsConfiguration_STATUS runs a test to see if a specific instance of AppLogsConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppLogsConfiguration_STATUS(subject AppLogsConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppLogsConfiguration_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 AppLogsConfiguration_STATUS instances for property testing - lazily instantiated by
+// AppLogsConfiguration_STATUSGenerator()
+var appLogsConfiguration_STATUSGenerator gopter.Gen
+
+// AppLogsConfiguration_STATUSGenerator returns a generator of AppLogsConfiguration_STATUS instances for property testing.
+// We first initialize appLogsConfiguration_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 AppLogsConfiguration_STATUSGenerator() gopter.Gen {
+ if appLogsConfiguration_STATUSGenerator != nil {
+ return appLogsConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ appLogsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ appLogsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration_STATUS{}), generators)
+
+ return appLogsConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Destination"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["LogAnalyticsConfiguration"] = gen.PtrOf(LogAnalyticsConfiguration_STATUSGenerator())
+}
+
+func Test_CustomDomainConfiguration_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 CustomDomainConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomainConfiguration_STATUS, CustomDomainConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomainConfiguration_STATUS runs a test to see if a specific instance of CustomDomainConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomainConfiguration_STATUS(subject CustomDomainConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomainConfiguration_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 CustomDomainConfiguration_STATUS instances for property testing - lazily instantiated by
+// CustomDomainConfiguration_STATUSGenerator()
+var customDomainConfiguration_STATUSGenerator gopter.Gen
+
+// CustomDomainConfiguration_STATUSGenerator returns a generator of CustomDomainConfiguration_STATUS instances for property testing.
+func CustomDomainConfiguration_STATUSGenerator() gopter.Gen {
+ if customDomainConfiguration_STATUSGenerator != nil {
+ return customDomainConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS(generators)
+ customDomainConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomDomainConfiguration_STATUS{}), generators)
+
+ return customDomainConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomDomainVerificationId"] = gen.PtrOf(gen.AlphaString())
+ gens["DnsSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["ExpirationDate"] = gen.PtrOf(gen.AlphaString())
+ gens["SubjectName"] = gen.PtrOf(gen.AlphaString())
+ gens["Thumbprint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_DaprConfiguration_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 DaprConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDaprConfiguration_STATUS, DaprConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDaprConfiguration_STATUS runs a test to see if a specific instance of DaprConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDaprConfiguration_STATUS(subject DaprConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DaprConfiguration_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 DaprConfiguration_STATUS instances for property testing - lazily instantiated by
+// DaprConfiguration_STATUSGenerator()
+var daprConfiguration_STATUSGenerator gopter.Gen
+
+// DaprConfiguration_STATUSGenerator returns a generator of DaprConfiguration_STATUS instances for property testing.
+func DaprConfiguration_STATUSGenerator() gopter.Gen {
+ if daprConfiguration_STATUSGenerator != nil {
+ return daprConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS(generators)
+ daprConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(DaprConfiguration_STATUS{}), generators)
+
+ return daprConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Version"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_KedaConfiguration_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 KedaConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForKedaConfiguration_STATUS, KedaConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForKedaConfiguration_STATUS runs a test to see if a specific instance of KedaConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForKedaConfiguration_STATUS(subject KedaConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual KedaConfiguration_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 KedaConfiguration_STATUS instances for property testing - lazily instantiated by
+// KedaConfiguration_STATUSGenerator()
+var kedaConfiguration_STATUSGenerator gopter.Gen
+
+// KedaConfiguration_STATUSGenerator returns a generator of KedaConfiguration_STATUS instances for property testing.
+func KedaConfiguration_STATUSGenerator() gopter.Gen {
+ if kedaConfiguration_STATUSGenerator != nil {
+ return kedaConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS(generators)
+ kedaConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(KedaConfiguration_STATUS{}), generators)
+
+ return kedaConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Version"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LogAnalyticsConfiguration_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 LogAnalyticsConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS, LogAnalyticsConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS runs a test to see if a specific instance of LogAnalyticsConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS(subject LogAnalyticsConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LogAnalyticsConfiguration_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 LogAnalyticsConfiguration_STATUS instances for property testing - lazily instantiated by
+// LogAnalyticsConfiguration_STATUSGenerator()
+var logAnalyticsConfiguration_STATUSGenerator gopter.Gen
+
+// LogAnalyticsConfiguration_STATUSGenerator returns a generator of LogAnalyticsConfiguration_STATUS instances for property testing.
+func LogAnalyticsConfiguration_STATUSGenerator() gopter.Gen {
+ if logAnalyticsConfiguration_STATUSGenerator != nil {
+ return logAnalyticsConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS(generators)
+ logAnalyticsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(LogAnalyticsConfiguration_STATUS{}), generators)
+
+ return logAnalyticsConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomerId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS, ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerAuthentication_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS(subject ManagedEnvironment_Properties_PeerAuthentication_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_STATUS instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator()
+var managedEnvironment_Properties_PeerAuthentication_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerAuthentication_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerAuthentication_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerAuthentication_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS(generators)
+ managedEnvironment_Properties_PeerAuthentication_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerAuthentication_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerAuthentication_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS(gens map[string]gopter.Gen) {
+ gens["Mtls"] = gen.PtrOf(Mtls_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS, ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS instances for property testing
+// - lazily instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS, ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Encryption"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_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 ManagedEnvironment_Properties_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_STATUS, ManagedEnvironment_Properties_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_STATUS(subject ManagedEnvironment_Properties_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_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 ManagedEnvironment_Properties_STATUS instances for property testing - lazily instantiated by
+// ManagedEnvironment_Properties_STATUSGenerator()
+var managedEnvironment_Properties_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_STATUSGenerator returns a generator of ManagedEnvironment_Properties_STATUS instances for property testing.
+// We first initialize managedEnvironment_Properties_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 ManagedEnvironment_Properties_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_STATUSGenerator != nil {
+ return managedEnvironment_Properties_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_STATUS(generators)
+ managedEnvironment_Properties_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_STATUS(generators)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_STATUS(generators)
+ managedEnvironment_Properties_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_STATUS{}), generators)
+
+ return managedEnvironment_Properties_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_STATUS(gens map[string]gopter.Gen) {
+ gens["DefaultDomain"] = gen.PtrOf(gen.AlphaString())
+ gens["DeploymentErrors"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["InfrastructureResourceGroup"] = gen.PtrOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.OneConstOf(
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Canceled,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Failed,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupComplete,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupInProgress,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InitializationInProgress,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_ScheduledForDelete,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Succeeded,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeFailed,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeRequested,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Waiting))
+ gens["StaticIp"] = gen.PtrOf(gen.AlphaString())
+ gens["ZoneRedundant"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_STATUS(gens map[string]gopter.Gen) {
+ gens["AppLogsConfiguration"] = gen.PtrOf(AppLogsConfiguration_STATUSGenerator())
+ gens["CustomDomainConfiguration"] = gen.PtrOf(CustomDomainConfiguration_STATUSGenerator())
+ gens["DaprConfiguration"] = gen.PtrOf(DaprConfiguration_STATUSGenerator())
+ gens["KedaConfiguration"] = gen.PtrOf(KedaConfiguration_STATUSGenerator())
+ gens["PeerAuthentication"] = gen.PtrOf(ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator())
+ gens["PeerTrafficConfiguration"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator())
+ gens["VnetConfiguration"] = gen.PtrOf(VnetConfiguration_STATUSGenerator())
+ gens["WorkloadProfiles"] = gen.SliceOf(WorkloadProfile_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_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 ManagedEnvironment_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_STATUS, ManagedEnvironment_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_STATUS runs a test to see if a specific instance of ManagedEnvironment_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_STATUS(subject ManagedEnvironment_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_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 ManagedEnvironment_STATUS instances for property testing - lazily instantiated by
+// ManagedEnvironment_STATUSGenerator()
+var managedEnvironment_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_STATUSGenerator returns a generator of ManagedEnvironment_STATUS instances for property testing.
+// We first initialize managedEnvironment_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 ManagedEnvironment_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_STATUSGenerator != nil {
+ return managedEnvironment_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ managedEnvironment_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ managedEnvironment_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_STATUS{}), generators)
+
+ return managedEnvironment_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(gens map[string]gopter.Gen) {
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["Kind"] = 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())
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS(gens map[string]gopter.Gen) {
+ gens["Properties"] = gen.PtrOf(ManagedEnvironment_Properties_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+}
+
+func Test_Mtls_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 Mtls_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForMtls_STATUS, Mtls_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForMtls_STATUS runs a test to see if a specific instance of Mtls_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForMtls_STATUS(subject Mtls_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Mtls_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 Mtls_STATUS instances for property testing - lazily instantiated by Mtls_STATUSGenerator()
+var mtls_STATUSGenerator gopter.Gen
+
+// Mtls_STATUSGenerator returns a generator of Mtls_STATUS instances for property testing.
+func Mtls_STATUSGenerator() gopter.Gen {
+ if mtls_STATUSGenerator != nil {
+ return mtls_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForMtls_STATUS(generators)
+ mtls_STATUSGenerator = gen.Struct(reflect.TypeOf(Mtls_STATUS{}), generators)
+
+ return mtls_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForMtls_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForMtls_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_VnetConfiguration_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 VnetConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVnetConfiguration_STATUS, VnetConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVnetConfiguration_STATUS runs a test to see if a specific instance of VnetConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVnetConfiguration_STATUS(subject VnetConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VnetConfiguration_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 VnetConfiguration_STATUS instances for property testing - lazily instantiated by
+// VnetConfiguration_STATUSGenerator()
+var vnetConfiguration_STATUSGenerator gopter.Gen
+
+// VnetConfiguration_STATUSGenerator returns a generator of VnetConfiguration_STATUS instances for property testing.
+func VnetConfiguration_STATUSGenerator() gopter.Gen {
+ if vnetConfiguration_STATUSGenerator != nil {
+ return vnetConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS(generators)
+ vnetConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(VnetConfiguration_STATUS{}), generators)
+
+ return vnetConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["DockerBridgeCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["InfrastructureSubnetId"] = gen.PtrOf(gen.AlphaString())
+ gens["Internal"] = gen.PtrOf(gen.Bool())
+ gens["PlatformReservedCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["PlatformReservedDnsIP"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_WorkloadProfile_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 WorkloadProfile_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForWorkloadProfile_STATUS, WorkloadProfile_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForWorkloadProfile_STATUS runs a test to see if a specific instance of WorkloadProfile_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForWorkloadProfile_STATUS(subject WorkloadProfile_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual WorkloadProfile_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 WorkloadProfile_STATUS instances for property testing - lazily instantiated by
+// WorkloadProfile_STATUSGenerator()
+var workloadProfile_STATUSGenerator gopter.Gen
+
+// WorkloadProfile_STATUSGenerator returns a generator of WorkloadProfile_STATUS instances for property testing.
+func WorkloadProfile_STATUSGenerator() gopter.Gen {
+ if workloadProfile_STATUSGenerator != nil {
+ return workloadProfile_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS(generators)
+ workloadProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(WorkloadProfile_STATUS{}), generators)
+
+ return workloadProfile_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS(gens map[string]gopter.Gen) {
+ gens["MaximumCount"] = gen.PtrOf(gen.Int())
+ gens["MinimumCount"] = gen.PtrOf(gen.Int())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileType"] = gen.PtrOf(gen.AlphaString())
+}
diff --git a/v2/api/app/v1api20240301/arm/structure.txt b/v2/api/app/v1api20240301/arm/structure.txt
new file mode 100644
index 00000000000..16c59ed0e69
--- /dev/null
+++ b/v2/api/app/v1api20240301/arm/structure.txt
@@ -0,0 +1,1084 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/arm
+--------------------------------------------------------------------
+AuthConfig_STATUS: Object (5 properties)
+├── Id: *string
+├── Name: *string
+├── Properties: *Object (6 properties)
+│ ├── EncryptionSettings: *Object (2 properties)
+│ │ ├── ContainerAppAuthEncryptionSecretName: *string
+│ │ └── ContainerAppAuthSigningSecretName: *string
+│ ├── GlobalValidation: *Object (3 properties)
+│ │ ├── ExcludedPaths: string[]
+│ │ ├── RedirectToProvider: *string
+│ │ └── UnauthenticatedClientAction: *Enum (4 values)
+│ │ ├── "AllowAnonymous"
+│ │ ├── "RedirectToLoginPage"
+│ │ ├── "Return401"
+│ │ └── "Return403"
+│ ├── HttpSettings: *Object (3 properties)
+│ │ ├── ForwardProxy: *Object (3 properties)
+│ │ │ ├── Convention: *Enum (3 values)
+│ │ │ │ ├── "Custom"
+│ │ │ │ ├── "NoProxy"
+│ │ │ │ └── "Standard"
+│ │ │ ├── CustomHostHeaderName: *string
+│ │ │ └── CustomProtoHeaderName: *string
+│ │ ├── RequireHttps: *bool
+│ │ └── Routes: *Object (1 property)
+│ │ └── ApiPrefix: *string
+│ ├── IdentityProviders: *Object (8 properties)
+│ │ ├── Apple: *Object (3 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (1 property)
+│ │ │ │ └── Scopes: string[]
+│ │ │ └── Registration: *Object (2 properties)
+│ │ │ ├── ClientId: *string
+│ │ │ └── ClientSecretSettingName: *string
+│ │ ├── AzureActiveDirectory: *Object (5 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── IsAutoProvisioned: *bool
+│ │ │ ├── Login: *Object (2 properties)
+│ │ │ │ ├── DisableWWWAuthenticate: *bool
+│ │ │ │ └── LoginParameters: string[]
+│ │ │ ├── Registration: *Object (6 properties)
+│ │ │ │ ├── ClientId: *string
+│ │ │ │ ├── ClientSecretCertificateIssuer: *string
+│ │ │ │ ├── ClientSecretCertificateSubjectAlternativeName: *string
+│ │ │ │ ├── ClientSecretCertificateThumbprint: *string
+│ │ │ │ ├── ClientSecretSettingName: *string
+│ │ │ │ └── OpenIdIssuer: *string
+│ │ │ └── Validation: *Object (3 properties)
+│ │ │ ├── AllowedAudiences: string[]
+│ │ │ ├── DefaultAuthorizationPolicy: *Object (2 properties)
+│ │ │ │ ├── AllowedApplications: string[]
+│ │ │ │ └── AllowedPrincipals: *Object (2 properties)
+│ │ │ │ ├── Groups: string[]
+│ │ │ │ └── Identities: string[]
+│ │ │ └── JwtClaimChecks: *Object (2 properties)
+│ │ │ ├── AllowedClientApplications: string[]
+│ │ │ └── AllowedGroups: string[]
+│ │ ├── AzureStaticWebApps: *Object (2 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ └── Registration: *Object (1 property)
+│ │ │ └── ClientId: *string
+│ │ ├── CustomOpenIdConnectProviders: map[string]Object (3 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (2 properties)
+│ │ │ │ ├── NameClaimType: *string
+│ │ │ │ └── Scopes: string[]
+│ │ │ └── Registration: *Object (3 properties)
+│ │ │ ├── ClientCredential: *Object (2 properties)
+│ │ │ │ ├── ClientSecretSettingName: *string
+│ │ │ │ └── Method: *Enum (1 value)
+│ │ │ │ └── "ClientSecretPost"
+│ │ │ ├── ClientId: *string
+│ │ │ └── OpenIdConnectConfiguration: *Object (5 properties)
+│ │ │ ├── AuthorizationEndpoint: *string
+│ │ │ ├── CertificationUri: *string
+│ │ │ ├── Issuer: *string
+│ │ │ ├── TokenEndpoint: *string
+│ │ │ └── WellKnownOpenIdConfiguration: *string
+│ │ ├── Facebook: *Object (4 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── GraphApiVersion: *string
+│ │ │ ├── Login: *Object (1 property)
+│ │ │ │ └── Scopes: string[]
+│ │ │ └── Registration: *Object (2 properties)
+│ │ │ ├── AppId: *string
+│ │ │ └── AppSecretSettingName: *string
+│ │ ├── GitHub: *Object (3 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (1 property)
+│ │ │ │ └── Scopes: string[]
+│ │ │ └── Registration: *Object (2 properties)
+│ │ │ ├── ClientId: *string
+│ │ │ └── ClientSecretSettingName: *string
+│ │ ├── Google: *Object (4 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (1 property)
+│ │ │ │ └── Scopes: string[]
+│ │ │ ├── Registration: *Object (2 properties)
+│ │ │ │ ├── ClientId: *string
+│ │ │ │ └── ClientSecretSettingName: *string
+│ │ │ └── Validation: *Object (1 property)
+│ │ │ └── AllowedAudiences: string[]
+│ │ └── Twitter: *Object (2 properties)
+│ │ ├── Enabled: *bool
+│ │ └── Registration: *Object (2 properties)
+│ │ ├── ConsumerKey: *string
+│ │ └── ConsumerSecretSettingName: *string
+│ ├── Login: *Object (6 properties)
+│ │ ├── AllowedExternalRedirectUrls: string[]
+│ │ ├── CookieExpiration: *Object (2 properties)
+│ │ │ ├── Convention: *Enum (2 values)
+│ │ │ │ ├── "FixedTime"
+│ │ │ │ └── "IdentityProviderDerived"
+│ │ │ └── TimeToExpiration: *string
+│ │ ├── Nonce: *Object (2 properties)
+│ │ │ ├── NonceExpirationInterval: *string
+│ │ │ └── ValidateNonce: *bool
+│ │ ├── PreserveUrlFragmentsForLogins: *bool
+│ │ ├── Routes: *Object (1 property)
+│ │ │ └── LogoutEndpoint: *string
+│ │ └── TokenStore: *Object (3 properties)
+│ │ ├── AzureBlobStorage: *Object (1 property)
+│ │ │ └── SasUrlSettingName: *string
+│ │ ├── Enabled: *bool
+│ │ └── TokenRefreshExtensionHours: *float64
+│ └── Platform: *Object (2 properties)
+│ ├── Enabled: *bool
+│ └── RuntimeVersion: *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"
+└── Type: *string
+AuthConfig_Spec: Object (2 properties)
+├── Name: string
+└── Properties: *Object (6 properties)
+ ├── EncryptionSettings: *Object (2 properties)
+ │ ├── ContainerAppAuthEncryptionSecretName: *string
+ │ └── ContainerAppAuthSigningSecretName: *string
+ ├── GlobalValidation: *Object (3 properties)
+ │ ├── ExcludedPaths: string[]
+ │ ├── RedirectToProvider: *string
+ │ └── UnauthenticatedClientAction: *Enum (4 values)
+ │ ├── "AllowAnonymous"
+ │ ├── "RedirectToLoginPage"
+ │ ├── "Return401"
+ │ └── "Return403"
+ ├── HttpSettings: *Object (3 properties)
+ │ ├── ForwardProxy: *Object (3 properties)
+ │ │ ├── Convention: *Enum (3 values)
+ │ │ │ ├── "Custom"
+ │ │ │ ├── "NoProxy"
+ │ │ │ └── "Standard"
+ │ │ ├── CustomHostHeaderName: *string
+ │ │ └── CustomProtoHeaderName: *string
+ │ ├── RequireHttps: *bool
+ │ └── Routes: *Object (1 property)
+ │ └── ApiPrefix: *string
+ ├── IdentityProviders: *Object (8 properties)
+ │ ├── Apple: *Object (3 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (1 property)
+ │ │ │ └── Scopes: string[]
+ │ │ └── Registration: *Object (2 properties)
+ │ │ ├── ClientId: *string
+ │ │ └── ClientSecretSettingName: *string
+ │ ├── AzureActiveDirectory: *Object (5 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── IsAutoProvisioned: *bool
+ │ │ ├── Login: *Object (2 properties)
+ │ │ │ ├── DisableWWWAuthenticate: *bool
+ │ │ │ └── LoginParameters: string[]
+ │ │ ├── Registration: *Object (6 properties)
+ │ │ │ ├── ClientId: *string
+ │ │ │ ├── ClientSecretCertificateIssuer: *string
+ │ │ │ ├── ClientSecretCertificateSubjectAlternativeName: *string
+ │ │ │ ├── ClientSecretCertificateThumbprint: *string
+ │ │ │ ├── ClientSecretSettingName: *string
+ │ │ │ └── OpenIdIssuer: *string
+ │ │ └── Validation: *Object (3 properties)
+ │ │ ├── AllowedAudiences: string[]
+ │ │ ├── DefaultAuthorizationPolicy: *Object (2 properties)
+ │ │ │ ├── AllowedApplications: string[]
+ │ │ │ └── AllowedPrincipals: *Object (2 properties)
+ │ │ │ ├── Groups: string[]
+ │ │ │ └── Identities: string[]
+ │ │ └── JwtClaimChecks: *Object (2 properties)
+ │ │ ├── AllowedClientApplications: string[]
+ │ │ └── AllowedGroups: string[]
+ │ ├── AzureStaticWebApps: *Object (2 properties)
+ │ │ ├── Enabled: *bool
+ │ │ └── Registration: *Object (1 property)
+ │ │ └── ClientId: *string
+ │ ├── CustomOpenIdConnectProviders: map[string]Object (3 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (2 properties)
+ │ │ │ ├── NameClaimType: *string
+ │ │ │ └── Scopes: string[]
+ │ │ └── Registration: *Object (3 properties)
+ │ │ ├── ClientCredential: *Object (2 properties)
+ │ │ │ ├── ClientSecretSettingName: *string
+ │ │ │ └── Method: *Enum (1 value)
+ │ │ │ └── "ClientSecretPost"
+ │ │ ├── ClientId: *string
+ │ │ └── OpenIdConnectConfiguration: *Object (5 properties)
+ │ │ ├── AuthorizationEndpoint: *string
+ │ │ ├── CertificationUri: *string
+ │ │ ├── Issuer: *string
+ │ │ ├── TokenEndpoint: *string
+ │ │ └── WellKnownOpenIdConfiguration: *string
+ │ ├── Facebook: *Object (4 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── GraphApiVersion: *string
+ │ │ ├── Login: *Object (1 property)
+ │ │ │ └── Scopes: string[]
+ │ │ └── Registration: *Object (2 properties)
+ │ │ ├── AppId: *string
+ │ │ └── AppSecretSettingName: *string
+ │ ├── GitHub: *Object (3 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (1 property)
+ │ │ │ └── Scopes: string[]
+ │ │ └── Registration: *Object (2 properties)
+ │ │ ├── ClientId: *string
+ │ │ └── ClientSecretSettingName: *string
+ │ ├── Google: *Object (4 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (1 property)
+ │ │ │ └── Scopes: string[]
+ │ │ ├── Registration: *Object (2 properties)
+ │ │ │ ├── ClientId: *string
+ │ │ │ └── ClientSecretSettingName: *string
+ │ │ └── Validation: *Object (1 property)
+ │ │ └── AllowedAudiences: string[]
+ │ └── Twitter: *Object (2 properties)
+ │ ├── Enabled: *bool
+ │ └── Registration: *Object (2 properties)
+ │ ├── ConsumerKey: *string
+ │ └── ConsumerSecretSettingName: *string
+ ├── Login: *Object (6 properties)
+ │ ├── AllowedExternalRedirectUrls: string[]
+ │ ├── CookieExpiration: *Object (2 properties)
+ │ │ ├── Convention: *Enum (2 values)
+ │ │ │ ├── "FixedTime"
+ │ │ │ └── "IdentityProviderDerived"
+ │ │ └── TimeToExpiration: *string
+ │ ├── Nonce: *Object (2 properties)
+ │ │ ├── NonceExpirationInterval: *string
+ │ │ └── ValidateNonce: *bool
+ │ ├── PreserveUrlFragmentsForLogins: *bool
+ │ ├── Routes: *Object (1 property)
+ │ │ └── LogoutEndpoint: *string
+ │ └── TokenStore: *Object (3 properties)
+ │ ├── AzureBlobStorage: *Object (1 property)
+ │ │ └── SasUrlSettingName: *string
+ │ ├── Enabled: *bool
+ │ └── TokenRefreshExtensionHours: *float64
+ └── Platform: *Object (2 properties)
+ ├── Enabled: *bool
+ └── RuntimeVersion: *string
+ContainerApp_STATUS: Object (10 properties)
+├── ExtendedLocation: *Object (2 properties)
+│ ├── Name: *string
+│ └── Type: *Enum (1 value)
+│ └── "CustomLocation"
+├── Id: *string
+├── Identity: *Object (4 properties)
+│ ├── PrincipalId: *string
+│ ├── TenantId: *string
+│ ├── Type: *Enum (4 values)
+│ │ ├── "None"
+│ │ ├── "SystemAssigned"
+│ │ ├── "SystemAssigned,UserAssigned"
+│ │ └── "UserAssigned"
+│ └── UserAssignedIdentities: map[string]Object (2 properties)
+│ ├── ClientId: *string
+│ └── PrincipalId: *string
+├── Location: *string
+├── ManagedBy: *string
+├── Name: *string
+├── Properties: *Object (12 properties)
+│ ├── Configuration: *Object (7 properties)
+│ │ ├── ActiveRevisionsMode: *Enum (2 values)
+│ │ │ ├── "Multiple"
+│ │ │ └── "Single"
+│ │ ├── Dapr: *Object (8 properties)
+│ │ │ ├── AppId: *string
+│ │ │ ├── AppPort: *int
+│ │ │ ├── AppProtocol: *Enum (2 values)
+│ │ │ │ ├── "grpc"
+│ │ │ │ └── "http"
+│ │ │ ├── EnableApiLogging: *bool
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── HttpMaxRequestSize: *int
+│ │ │ ├── HttpReadBufferSize: *int
+│ │ │ └── LogLevel: *Enum (4 values)
+│ │ │ ├── "debug"
+│ │ │ ├── "error"
+│ │ │ ├── "info"
+│ │ │ └── "warn"
+│ │ ├── Ingress: *Object (13 properties)
+│ │ │ ├── AdditionalPortMappings: Object (3 properties)[]
+│ │ │ │ ├── ExposedPort: *int
+│ │ │ │ ├── External: *bool
+│ │ │ │ └── TargetPort: *int
+│ │ │ ├── AllowInsecure: *bool
+│ │ │ ├── ClientCertificateMode: *Enum (3 values)
+│ │ │ │ ├── "accept"
+│ │ │ │ ├── "ignore"
+│ │ │ │ └── "require"
+│ │ │ ├── CorsPolicy: *Object (6 properties)
+│ │ │ │ ├── AllowCredentials: *bool
+│ │ │ │ ├── AllowedHeaders: string[]
+│ │ │ │ ├── AllowedMethods: string[]
+│ │ │ │ ├── AllowedOrigins: string[]
+│ │ │ │ ├── ExposeHeaders: string[]
+│ │ │ │ └── MaxAge: *int
+│ │ │ ├── CustomDomains: Object (3 properties)[]
+│ │ │ │ ├── BindingType: *Enum (2 values)
+│ │ │ │ │ ├── "Disabled"
+│ │ │ │ │ └── "SniEnabled"
+│ │ │ │ ├── CertificateId: *string
+│ │ │ │ └── Name: *string
+│ │ │ ├── ExposedPort: *int
+│ │ │ ├── External: *bool
+│ │ │ ├── Fqdn: *string
+│ │ │ ├── IpSecurityRestrictions: Object (4 properties)[]
+│ │ │ │ ├── Action: *Enum (2 values)
+│ │ │ │ │ ├── "Allow"
+│ │ │ │ │ └── "Deny"
+│ │ │ │ ├── Description: *string
+│ │ │ │ ├── IpAddressRange: *string
+│ │ │ │ └── Name: *string
+│ │ │ ├── StickySessions: *Object (1 property)
+│ │ │ │ └── Affinity: *Enum (2 values)
+│ │ │ │ ├── "none"
+│ │ │ │ └── "sticky"
+│ │ │ ├── TargetPort: *int
+│ │ │ ├── Traffic: Object (4 properties)[]
+│ │ │ │ ├── Label: *string
+│ │ │ │ ├── LatestRevision: *bool
+│ │ │ │ ├── RevisionName: *string
+│ │ │ │ └── Weight: *int
+│ │ │ └── Transport: *Enum (4 values)
+│ │ │ ├── "auto"
+│ │ │ ├── "http"
+│ │ │ ├── "http2"
+│ │ │ └── "tcp"
+│ │ ├── MaxInactiveRevisions: *int
+│ │ ├── Registries: Object (4 properties)[]
+│ │ │ ├── Identity: *string
+│ │ │ ├── PasswordSecretRef: *string
+│ │ │ ├── Server: *string
+│ │ │ └── Username: *string
+│ │ ├── Secrets: Object (3 properties)[]
+│ │ │ ├── Identity: *string
+│ │ │ ├── KeyVaultUrl: *string
+│ │ │ └── Name: *string
+│ │ └── Service: *Object (1 property)
+│ │ └── Type: *string
+│ ├── CustomDomainVerificationId: *string
+│ ├── EnvironmentId: *string
+│ ├── EventStreamEndpoint: *string
+│ ├── LatestReadyRevisionName: *string
+│ ├── LatestRevisionFqdn: *string
+│ ├── LatestRevisionName: *string
+│ ├── ManagedEnvironmentId: *string
+│ ├── OutboundIpAddresses: string[]
+│ ├── ProvisioningState: *Enum (5 values)
+│ │ ├── "Canceled"
+│ │ ├── "Deleting"
+│ │ ├── "Failed"
+│ │ ├── "InProgress"
+│ │ └── "Succeeded"
+│ ├── Template: *Object (7 properties)
+│ │ ├── Containers: Object (8 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Probes: Object (9 properties)[]
+│ │ │ │ ├── FailureThreshold: *int
+│ │ │ │ ├── HttpGet: *Object (5 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── HttpHeaders: Object (2 properties)[]
+│ │ │ │ │ │ ├── Name: *string
+│ │ │ │ │ │ └── Value: *string
+│ │ │ │ │ ├── Path: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ └── Scheme: *Enum (2 values)
+│ │ │ │ │ ├── "HTTP"
+│ │ │ │ │ └── "HTTPS"
+│ │ │ │ ├── InitialDelaySeconds: *int
+│ │ │ │ ├── PeriodSeconds: *int
+│ │ │ │ ├── SuccessThreshold: *int
+│ │ │ │ ├── TcpSocket: *Object (2 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ └── Port: *int
+│ │ │ │ ├── TerminationGracePeriodSeconds: *int
+│ │ │ │ ├── TimeoutSeconds: *int
+│ │ │ │ └── Type: *Enum (3 values)
+│ │ │ │ ├── "Liveness"
+│ │ │ │ ├── "Readiness"
+│ │ │ │ └── "Startup"
+│ │ │ ├── Resources: *Object (3 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ ├── EphemeralStorage: *string
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── InitContainers: Object (7 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Resources: *Object (3 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ ├── EphemeralStorage: *string
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── RevisionSuffix: *string
+│ │ ├── Scale: *Object (3 properties)
+│ │ │ ├── MaxReplicas: *int
+│ │ │ ├── MinReplicas: *int
+│ │ │ └── Rules: Object (5 properties)[]
+│ │ │ ├── AzureQueue: *Object (3 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── QueueLength: *int
+│ │ │ │ └── QueueName: *string
+│ │ │ ├── Custom: *Object (3 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── Metadata: map[string]string
+│ │ │ │ └── Type: *string
+│ │ │ ├── Http: *Object (2 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ └── Metadata: map[string]string
+│ │ │ ├── Name: *string
+│ │ │ └── Tcp: *Object (2 properties)
+│ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── TriggerParameter: *string
+│ │ │ └── Metadata: map[string]string
+│ │ ├── ServiceBinds: Object (2 properties)[]
+│ │ │ ├── Name: *string
+│ │ │ └── ServiceId: *string
+│ │ ├── TerminationGracePeriodSeconds: *int
+│ │ └── Volumes: Object (5 properties)[]
+│ │ ├── MountOptions: *string
+│ │ ├── Name: *string
+│ │ ├── Secrets: Object (2 properties)[]
+│ │ │ ├── Path: *string
+│ │ │ └── SecretRef: *string
+│ │ ├── StorageName: *string
+│ │ └── StorageType: *Enum (3 values)
+│ │ ├── "AzureFile"
+│ │ ├── "EmptyDir"
+│ │ └── "Secret"
+│ └── WorkloadProfileName: *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
+ContainerApp_Spec: Object (7 properties)
+├── ExtendedLocation: *Object (2 properties)
+│ ├── Name: *string
+│ └── Type: *Enum (1 value)
+│ └── "CustomLocation"
+├── Identity: *Object (2 properties)
+│ ├── Type: *Enum (4 values)
+│ │ ├── "None"
+│ │ ├── "SystemAssigned"
+│ │ ├── "SystemAssigned,UserAssigned"
+│ │ └── "UserAssigned"
+│ └── UserAssignedIdentities: map[string]Object (0 properties)
+├── Location: *string
+├── ManagedBy: *string
+├── Name: string
+├── Properties: *Object (5 properties)
+│ ├── Configuration: *Object (7 properties)
+│ │ ├── ActiveRevisionsMode: *Enum (2 values)
+│ │ │ ├── "Multiple"
+│ │ │ └── "Single"
+│ │ ├── Dapr: *Object (8 properties)
+│ │ │ ├── AppId: *string
+│ │ │ ├── AppPort: *int
+│ │ │ ├── AppProtocol: *Enum (2 values)
+│ │ │ │ ├── "grpc"
+│ │ │ │ └── "http"
+│ │ │ ├── EnableApiLogging: *bool
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── HttpMaxRequestSize: *int
+│ │ │ ├── HttpReadBufferSize: *int
+│ │ │ └── LogLevel: *Enum (4 values)
+│ │ │ ├── "debug"
+│ │ │ ├── "error"
+│ │ │ ├── "info"
+│ │ │ └── "warn"
+│ │ ├── Ingress: *Object (12 properties)
+│ │ │ ├── AdditionalPortMappings: Object (3 properties)[]
+│ │ │ │ ├── ExposedPort: *int
+│ │ │ │ ├── External: *bool
+│ │ │ │ └── TargetPort: *int
+│ │ │ ├── AllowInsecure: *bool
+│ │ │ ├── ClientCertificateMode: *Enum (3 values)
+│ │ │ │ ├── "accept"
+│ │ │ │ ├── "ignore"
+│ │ │ │ └── "require"
+│ │ │ ├── CorsPolicy: *Object (6 properties)
+│ │ │ │ ├── AllowCredentials: *bool
+│ │ │ │ ├── AllowedHeaders: string[]
+│ │ │ │ ├── AllowedMethods: string[]
+│ │ │ │ ├── AllowedOrigins: string[]
+│ │ │ │ ├── ExposeHeaders: string[]
+│ │ │ │ └── MaxAge: *int
+│ │ │ ├── CustomDomains: Object (3 properties)[]
+│ │ │ │ ├── BindingType: *Enum (2 values)
+│ │ │ │ │ ├── "Disabled"
+│ │ │ │ │ └── "SniEnabled"
+│ │ │ │ ├── CertificateId: *string
+│ │ │ │ └── Name: *string
+│ │ │ ├── ExposedPort: *int
+│ │ │ ├── External: *bool
+│ │ │ ├── IpSecurityRestrictions: Object (4 properties)[]
+│ │ │ │ ├── Action: *Enum (2 values)
+│ │ │ │ │ ├── "Allow"
+│ │ │ │ │ └── "Deny"
+│ │ │ │ ├── Description: *string
+│ │ │ │ ├── IpAddressRange: *string
+│ │ │ │ └── Name: *string
+│ │ │ ├── StickySessions: *Object (1 property)
+│ │ │ │ └── Affinity: *Enum (2 values)
+│ │ │ │ ├── "none"
+│ │ │ │ └── "sticky"
+│ │ │ ├── TargetPort: *int
+│ │ │ ├── Traffic: Object (4 properties)[]
+│ │ │ │ ├── Label: *string
+│ │ │ │ ├── LatestRevision: *bool
+│ │ │ │ ├── RevisionName: *string
+│ │ │ │ └── Weight: *int
+│ │ │ └── Transport: *Enum (4 values)
+│ │ │ ├── "auto"
+│ │ │ ├── "http"
+│ │ │ ├── "http2"
+│ │ │ └── "tcp"
+│ │ ├── MaxInactiveRevisions: *int
+│ │ ├── Registries: Object (4 properties)[]
+│ │ │ ├── Identity: *string
+│ │ │ ├── PasswordSecretRef: *string
+│ │ │ ├── Server: *string
+│ │ │ └── Username: *string
+│ │ ├── Secrets: Object (4 properties)[]
+│ │ │ ├── Identity: *string
+│ │ │ ├── KeyVaultUrl: *string
+│ │ │ ├── Name: *string
+│ │ │ └── Value: *string
+│ │ └── Service: *Object (1 property)
+│ │ └── Type: *string
+│ ├── EnvironmentId: *string
+│ ├── ManagedEnvironmentId: *string
+│ ├── Template: *Object (7 properties)
+│ │ ├── Containers: Object (8 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Probes: Object (9 properties)[]
+│ │ │ │ ├── FailureThreshold: *int
+│ │ │ │ ├── HttpGet: *Object (5 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── HttpHeaders: Object (2 properties)[]
+│ │ │ │ │ │ ├── Name: *string
+│ │ │ │ │ │ └── Value: *string
+│ │ │ │ │ ├── Path: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ └── Scheme: *Enum (2 values)
+│ │ │ │ │ ├── "HTTP"
+│ │ │ │ │ └── "HTTPS"
+│ │ │ │ ├── InitialDelaySeconds: *int
+│ │ │ │ ├── PeriodSeconds: *int
+│ │ │ │ ├── SuccessThreshold: *int
+│ │ │ │ ├── TcpSocket: *Object (2 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ └── Port: *int
+│ │ │ │ ├── TerminationGracePeriodSeconds: *int
+│ │ │ │ ├── TimeoutSeconds: *int
+│ │ │ │ └── Type: *Enum (3 values)
+│ │ │ │ ├── "Liveness"
+│ │ │ │ ├── "Readiness"
+│ │ │ │ └── "Startup"
+│ │ │ ├── Resources: *Object (2 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── InitContainers: Object (7 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Resources: *Object (2 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── RevisionSuffix: *string
+│ │ ├── Scale: *Object (3 properties)
+│ │ │ ├── MaxReplicas: *int
+│ │ │ ├── MinReplicas: *int
+│ │ │ └── Rules: Object (5 properties)[]
+│ │ │ ├── AzureQueue: *Object (3 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── QueueLength: *int
+│ │ │ │ └── QueueName: *string
+│ │ │ ├── Custom: *Object (3 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── Metadata: map[string]string
+│ │ │ │ └── Type: *string
+│ │ │ ├── Http: *Object (2 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ └── Metadata: map[string]string
+│ │ │ ├── Name: *string
+│ │ │ └── Tcp: *Object (2 properties)
+│ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── TriggerParameter: *string
+│ │ │ └── Metadata: map[string]string
+│ │ ├── ServiceBinds: Object (2 properties)[]
+│ │ │ ├── Name: *string
+│ │ │ └── ServiceId: *string
+│ │ ├── TerminationGracePeriodSeconds: *int
+│ │ └── Volumes: Object (5 properties)[]
+│ │ ├── MountOptions: *string
+│ │ ├── Name: *string
+│ │ ├── Secrets: Object (2 properties)[]
+│ │ │ ├── Path: *string
+│ │ │ └── SecretRef: *string
+│ │ ├── StorageName: *string
+│ │ └── StorageType: *Enum (3 values)
+│ │ ├── "AzureFile"
+│ │ ├── "EmptyDir"
+│ │ └── "Secret"
+│ └── WorkloadProfileName: *string
+└── Tags: map[string]string
+Job_STATUS: Object (8 properties)
+├── Id: *string
+├── Identity: *Object (4 properties)
+│ ├── PrincipalId: *string
+│ ├── TenantId: *string
+│ ├── Type: *Enum (4 values)
+│ │ ├── "None"
+│ │ ├── "SystemAssigned"
+│ │ ├── "SystemAssigned,UserAssigned"
+│ │ └── "UserAssigned"
+│ └── UserAssignedIdentities: map[string]Object (2 properties)
+│ ├── ClientId: *string
+│ └── PrincipalId: *string
+├── Location: *string
+├── Name: *string
+├── Properties: *Object (7 properties)
+│ ├── Configuration: *Object (8 properties)
+│ │ ├── EventTriggerConfig: *Object (3 properties)
+│ │ │ ├── Parallelism: *int
+│ │ │ ├── ReplicaCompletionCount: *int
+│ │ │ └── Scale: *Object (4 properties)
+│ │ │ ├── MaxExecutions: *int
+│ │ │ ├── MinExecutions: *int
+│ │ │ ├── PollingInterval: *int
+│ │ │ └── Rules: Object (4 properties)[]
+│ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── TriggerParameter: *string
+│ │ │ ├── Metadata: map[string]v1.JSON
+│ │ │ ├── Name: *string
+│ │ │ └── Type: *string
+│ │ ├── ManualTriggerConfig: *Object (2 properties)
+│ │ │ ├── Parallelism: *int
+│ │ │ └── ReplicaCompletionCount: *int
+│ │ ├── Registries: Object (4 properties)[]
+│ │ │ ├── Identity: *string
+│ │ │ ├── PasswordSecretRef: *string
+│ │ │ ├── Server: *string
+│ │ │ └── Username: *string
+│ │ ├── ReplicaRetryLimit: *int
+│ │ ├── ReplicaTimeout: *int
+│ │ ├── ScheduleTriggerConfig: *Object (3 properties)
+│ │ │ ├── CronExpression: *string
+│ │ │ ├── Parallelism: *int
+│ │ │ └── ReplicaCompletionCount: *int
+│ │ ├── Secrets: Object (3 properties)[]
+│ │ │ ├── Identity: *string
+│ │ │ ├── KeyVaultUrl: *string
+│ │ │ └── Name: *string
+│ │ └── TriggerType: *Enum (3 values)
+│ │ ├── "Event"
+│ │ ├── "Manual"
+│ │ └── "Schedule"
+│ ├── EnvironmentId: *string
+│ ├── EventStreamEndpoint: *string
+│ ├── OutboundIpAddresses: string[]
+│ ├── ProvisioningState: *Enum (5 values)
+│ │ ├── "Canceled"
+│ │ ├── "Deleting"
+│ │ ├── "Failed"
+│ │ ├── "InProgress"
+│ │ └── "Succeeded"
+│ ├── Template: *Object (3 properties)
+│ │ ├── Containers: Object (8 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Probes: Object (9 properties)[]
+│ │ │ │ ├── FailureThreshold: *int
+│ │ │ │ ├── HttpGet: *Object (5 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── HttpHeaders: Object (2 properties)[]
+│ │ │ │ │ │ ├── Name: *string
+│ │ │ │ │ │ └── Value: *string
+│ │ │ │ │ ├── Path: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ └── Scheme: *Enum (2 values)
+│ │ │ │ │ ├── "HTTP"
+│ │ │ │ │ └── "HTTPS"
+│ │ │ │ ├── InitialDelaySeconds: *int
+│ │ │ │ ├── PeriodSeconds: *int
+│ │ │ │ ├── SuccessThreshold: *int
+│ │ │ │ ├── TcpSocket: *Object (2 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ └── Port: *int
+│ │ │ │ ├── TerminationGracePeriodSeconds: *int
+│ │ │ │ ├── TimeoutSeconds: *int
+│ │ │ │ └── Type: *Enum (3 values)
+│ │ │ │ ├── "Liveness"
+│ │ │ │ ├── "Readiness"
+│ │ │ │ └── "Startup"
+│ │ │ ├── Resources: *Object (3 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ ├── EphemeralStorage: *string
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── InitContainers: Object (7 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Resources: *Object (3 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ ├── EphemeralStorage: *string
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ └── Volumes: Object (5 properties)[]
+│ │ ├── MountOptions: *string
+│ │ ├── Name: *string
+│ │ ├── Secrets: Object (2 properties)[]
+│ │ │ ├── Path: *string
+│ │ │ └── SecretRef: *string
+│ │ ├── StorageName: *string
+│ │ └── StorageType: *Enum (3 values)
+│ │ ├── "AzureFile"
+│ │ ├── "EmptyDir"
+│ │ └── "Secret"
+│ └── WorkloadProfileName: *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
+Job_Spec: Object (5 properties)
+├── Identity: *Object (2 properties)
+│ ├── Type: *Enum (4 values)
+│ │ ├── "None"
+│ │ ├── "SystemAssigned"
+│ │ ├── "SystemAssigned,UserAssigned"
+│ │ └── "UserAssigned"
+│ └── UserAssignedIdentities: map[string]Object (0 properties)
+├── Location: *string
+├── Name: string
+├── Properties: *Object (4 properties)
+│ ├── Configuration: *Object (8 properties)
+│ │ ├── EventTriggerConfig: *Object (3 properties)
+│ │ │ ├── Parallelism: *int
+│ │ │ ├── ReplicaCompletionCount: *int
+│ │ │ └── Scale: *Object (4 properties)
+│ │ │ ├── MaxExecutions: *int
+│ │ │ ├── MinExecutions: *int
+│ │ │ ├── PollingInterval: *int
+│ │ │ └── Rules: Object (4 properties)[]
+│ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── TriggerParameter: *string
+│ │ │ ├── Metadata: map[string]v1.JSON
+│ │ │ ├── Name: *string
+│ │ │ └── Type: *string
+│ │ ├── ManualTriggerConfig: *Object (2 properties)
+│ │ │ ├── Parallelism: *int
+│ │ │ └── ReplicaCompletionCount: *int
+│ │ ├── Registries: Object (4 properties)[]
+│ │ │ ├── Identity: *string
+│ │ │ ├── PasswordSecretRef: *string
+│ │ │ ├── Server: *string
+│ │ │ └── Username: *string
+│ │ ├── ReplicaRetryLimit: *int
+│ │ ├── ReplicaTimeout: *int
+│ │ ├── ScheduleTriggerConfig: *Object (3 properties)
+│ │ │ ├── CronExpression: *string
+│ │ │ ├── Parallelism: *int
+│ │ │ └── ReplicaCompletionCount: *int
+│ │ ├── Secrets: Object (4 properties)[]
+│ │ │ ├── Identity: *string
+│ │ │ ├── KeyVaultUrl: *string
+│ │ │ ├── Name: *string
+│ │ │ └── Value: *string
+│ │ └── TriggerType: *Enum (3 values)
+│ │ ├── "Event"
+│ │ ├── "Manual"
+│ │ └── "Schedule"
+│ ├── EnvironmentId: *string
+│ ├── Template: *Object (3 properties)
+│ │ ├── Containers: Object (8 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Probes: Object (9 properties)[]
+│ │ │ │ ├── FailureThreshold: *int
+│ │ │ │ ├── HttpGet: *Object (5 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── HttpHeaders: Object (2 properties)[]
+│ │ │ │ │ │ ├── Name: *string
+│ │ │ │ │ │ └── Value: *string
+│ │ │ │ │ ├── Path: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ └── Scheme: *Enum (2 values)
+│ │ │ │ │ ├── "HTTP"
+│ │ │ │ │ └── "HTTPS"
+│ │ │ │ ├── InitialDelaySeconds: *int
+│ │ │ │ ├── PeriodSeconds: *int
+│ │ │ │ ├── SuccessThreshold: *int
+│ │ │ │ ├── TcpSocket: *Object (2 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ └── Port: *int
+│ │ │ │ ├── TerminationGracePeriodSeconds: *int
+│ │ │ │ ├── TimeoutSeconds: *int
+│ │ │ │ └── Type: *Enum (3 values)
+│ │ │ │ ├── "Liveness"
+│ │ │ │ ├── "Readiness"
+│ │ │ │ └── "Startup"
+│ │ │ ├── Resources: *Object (2 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── InitContainers: Object (7 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Resources: *Object (2 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ └── Volumes: Object (5 properties)[]
+│ │ ├── MountOptions: *string
+│ │ ├── Name: *string
+│ │ ├── Secrets: Object (2 properties)[]
+│ │ │ ├── Path: *string
+│ │ │ └── SecretRef: *string
+│ │ ├── StorageName: *string
+│ │ └── StorageType: *Enum (3 values)
+│ │ ├── "AzureFile"
+│ │ ├── "EmptyDir"
+│ │ └── "Secret"
+│ └── WorkloadProfileName: *string
+└── Tags: map[string]string
+ManagedEnvironment_STATUS: Object (8 properties)
+├── Id: *string
+├── Kind: *string
+├── Location: *string
+├── Name: *string
+├── Properties: *Object (15 properties)
+│ ├── AppLogsConfiguration: *Object (2 properties)
+│ │ ├── Destination: *string
+│ │ └── LogAnalyticsConfiguration: *Object (1 property)
+│ │ └── CustomerId: *string
+│ ├── CustomDomainConfiguration: *Object (5 properties)
+│ │ ├── CustomDomainVerificationId: *string
+│ │ ├── DnsSuffix: *string
+│ │ ├── ExpirationDate: *string
+│ │ ├── SubjectName: *string
+│ │ └── Thumbprint: *string
+│ ├── DaprConfiguration: *Object (1 property)
+│ │ └── Version: *string
+│ ├── DefaultDomain: *string
+│ ├── DeploymentErrors: *string
+│ ├── EventStreamEndpoint: *string
+│ ├── InfrastructureResourceGroup: *string
+│ ├── KedaConfiguration: *Object (1 property)
+│ │ └── Version: *string
+│ ├── PeerAuthentication: *Object (1 property)
+│ │ └── Mtls: *Object (1 property)
+│ │ └── Enabled: *bool
+│ ├── PeerTrafficConfiguration: *Object (1 property)
+│ │ └── Encryption: *Object (1 property)
+│ │ └── Enabled: *bool
+│ ├── ProvisioningState: *Enum (10 values)
+│ │ ├── "Canceled"
+│ │ ├── "Failed"
+│ │ ├── "InfrastructureSetupComplete"
+│ │ ├── "InfrastructureSetupInProgress"
+│ │ ├── "InitializationInProgress"
+│ │ ├── "ScheduledForDelete"
+│ │ ├── "Succeeded"
+│ │ ├── "UpgradeFailed"
+│ │ ├── "UpgradeRequested"
+│ │ └── "Waiting"
+│ ├── StaticIp: *string
+│ ├── VnetConfiguration: *Object (5 properties)
+│ │ ├── DockerBridgeCidr: *string
+│ │ ├── InfrastructureSubnetId: *string
+│ │ ├── Internal: *bool
+│ │ ├── PlatformReservedCidr: *string
+│ │ └── PlatformReservedDnsIP: *string
+│ ├── WorkloadProfiles: Object (4 properties)[]
+│ │ ├── MaximumCount: *int
+│ │ ├── MinimumCount: *int
+│ │ ├── Name: *string
+│ │ └── WorkloadProfileType: *string
+│ └── ZoneRedundant: *bool
+├── 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
+ManagedEnvironment_Spec: Object (5 properties)
+├── Kind: *string
+├── Location: *string
+├── Name: string
+├── Properties: *Object (10 properties)
+│ ├── AppLogsConfiguration: *Object (2 properties)
+│ │ ├── Destination: *string
+│ │ └── LogAnalyticsConfiguration: *Object (2 properties)
+│ │ ├── CustomerId: *string
+│ │ └── SharedKey: *string
+│ ├── CustomDomainConfiguration: *Object (3 properties)
+│ │ ├── CertificatePassword: *string
+│ │ ├── CertificateValue: *string
+│ │ └── DnsSuffix: *string
+│ ├── DaprAIConnectionString: *string
+│ ├── DaprAIInstrumentationKey: *string
+│ ├── InfrastructureResourceGroup: *string
+│ ├── PeerAuthentication: *Object (1 property)
+│ │ └── Mtls: *Object (1 property)
+│ │ └── Enabled: *bool
+│ ├── PeerTrafficConfiguration: *Object (1 property)
+│ │ └── Encryption: *Object (1 property)
+│ │ └── Enabled: *bool
+│ ├── VnetConfiguration: *Object (5 properties)
+│ │ ├── DockerBridgeCidr: *string
+│ │ ├── InfrastructureSubnetId: *string
+│ │ ├── Internal: *bool
+│ │ ├── PlatformReservedCidr: *string
+│ │ └── PlatformReservedDnsIP: *string
+│ ├── WorkloadProfiles: Object (4 properties)[]
+│ │ ├── MaximumCount: *int
+│ │ ├── MinimumCount: *int
+│ │ ├── Name: *string
+│ │ └── WorkloadProfileType: *string
+│ └── ZoneRedundant: *bool
+└── Tags: map[string]string
diff --git a/v2/api/app/v1api20240301/auth_config_types_gen.go b/v2/api/app/v1api20240301/auth_config_types_gen.go
new file mode 100644
index 00000000000..9d2e6ef2a45
--- /dev/null
+++ b/v2/api/app/v1api20240301/auth_config_types_gen.go
@@ -0,0 +1,12524 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package v1api20240301
+
+import (
+ "fmt"
+ arm "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/arm"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/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/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/secrets"
+ "github.com/rotisserie/eris"
+ 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: /app/resource-manager/Microsoft.App/stable/2024-03-01/AuthConfigs.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/authConfigs/{authConfigName}
+type AuthConfig struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty"`
+ Spec AuthConfig_Spec `json:"spec,omitempty"`
+ Status AuthConfig_STATUS `json:"status,omitempty"`
+}
+
+var _ conditions.Conditioner = &AuthConfig{}
+
+// GetConditions returns the conditions of the resource
+func (config *AuthConfig) GetConditions() conditions.Conditions {
+ return config.Status.Conditions
+}
+
+// SetConditions sets the conditions on the resource status
+func (config *AuthConfig) SetConditions(conditions conditions.Conditions) {
+ config.Status.Conditions = conditions
+}
+
+var _ conversion.Convertible = &AuthConfig{}
+
+// ConvertFrom populates our AuthConfig from the provided hub AuthConfig
+func (config *AuthConfig) ConvertFrom(hub conversion.Hub) error {
+ source, ok := hub.(*storage.AuthConfig)
+ if !ok {
+ return fmt.Errorf("expected app/v1api20240301/storage/AuthConfig but received %T instead", hub)
+ }
+
+ return config.AssignProperties_From_AuthConfig(source)
+}
+
+// ConvertTo populates the provided hub AuthConfig from our AuthConfig
+func (config *AuthConfig) ConvertTo(hub conversion.Hub) error {
+ destination, ok := hub.(*storage.AuthConfig)
+ if !ok {
+ return fmt.Errorf("expected app/v1api20240301/storage/AuthConfig but received %T instead", hub)
+ }
+
+ return config.AssignProperties_To_AuthConfig(destination)
+}
+
+// +kubebuilder:webhook:path=/mutate-app-azure-com-v1api20240301-authconfig,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=app.azure.com,resources=authconfigs,verbs=create;update,versions=v1api20240301,name=default.v1api20240301.authconfigs.app.azure.com,admissionReviewVersions=v1
+
+var _ admission.Defaulter = &AuthConfig{}
+
+// Default applies defaults to the AuthConfig resource
+func (config *AuthConfig) Default() {
+ config.defaultImpl()
+ var temp any = config
+ if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok {
+ runtimeDefaulter.CustomDefault()
+ }
+}
+
+// defaultAzureName defaults the Azure name of the resource to the Kubernetes name
+func (config *AuthConfig) defaultAzureName() {
+ if config.Spec.AzureName == "" {
+ config.Spec.AzureName = config.Name
+ }
+}
+
+// defaultImpl applies the code generated defaults to the AuthConfig resource
+func (config *AuthConfig) defaultImpl() { config.defaultAzureName() }
+
+var _ configmaps.Exporter = &AuthConfig{}
+
+// ConfigMapDestinationExpressions returns the Spec.OperatorSpec.ConfigMapExpressions property
+func (config *AuthConfig) ConfigMapDestinationExpressions() []*core.DestinationExpression {
+ if config.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return config.Spec.OperatorSpec.ConfigMapExpressions
+}
+
+var _ secrets.Exporter = &AuthConfig{}
+
+// SecretDestinationExpressions returns the Spec.OperatorSpec.SecretExpressions property
+func (config *AuthConfig) SecretDestinationExpressions() []*core.DestinationExpression {
+ if config.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return config.Spec.OperatorSpec.SecretExpressions
+}
+
+var _ genruntime.ImportableResource = &AuthConfig{}
+
+// InitializeSpec initializes the spec for this resource from the given status
+func (config *AuthConfig) InitializeSpec(status genruntime.ConvertibleStatus) error {
+ if s, ok := status.(*AuthConfig_STATUS); ok {
+ return config.Spec.Initialize_From_AuthConfig_STATUS(s)
+ }
+
+ return fmt.Errorf("expected Status of type AuthConfig_STATUS but received %T instead", status)
+}
+
+var _ genruntime.KubernetesResource = &AuthConfig{}
+
+// AzureName returns the Azure name of the resource
+func (config *AuthConfig) AzureName() string {
+ return config.Spec.AzureName
+}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (config AuthConfig) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetResourceScope returns the scope of the resource
+func (config *AuthConfig) GetResourceScope() genruntime.ResourceScope {
+ return genruntime.ResourceScopeResourceGroup
+}
+
+// GetSpec returns the specification of this resource
+func (config *AuthConfig) GetSpec() genruntime.ConvertibleSpec {
+ return &config.Spec
+}
+
+// GetStatus returns the status of this resource
+func (config *AuthConfig) GetStatus() genruntime.ConvertibleStatus {
+ return &config.Status
+}
+
+// GetSupportedOperations returns the operations supported by the resource
+func (config *AuthConfig) GetSupportedOperations() []genruntime.ResourceOperation {
+ return []genruntime.ResourceOperation{
+ genruntime.ResourceOperationDelete,
+ genruntime.ResourceOperationGet,
+ genruntime.ResourceOperationPut,
+ }
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/containerApps/authConfigs"
+func (config *AuthConfig) GetType() string {
+ return "Microsoft.App/containerApps/authConfigs"
+}
+
+// NewEmptyStatus returns a new empty (blank) status
+func (config *AuthConfig) NewEmptyStatus() genruntime.ConvertibleStatus {
+ return &AuthConfig_STATUS{}
+}
+
+// Owner returns the ResourceReference of the owner
+func (config *AuthConfig) Owner() *genruntime.ResourceReference {
+ if config.Spec.Owner == nil {
+ return nil
+ }
+
+ group, kind := genruntime.LookupOwnerGroupKind(config.Spec)
+ return config.Spec.Owner.AsResourceReference(group, kind)
+}
+
+// SetStatus sets the status of this resource
+func (config *AuthConfig) SetStatus(status genruntime.ConvertibleStatus) error {
+ // If we have exactly the right type of status, assign it
+ if st, ok := status.(*AuthConfig_STATUS); ok {
+ config.Status = *st
+ return nil
+ }
+
+ // Convert status to required version
+ var st AuthConfig_STATUS
+ err := status.ConvertStatusTo(&st)
+ if err != nil {
+ return eris.Wrap(err, "failed to convert status")
+ }
+
+ config.Status = st
+ return nil
+}
+
+// +kubebuilder:webhook:path=/validate-app-azure-com-v1api20240301-authconfig,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=app.azure.com,resources=authconfigs,verbs=create;update,versions=v1api20240301,name=validate.v1api20240301.authconfigs.app.azure.com,admissionReviewVersions=v1
+
+var _ admission.Validator = &AuthConfig{}
+
+// ValidateCreate validates the creation of the resource
+func (config *AuthConfig) ValidateCreate() (admission.Warnings, error) {
+ validations := config.createValidations()
+ var temp any = config
+ if runtimeValidator, ok := temp.(genruntime.Validator); ok {
+ validations = append(validations, runtimeValidator.CreateValidations()...)
+ }
+ return genruntime.ValidateCreate(validations)
+}
+
+// ValidateDelete validates the deletion of the resource
+func (config *AuthConfig) ValidateDelete() (admission.Warnings, error) {
+ validations := config.deleteValidations()
+ var temp any = config
+ if runtimeValidator, ok := temp.(genruntime.Validator); ok {
+ validations = append(validations, runtimeValidator.DeleteValidations()...)
+ }
+ return genruntime.ValidateDelete(validations)
+}
+
+// ValidateUpdate validates an update of the resource
+func (config *AuthConfig) ValidateUpdate(old runtime.Object) (admission.Warnings, error) {
+ validations := config.updateValidations()
+ var temp any = config
+ 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 (config *AuthConfig) createValidations() []func() (admission.Warnings, error) {
+ return []func() (admission.Warnings, error){config.validateResourceReferences, config.validateOwnerReference, config.validateSecretDestinations, config.validateConfigMapDestinations}
+}
+
+// deleteValidations validates the deletion of the resource
+func (config *AuthConfig) deleteValidations() []func() (admission.Warnings, error) {
+ return nil
+}
+
+// updateValidations validates the update of the resource
+func (config *AuthConfig) updateValidations() []func(old runtime.Object) (admission.Warnings, error) {
+ return []func(old runtime.Object) (admission.Warnings, error){
+ func(old runtime.Object) (admission.Warnings, error) {
+ return config.validateResourceReferences()
+ },
+ config.validateWriteOnceProperties,
+ func(old runtime.Object) (admission.Warnings, error) {
+ return config.validateOwnerReference()
+ },
+ func(old runtime.Object) (admission.Warnings, error) {
+ return config.validateSecretDestinations()
+ },
+ func(old runtime.Object) (admission.Warnings, error) {
+ return config.validateConfigMapDestinations()
+ },
+ }
+}
+
+// validateConfigMapDestinations validates there are no colliding genruntime.ConfigMapDestinations
+func (config *AuthConfig) validateConfigMapDestinations() (admission.Warnings, error) {
+ if config.Spec.OperatorSpec == nil {
+ return nil, nil
+ }
+ return configmaps.ValidateDestinations(config, nil, config.Spec.OperatorSpec.ConfigMapExpressions)
+}
+
+// validateOwnerReference validates the owner field
+func (config *AuthConfig) validateOwnerReference() (admission.Warnings, error) {
+ return genruntime.ValidateOwner(config)
+}
+
+// validateResourceReferences validates all resource references
+func (config *AuthConfig) validateResourceReferences() (admission.Warnings, error) {
+ refs, err := reflecthelpers.FindResourceReferences(&config.Spec)
+ if err != nil {
+ return nil, err
+ }
+ return genruntime.ValidateResourceReferences(refs)
+}
+
+// validateSecretDestinations validates there are no colliding genruntime.SecretDestination's
+func (config *AuthConfig) validateSecretDestinations() (admission.Warnings, error) {
+ if config.Spec.OperatorSpec == nil {
+ return nil, nil
+ }
+ return secrets.ValidateDestinations(config, nil, config.Spec.OperatorSpec.SecretExpressions)
+}
+
+// validateWriteOnceProperties validates all WriteOnce properties
+func (config *AuthConfig) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) {
+ oldObj, ok := old.(*AuthConfig)
+ if !ok {
+ return nil, nil
+ }
+
+ return genruntime.ValidateWriteOnceProperties(oldObj, config)
+}
+
+// AssignProperties_From_AuthConfig populates our AuthConfig from the provided source AuthConfig
+func (config *AuthConfig) AssignProperties_From_AuthConfig(source *storage.AuthConfig) error {
+
+ // ObjectMeta
+ config.ObjectMeta = *source.ObjectMeta.DeepCopy()
+
+ // Spec
+ var spec AuthConfig_Spec
+ err := spec.AssignProperties_From_AuthConfig_Spec(&source.Spec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AuthConfig_Spec() to populate field Spec")
+ }
+ config.Spec = spec
+
+ // Status
+ var status AuthConfig_STATUS
+ err = status.AssignProperties_From_AuthConfig_STATUS(&source.Status)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AuthConfig_STATUS() to populate field Status")
+ }
+ config.Status = status
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AuthConfig populates the provided destination AuthConfig from our AuthConfig
+func (config *AuthConfig) AssignProperties_To_AuthConfig(destination *storage.AuthConfig) error {
+
+ // ObjectMeta
+ destination.ObjectMeta = *config.ObjectMeta.DeepCopy()
+
+ // Spec
+ var spec storage.AuthConfig_Spec
+ err := config.Spec.AssignProperties_To_AuthConfig_Spec(&spec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AuthConfig_Spec() to populate field Spec")
+ }
+ destination.Spec = spec
+
+ // Status
+ var status storage.AuthConfig_STATUS
+ err = config.Status.AssignProperties_To_AuthConfig_STATUS(&status)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AuthConfig_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 (config *AuthConfig) OriginalGVK() *schema.GroupVersionKind {
+ return &schema.GroupVersionKind{
+ Group: GroupVersion.Group,
+ Version: config.Spec.OriginalVersion(),
+ Kind: "AuthConfig",
+ }
+}
+
+// +kubebuilder:object:root=true
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/AuthConfigs.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/authConfigs/{authConfigName}
+type AuthConfigList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata,omitempty"`
+ Items []AuthConfig `json:"items"`
+}
+
+// +kubebuilder:validation:Enum={"2024-03-01"}
+type APIVersion string
+
+const APIVersion_Value = APIVersion("2024-03-01")
+
+type AuthConfig_Spec struct {
+ // 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"`
+
+ // EncryptionSettings: The configuration settings of the secrets references of encryption key and signing key for
+ // ContainerApp Service Authentication/Authorization.
+ EncryptionSettings *EncryptionSettings `json:"encryptionSettings,omitempty"`
+
+ // GlobalValidation: The configuration settings that determines the validation flow of users using Service
+ // Authentication/Authorization.
+ GlobalValidation *GlobalValidation `json:"globalValidation,omitempty"`
+
+ // HttpSettings: The configuration settings of the HTTP requests for authentication and authorization requests made against
+ // ContainerApp Service Authentication/Authorization.
+ HttpSettings *HttpSettings `json:"httpSettings,omitempty"`
+
+ // IdentityProviders: The configuration settings of each of the identity providers used to configure ContainerApp Service
+ // Authentication/Authorization.
+ IdentityProviders *IdentityProviders `json:"identityProviders,omitempty"`
+
+ // Login: The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+ Login *Login `json:"login,omitempty"`
+
+ // OperatorSpec: The specification for configuring operator behavior. This field is interpreted by the operator and not
+ // passed directly to Azure
+ OperatorSpec *AuthConfigOperatorSpec `json:"operatorSpec,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 app.azure.com/ContainerApp resource
+ Owner *genruntime.KnownResourceReference `group:"app.azure.com" json:"owner,omitempty" kind:"ContainerApp"`
+
+ // Platform: The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+ Platform *AuthPlatform `json:"platform,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AuthConfig_Spec{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (config *AuthConfig_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if config == nil {
+ return nil, nil
+ }
+ result := &arm.AuthConfig_Spec{}
+
+ // Set property "Name":
+ result.Name = resolved.Name
+
+ // Set property "Properties":
+ if config.EncryptionSettings != nil ||
+ config.GlobalValidation != nil ||
+ config.HttpSettings != nil ||
+ config.IdentityProviders != nil ||
+ config.Login != nil ||
+ config.Platform != nil {
+ result.Properties = &arm.ContainerApps_AuthConfig_Properties_Spec{}
+ }
+ if config.EncryptionSettings != nil {
+ encryptionSettings_ARM, err := (*config.EncryptionSettings).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ encryptionSettings := *encryptionSettings_ARM.(*arm.EncryptionSettings)
+ result.Properties.EncryptionSettings = &encryptionSettings
+ }
+ if config.GlobalValidation != nil {
+ globalValidation_ARM, err := (*config.GlobalValidation).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ globalValidation := *globalValidation_ARM.(*arm.GlobalValidation)
+ result.Properties.GlobalValidation = &globalValidation
+ }
+ if config.HttpSettings != nil {
+ httpSettings_ARM, err := (*config.HttpSettings).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ httpSettings := *httpSettings_ARM.(*arm.HttpSettings)
+ result.Properties.HttpSettings = &httpSettings
+ }
+ if config.IdentityProviders != nil {
+ identityProviders_ARM, err := (*config.IdentityProviders).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ identityProviders := *identityProviders_ARM.(*arm.IdentityProviders)
+ result.Properties.IdentityProviders = &identityProviders
+ }
+ if config.Login != nil {
+ login_ARM, err := (*config.Login).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ login := *login_ARM.(*arm.Login)
+ result.Properties.Login = &login
+ }
+ if config.Platform != nil {
+ platform_ARM, err := (*config.Platform).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ platform := *platform_ARM.(*arm.AuthPlatform)
+ result.Properties.Platform = &platform
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *AuthConfig_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AuthConfig_Spec{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *AuthConfig_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AuthConfig_Spec)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AuthConfig_Spec, got %T", armInput)
+ }
+
+ // Set property "AzureName":
+ config.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name))
+
+ // Set property "EncryptionSettings":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.EncryptionSettings != nil {
+ var encryptionSettings1 EncryptionSettings
+ err := encryptionSettings1.PopulateFromARM(owner, *typedInput.Properties.EncryptionSettings)
+ if err != nil {
+ return err
+ }
+ encryptionSettings := encryptionSettings1
+ config.EncryptionSettings = &encryptionSettings
+ }
+ }
+
+ // Set property "GlobalValidation":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.GlobalValidation != nil {
+ var globalValidation1 GlobalValidation
+ err := globalValidation1.PopulateFromARM(owner, *typedInput.Properties.GlobalValidation)
+ if err != nil {
+ return err
+ }
+ globalValidation := globalValidation1
+ config.GlobalValidation = &globalValidation
+ }
+ }
+
+ // Set property "HttpSettings":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.HttpSettings != nil {
+ var httpSettings1 HttpSettings
+ err := httpSettings1.PopulateFromARM(owner, *typedInput.Properties.HttpSettings)
+ if err != nil {
+ return err
+ }
+ httpSettings := httpSettings1
+ config.HttpSettings = &httpSettings
+ }
+ }
+
+ // Set property "IdentityProviders":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.IdentityProviders != nil {
+ var identityProviders1 IdentityProviders
+ err := identityProviders1.PopulateFromARM(owner, *typedInput.Properties.IdentityProviders)
+ if err != nil {
+ return err
+ }
+ identityProviders := identityProviders1
+ config.IdentityProviders = &identityProviders
+ }
+ }
+
+ // Set property "Login":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Login != nil {
+ var login1 Login
+ err := login1.PopulateFromARM(owner, *typedInput.Properties.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ config.Login = &login
+ }
+ }
+
+ // no assignment for property "OperatorSpec"
+
+ // Set property "Owner":
+ config.Owner = &genruntime.KnownResourceReference{
+ Name: owner.Name,
+ ARMID: owner.ARMID,
+ }
+
+ // Set property "Platform":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Platform != nil {
+ var platform1 AuthPlatform
+ err := platform1.PopulateFromARM(owner, *typedInput.Properties.Platform)
+ if err != nil {
+ return err
+ }
+ platform := platform1
+ config.Platform = &platform
+ }
+ }
+
+ // No error
+ return nil
+}
+
+var _ genruntime.ConvertibleSpec = &AuthConfig_Spec{}
+
+// ConvertSpecFrom populates our AuthConfig_Spec from the provided source
+func (config *AuthConfig_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error {
+ src, ok := source.(*storage.AuthConfig_Spec)
+ if ok {
+ // Populate our instance from source
+ return config.AssignProperties_From_AuthConfig_Spec(src)
+ }
+
+ // Convert to an intermediate form
+ src = &storage.AuthConfig_Spec{}
+ err := src.ConvertSpecFrom(source)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertSpecFrom()")
+ }
+
+ // Update our instance from src
+ err = config.AssignProperties_From_AuthConfig_Spec(src)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertSpecFrom()")
+ }
+
+ return nil
+}
+
+// ConvertSpecTo populates the provided destination from our AuthConfig_Spec
+func (config *AuthConfig_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error {
+ dst, ok := destination.(*storage.AuthConfig_Spec)
+ if ok {
+ // Populate destination from our instance
+ return config.AssignProperties_To_AuthConfig_Spec(dst)
+ }
+
+ // Convert to an intermediate form
+ dst = &storage.AuthConfig_Spec{}
+ err := config.AssignProperties_To_AuthConfig_Spec(dst)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertSpecTo()")
+ }
+
+ // Update dst from our instance
+ err = dst.ConvertSpecTo(destination)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertSpecTo()")
+ }
+
+ return nil
+}
+
+// AssignProperties_From_AuthConfig_Spec populates our AuthConfig_Spec from the provided source AuthConfig_Spec
+func (config *AuthConfig_Spec) AssignProperties_From_AuthConfig_Spec(source *storage.AuthConfig_Spec) error {
+
+ // AzureName
+ config.AzureName = source.AzureName
+
+ // EncryptionSettings
+ if source.EncryptionSettings != nil {
+ var encryptionSetting EncryptionSettings
+ err := encryptionSetting.AssignProperties_From_EncryptionSettings(source.EncryptionSettings)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_EncryptionSettings() to populate field EncryptionSettings")
+ }
+ config.EncryptionSettings = &encryptionSetting
+ } else {
+ config.EncryptionSettings = nil
+ }
+
+ // GlobalValidation
+ if source.GlobalValidation != nil {
+ var globalValidation GlobalValidation
+ err := globalValidation.AssignProperties_From_GlobalValidation(source.GlobalValidation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_GlobalValidation() to populate field GlobalValidation")
+ }
+ config.GlobalValidation = &globalValidation
+ } else {
+ config.GlobalValidation = nil
+ }
+
+ // HttpSettings
+ if source.HttpSettings != nil {
+ var httpSetting HttpSettings
+ err := httpSetting.AssignProperties_From_HttpSettings(source.HttpSettings)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_HttpSettings() to populate field HttpSettings")
+ }
+ config.HttpSettings = &httpSetting
+ } else {
+ config.HttpSettings = nil
+ }
+
+ // IdentityProviders
+ if source.IdentityProviders != nil {
+ var identityProvider IdentityProviders
+ err := identityProvider.AssignProperties_From_IdentityProviders(source.IdentityProviders)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_IdentityProviders() to populate field IdentityProviders")
+ }
+ config.IdentityProviders = &identityProvider
+ } else {
+ config.IdentityProviders = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login Login
+ err := login.AssignProperties_From_Login(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Login() to populate field Login")
+ }
+ config.Login = &login
+ } else {
+ config.Login = nil
+ }
+
+ // OperatorSpec
+ if source.OperatorSpec != nil {
+ var operatorSpec AuthConfigOperatorSpec
+ err := operatorSpec.AssignProperties_From_AuthConfigOperatorSpec(source.OperatorSpec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AuthConfigOperatorSpec() to populate field OperatorSpec")
+ }
+ config.OperatorSpec = &operatorSpec
+ } else {
+ config.OperatorSpec = nil
+ }
+
+ // Owner
+ if source.Owner != nil {
+ owner := source.Owner.Copy()
+ config.Owner = &owner
+ } else {
+ config.Owner = nil
+ }
+
+ // Platform
+ if source.Platform != nil {
+ var platform AuthPlatform
+ err := platform.AssignProperties_From_AuthPlatform(source.Platform)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AuthPlatform() to populate field Platform")
+ }
+ config.Platform = &platform
+ } else {
+ config.Platform = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AuthConfig_Spec populates the provided destination AuthConfig_Spec from our AuthConfig_Spec
+func (config *AuthConfig_Spec) AssignProperties_To_AuthConfig_Spec(destination *storage.AuthConfig_Spec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AzureName
+ destination.AzureName = config.AzureName
+
+ // EncryptionSettings
+ if config.EncryptionSettings != nil {
+ var encryptionSetting storage.EncryptionSettings
+ err := config.EncryptionSettings.AssignProperties_To_EncryptionSettings(&encryptionSetting)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_EncryptionSettings() to populate field EncryptionSettings")
+ }
+ destination.EncryptionSettings = &encryptionSetting
+ } else {
+ destination.EncryptionSettings = nil
+ }
+
+ // GlobalValidation
+ if config.GlobalValidation != nil {
+ var globalValidation storage.GlobalValidation
+ err := config.GlobalValidation.AssignProperties_To_GlobalValidation(&globalValidation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_GlobalValidation() to populate field GlobalValidation")
+ }
+ destination.GlobalValidation = &globalValidation
+ } else {
+ destination.GlobalValidation = nil
+ }
+
+ // HttpSettings
+ if config.HttpSettings != nil {
+ var httpSetting storage.HttpSettings
+ err := config.HttpSettings.AssignProperties_To_HttpSettings(&httpSetting)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_HttpSettings() to populate field HttpSettings")
+ }
+ destination.HttpSettings = &httpSetting
+ } else {
+ destination.HttpSettings = nil
+ }
+
+ // IdentityProviders
+ if config.IdentityProviders != nil {
+ var identityProvider storage.IdentityProviders
+ err := config.IdentityProviders.AssignProperties_To_IdentityProviders(&identityProvider)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_IdentityProviders() to populate field IdentityProviders")
+ }
+ destination.IdentityProviders = &identityProvider
+ } else {
+ destination.IdentityProviders = nil
+ }
+
+ // Login
+ if config.Login != nil {
+ var login storage.Login
+ err := config.Login.AssignProperties_To_Login(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Login() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // OperatorSpec
+ if config.OperatorSpec != nil {
+ var operatorSpec storage.AuthConfigOperatorSpec
+ err := config.OperatorSpec.AssignProperties_To_AuthConfigOperatorSpec(&operatorSpec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AuthConfigOperatorSpec() to populate field OperatorSpec")
+ }
+ destination.OperatorSpec = &operatorSpec
+ } else {
+ destination.OperatorSpec = nil
+ }
+
+ // OriginalVersion
+ destination.OriginalVersion = config.OriginalVersion()
+
+ // Owner
+ if config.Owner != nil {
+ owner := config.Owner.Copy()
+ destination.Owner = &owner
+ } else {
+ destination.Owner = nil
+ }
+
+ // Platform
+ if config.Platform != nil {
+ var platform storage.AuthPlatform
+ err := config.Platform.AssignProperties_To_AuthPlatform(&platform)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AuthPlatform() to populate field Platform")
+ }
+ destination.Platform = &platform
+ } else {
+ destination.Platform = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AuthConfig_STATUS populates our AuthConfig_Spec from the provided source AuthConfig_STATUS
+func (config *AuthConfig_Spec) Initialize_From_AuthConfig_STATUS(source *AuthConfig_STATUS) error {
+
+ // EncryptionSettings
+ if source.EncryptionSettings != nil {
+ var encryptionSetting EncryptionSettings
+ err := encryptionSetting.Initialize_From_EncryptionSettings_STATUS(source.EncryptionSettings)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_EncryptionSettings_STATUS() to populate field EncryptionSettings")
+ }
+ config.EncryptionSettings = &encryptionSetting
+ } else {
+ config.EncryptionSettings = nil
+ }
+
+ // GlobalValidation
+ if source.GlobalValidation != nil {
+ var globalValidation GlobalValidation
+ err := globalValidation.Initialize_From_GlobalValidation_STATUS(source.GlobalValidation)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_GlobalValidation_STATUS() to populate field GlobalValidation")
+ }
+ config.GlobalValidation = &globalValidation
+ } else {
+ config.GlobalValidation = nil
+ }
+
+ // HttpSettings
+ if source.HttpSettings != nil {
+ var httpSetting HttpSettings
+ err := httpSetting.Initialize_From_HttpSettings_STATUS(source.HttpSettings)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_HttpSettings_STATUS() to populate field HttpSettings")
+ }
+ config.HttpSettings = &httpSetting
+ } else {
+ config.HttpSettings = nil
+ }
+
+ // IdentityProviders
+ if source.IdentityProviders != nil {
+ var identityProvider IdentityProviders
+ err := identityProvider.Initialize_From_IdentityProviders_STATUS(source.IdentityProviders)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_IdentityProviders_STATUS() to populate field IdentityProviders")
+ }
+ config.IdentityProviders = &identityProvider
+ } else {
+ config.IdentityProviders = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login Login
+ err := login.Initialize_From_Login_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Login_STATUS() to populate field Login")
+ }
+ config.Login = &login
+ } else {
+ config.Login = nil
+ }
+
+ // Platform
+ if source.Platform != nil {
+ var platform AuthPlatform
+ err := platform.Initialize_From_AuthPlatform_STATUS(source.Platform)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AuthPlatform_STATUS() to populate field Platform")
+ }
+ config.Platform = &platform
+ } else {
+ config.Platform = nil
+ }
+
+ // No error
+ return nil
+}
+
+// OriginalVersion returns the original API version used to create the resource.
+func (config *AuthConfig_Spec) OriginalVersion() string {
+ return GroupVersion.Version
+}
+
+// SetAzureName sets the Azure name of the resource
+func (config *AuthConfig_Spec) SetAzureName(azureName string) { config.AzureName = azureName }
+
+type AuthConfig_STATUS struct {
+ // Conditions: The observed state of the resource
+ Conditions []conditions.Condition `json:"conditions,omitempty"`
+
+ // EncryptionSettings: The configuration settings of the secrets references of encryption key and signing key for
+ // ContainerApp Service Authentication/Authorization.
+ EncryptionSettings *EncryptionSettings_STATUS `json:"encryptionSettings,omitempty"`
+
+ // GlobalValidation: The configuration settings that determines the validation flow of users using Service
+ // Authentication/Authorization.
+ GlobalValidation *GlobalValidation_STATUS `json:"globalValidation,omitempty"`
+
+ // HttpSettings: The configuration settings of the HTTP requests for authentication and authorization requests made against
+ // ContainerApp Service Authentication/Authorization.
+ HttpSettings *HttpSettings_STATUS `json:"httpSettings,omitempty"`
+
+ // Id: Fully qualified resource ID for the resource. Ex -
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ Id *string `json:"id,omitempty"`
+
+ // IdentityProviders: The configuration settings of each of the identity providers used to configure ContainerApp Service
+ // Authentication/Authorization.
+ IdentityProviders *IdentityProviders_STATUS `json:"identityProviders,omitempty"`
+
+ // Login: The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+ Login *Login_STATUS `json:"login,omitempty"`
+
+ // Name: The name of the resource
+ Name *string `json:"name,omitempty"`
+
+ // Platform: The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+ Platform *AuthPlatform_STATUS `json:"platform,omitempty"`
+
+ // SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ SystemData *SystemData_STATUS `json:"systemData,omitempty"`
+
+ // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
+ Type *string `json:"type,omitempty"`
+}
+
+var _ genruntime.ConvertibleStatus = &AuthConfig_STATUS{}
+
+// ConvertStatusFrom populates our AuthConfig_STATUS from the provided source
+func (config *AuthConfig_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error {
+ src, ok := source.(*storage.AuthConfig_STATUS)
+ if ok {
+ // Populate our instance from source
+ return config.AssignProperties_From_AuthConfig_STATUS(src)
+ }
+
+ // Convert to an intermediate form
+ src = &storage.AuthConfig_STATUS{}
+ err := src.ConvertStatusFrom(source)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertStatusFrom()")
+ }
+
+ // Update our instance from src
+ err = config.AssignProperties_From_AuthConfig_STATUS(src)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertStatusFrom()")
+ }
+
+ return nil
+}
+
+// ConvertStatusTo populates the provided destination from our AuthConfig_STATUS
+func (config *AuthConfig_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error {
+ dst, ok := destination.(*storage.AuthConfig_STATUS)
+ if ok {
+ // Populate destination from our instance
+ return config.AssignProperties_To_AuthConfig_STATUS(dst)
+ }
+
+ // Convert to an intermediate form
+ dst = &storage.AuthConfig_STATUS{}
+ err := config.AssignProperties_To_AuthConfig_STATUS(dst)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertStatusTo()")
+ }
+
+ // Update dst from our instance
+ err = dst.ConvertStatusTo(destination)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertStatusTo()")
+ }
+
+ return nil
+}
+
+var _ genruntime.FromARMConverter = &AuthConfig_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *AuthConfig_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AuthConfig_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *AuthConfig_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AuthConfig_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AuthConfig_STATUS, got %T", armInput)
+ }
+
+ // no assignment for property "Conditions"
+
+ // Set property "EncryptionSettings":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.EncryptionSettings != nil {
+ var encryptionSettings1 EncryptionSettings_STATUS
+ err := encryptionSettings1.PopulateFromARM(owner, *typedInput.Properties.EncryptionSettings)
+ if err != nil {
+ return err
+ }
+ encryptionSettings := encryptionSettings1
+ config.EncryptionSettings = &encryptionSettings
+ }
+ }
+
+ // Set property "GlobalValidation":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.GlobalValidation != nil {
+ var globalValidation1 GlobalValidation_STATUS
+ err := globalValidation1.PopulateFromARM(owner, *typedInput.Properties.GlobalValidation)
+ if err != nil {
+ return err
+ }
+ globalValidation := globalValidation1
+ config.GlobalValidation = &globalValidation
+ }
+ }
+
+ // Set property "HttpSettings":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.HttpSettings != nil {
+ var httpSettings1 HttpSettings_STATUS
+ err := httpSettings1.PopulateFromARM(owner, *typedInput.Properties.HttpSettings)
+ if err != nil {
+ return err
+ }
+ httpSettings := httpSettings1
+ config.HttpSettings = &httpSettings
+ }
+ }
+
+ // Set property "Id":
+ if typedInput.Id != nil {
+ id := *typedInput.Id
+ config.Id = &id
+ }
+
+ // Set property "IdentityProviders":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.IdentityProviders != nil {
+ var identityProviders1 IdentityProviders_STATUS
+ err := identityProviders1.PopulateFromARM(owner, *typedInput.Properties.IdentityProviders)
+ if err != nil {
+ return err
+ }
+ identityProviders := identityProviders1
+ config.IdentityProviders = &identityProviders
+ }
+ }
+
+ // Set property "Login":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Login != nil {
+ var login1 Login_STATUS
+ err := login1.PopulateFromARM(owner, *typedInput.Properties.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ config.Login = &login
+ }
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ config.Name = &name
+ }
+
+ // Set property "Platform":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Platform != nil {
+ var platform1 AuthPlatform_STATUS
+ err := platform1.PopulateFromARM(owner, *typedInput.Properties.Platform)
+ if err != nil {
+ return err
+ }
+ platform := platform1
+ config.Platform = &platform
+ }
+ }
+
+ // Set property "SystemData":
+ if typedInput.SystemData != nil {
+ var systemData1 SystemData_STATUS
+ err := systemData1.PopulateFromARM(owner, *typedInput.SystemData)
+ if err != nil {
+ return err
+ }
+ systemData := systemData1
+ config.SystemData = &systemData
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ config.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AuthConfig_STATUS populates our AuthConfig_STATUS from the provided source AuthConfig_STATUS
+func (config *AuthConfig_STATUS) AssignProperties_From_AuthConfig_STATUS(source *storage.AuthConfig_STATUS) error {
+
+ // Conditions
+ config.Conditions = genruntime.CloneSliceOfCondition(source.Conditions)
+
+ // EncryptionSettings
+ if source.EncryptionSettings != nil {
+ var encryptionSetting EncryptionSettings_STATUS
+ err := encryptionSetting.AssignProperties_From_EncryptionSettings_STATUS(source.EncryptionSettings)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_EncryptionSettings_STATUS() to populate field EncryptionSettings")
+ }
+ config.EncryptionSettings = &encryptionSetting
+ } else {
+ config.EncryptionSettings = nil
+ }
+
+ // GlobalValidation
+ if source.GlobalValidation != nil {
+ var globalValidation GlobalValidation_STATUS
+ err := globalValidation.AssignProperties_From_GlobalValidation_STATUS(source.GlobalValidation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_GlobalValidation_STATUS() to populate field GlobalValidation")
+ }
+ config.GlobalValidation = &globalValidation
+ } else {
+ config.GlobalValidation = nil
+ }
+
+ // HttpSettings
+ if source.HttpSettings != nil {
+ var httpSetting HttpSettings_STATUS
+ err := httpSetting.AssignProperties_From_HttpSettings_STATUS(source.HttpSettings)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_HttpSettings_STATUS() to populate field HttpSettings")
+ }
+ config.HttpSettings = &httpSetting
+ } else {
+ config.HttpSettings = nil
+ }
+
+ // Id
+ config.Id = genruntime.ClonePointerToString(source.Id)
+
+ // IdentityProviders
+ if source.IdentityProviders != nil {
+ var identityProvider IdentityProviders_STATUS
+ err := identityProvider.AssignProperties_From_IdentityProviders_STATUS(source.IdentityProviders)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_IdentityProviders_STATUS() to populate field IdentityProviders")
+ }
+ config.IdentityProviders = &identityProvider
+ } else {
+ config.IdentityProviders = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login Login_STATUS
+ err := login.AssignProperties_From_Login_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Login_STATUS() to populate field Login")
+ }
+ config.Login = &login
+ } else {
+ config.Login = nil
+ }
+
+ // Name
+ config.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Platform
+ if source.Platform != nil {
+ var platform AuthPlatform_STATUS
+ err := platform.AssignProperties_From_AuthPlatform_STATUS(source.Platform)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AuthPlatform_STATUS() to populate field Platform")
+ }
+ config.Platform = &platform
+ } else {
+ config.Platform = nil
+ }
+
+ // SystemData
+ if source.SystemData != nil {
+ var systemDatum SystemData_STATUS
+ err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData")
+ }
+ config.SystemData = &systemDatum
+ } else {
+ config.SystemData = nil
+ }
+
+ // Type
+ config.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AuthConfig_STATUS populates the provided destination AuthConfig_STATUS from our AuthConfig_STATUS
+func (config *AuthConfig_STATUS) AssignProperties_To_AuthConfig_STATUS(destination *storage.AuthConfig_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Conditions
+ destination.Conditions = genruntime.CloneSliceOfCondition(config.Conditions)
+
+ // EncryptionSettings
+ if config.EncryptionSettings != nil {
+ var encryptionSetting storage.EncryptionSettings_STATUS
+ err := config.EncryptionSettings.AssignProperties_To_EncryptionSettings_STATUS(&encryptionSetting)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_EncryptionSettings_STATUS() to populate field EncryptionSettings")
+ }
+ destination.EncryptionSettings = &encryptionSetting
+ } else {
+ destination.EncryptionSettings = nil
+ }
+
+ // GlobalValidation
+ if config.GlobalValidation != nil {
+ var globalValidation storage.GlobalValidation_STATUS
+ err := config.GlobalValidation.AssignProperties_To_GlobalValidation_STATUS(&globalValidation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_GlobalValidation_STATUS() to populate field GlobalValidation")
+ }
+ destination.GlobalValidation = &globalValidation
+ } else {
+ destination.GlobalValidation = nil
+ }
+
+ // HttpSettings
+ if config.HttpSettings != nil {
+ var httpSetting storage.HttpSettings_STATUS
+ err := config.HttpSettings.AssignProperties_To_HttpSettings_STATUS(&httpSetting)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_HttpSettings_STATUS() to populate field HttpSettings")
+ }
+ destination.HttpSettings = &httpSetting
+ } else {
+ destination.HttpSettings = nil
+ }
+
+ // Id
+ destination.Id = genruntime.ClonePointerToString(config.Id)
+
+ // IdentityProviders
+ if config.IdentityProviders != nil {
+ var identityProvider storage.IdentityProviders_STATUS
+ err := config.IdentityProviders.AssignProperties_To_IdentityProviders_STATUS(&identityProvider)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_IdentityProviders_STATUS() to populate field IdentityProviders")
+ }
+ destination.IdentityProviders = &identityProvider
+ } else {
+ destination.IdentityProviders = nil
+ }
+
+ // Login
+ if config.Login != nil {
+ var login storage.Login_STATUS
+ err := config.Login.AssignProperties_To_Login_STATUS(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Login_STATUS() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(config.Name)
+
+ // Platform
+ if config.Platform != nil {
+ var platform storage.AuthPlatform_STATUS
+ err := config.Platform.AssignProperties_To_AuthPlatform_STATUS(&platform)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AuthPlatform_STATUS() to populate field Platform")
+ }
+ destination.Platform = &platform
+ } else {
+ destination.Platform = nil
+ }
+
+ // SystemData
+ if config.SystemData != nil {
+ var systemDatum storage.SystemData_STATUS
+ err := config.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData")
+ }
+ destination.SystemData = &systemDatum
+ } else {
+ destination.SystemData = nil
+ }
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(config.Type)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure
+type AuthConfigOperatorSpec struct {
+ // ConfigMapExpressions: configures where to place operator written dynamic ConfigMaps (created with CEL expressions).
+ ConfigMapExpressions []*core.DestinationExpression `json:"configMapExpressions,omitempty"`
+
+ // SecretExpressions: configures where to place operator written dynamic secrets (created with CEL expressions).
+ SecretExpressions []*core.DestinationExpression `json:"secretExpressions,omitempty"`
+}
+
+// AssignProperties_From_AuthConfigOperatorSpec populates our AuthConfigOperatorSpec from the provided source AuthConfigOperatorSpec
+func (operator *AuthConfigOperatorSpec) AssignProperties_From_AuthConfigOperatorSpec(source *storage.AuthConfigOperatorSpec) error {
+
+ // ConfigMapExpressions
+ if source.ConfigMapExpressions != nil {
+ configMapExpressionList := make([]*core.DestinationExpression, len(source.ConfigMapExpressions))
+ for configMapExpressionIndex, configMapExpressionItem := range source.ConfigMapExpressions {
+ // Shadow the loop variable to avoid aliasing
+ configMapExpressionItem := configMapExpressionItem
+ if configMapExpressionItem != nil {
+ configMapExpression := *configMapExpressionItem.DeepCopy()
+ configMapExpressionList[configMapExpressionIndex] = &configMapExpression
+ } else {
+ configMapExpressionList[configMapExpressionIndex] = nil
+ }
+ }
+ operator.ConfigMapExpressions = configMapExpressionList
+ } else {
+ operator.ConfigMapExpressions = nil
+ }
+
+ // SecretExpressions
+ if source.SecretExpressions != nil {
+ secretExpressionList := make([]*core.DestinationExpression, len(source.SecretExpressions))
+ for secretExpressionIndex, secretExpressionItem := range source.SecretExpressions {
+ // Shadow the loop variable to avoid aliasing
+ secretExpressionItem := secretExpressionItem
+ if secretExpressionItem != nil {
+ secretExpression := *secretExpressionItem.DeepCopy()
+ secretExpressionList[secretExpressionIndex] = &secretExpression
+ } else {
+ secretExpressionList[secretExpressionIndex] = nil
+ }
+ }
+ operator.SecretExpressions = secretExpressionList
+ } else {
+ operator.SecretExpressions = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AuthConfigOperatorSpec populates the provided destination AuthConfigOperatorSpec from our AuthConfigOperatorSpec
+func (operator *AuthConfigOperatorSpec) AssignProperties_To_AuthConfigOperatorSpec(destination *storage.AuthConfigOperatorSpec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ConfigMapExpressions
+ if operator.ConfigMapExpressions != nil {
+ configMapExpressionList := make([]*core.DestinationExpression, len(operator.ConfigMapExpressions))
+ for configMapExpressionIndex, configMapExpressionItem := range operator.ConfigMapExpressions {
+ // Shadow the loop variable to avoid aliasing
+ configMapExpressionItem := configMapExpressionItem
+ if configMapExpressionItem != nil {
+ configMapExpression := *configMapExpressionItem.DeepCopy()
+ configMapExpressionList[configMapExpressionIndex] = &configMapExpression
+ } else {
+ configMapExpressionList[configMapExpressionIndex] = nil
+ }
+ }
+ destination.ConfigMapExpressions = configMapExpressionList
+ } else {
+ destination.ConfigMapExpressions = nil
+ }
+
+ // SecretExpressions
+ if operator.SecretExpressions != nil {
+ secretExpressionList := make([]*core.DestinationExpression, len(operator.SecretExpressions))
+ for secretExpressionIndex, secretExpressionItem := range operator.SecretExpressions {
+ // Shadow the loop variable to avoid aliasing
+ secretExpressionItem := secretExpressionItem
+ if secretExpressionItem != nil {
+ secretExpression := *secretExpressionItem.DeepCopy()
+ secretExpressionList[secretExpressionIndex] = &secretExpression
+ } else {
+ secretExpressionList[secretExpressionIndex] = nil
+ }
+ }
+ destination.SecretExpressions = secretExpressionList
+ } else {
+ destination.SecretExpressions = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+type AuthPlatform struct {
+ // Enabled: true
if the Authentication / Authorization feature is enabled for the current app; otherwise,
+ // false
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // RuntimeVersion: The RuntimeVersion of the Authentication / Authorization feature in use for the current app.
+ // The setting in this value can control the behavior of certain features in the Authentication / Authorization module.
+ RuntimeVersion *string `json:"runtimeVersion,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AuthPlatform{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (platform *AuthPlatform) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if platform == nil {
+ return nil, nil
+ }
+ result := &arm.AuthPlatform{}
+
+ // Set property "Enabled":
+ if platform.Enabled != nil {
+ enabled := *platform.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "RuntimeVersion":
+ if platform.RuntimeVersion != nil {
+ runtimeVersion := *platform.RuntimeVersion
+ result.RuntimeVersion = &runtimeVersion
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (platform *AuthPlatform) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AuthPlatform{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (platform *AuthPlatform) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AuthPlatform)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AuthPlatform, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ platform.Enabled = &enabled
+ }
+
+ // Set property "RuntimeVersion":
+ if typedInput.RuntimeVersion != nil {
+ runtimeVersion := *typedInput.RuntimeVersion
+ platform.RuntimeVersion = &runtimeVersion
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AuthPlatform populates our AuthPlatform from the provided source AuthPlatform
+func (platform *AuthPlatform) AssignProperties_From_AuthPlatform(source *storage.AuthPlatform) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ platform.Enabled = &enabled
+ } else {
+ platform.Enabled = nil
+ }
+
+ // RuntimeVersion
+ platform.RuntimeVersion = genruntime.ClonePointerToString(source.RuntimeVersion)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AuthPlatform populates the provided destination AuthPlatform from our AuthPlatform
+func (platform *AuthPlatform) AssignProperties_To_AuthPlatform(destination *storage.AuthPlatform) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if platform.Enabled != nil {
+ enabled := *platform.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // RuntimeVersion
+ destination.RuntimeVersion = genruntime.ClonePointerToString(platform.RuntimeVersion)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AuthPlatform_STATUS populates our AuthPlatform from the provided source AuthPlatform_STATUS
+func (platform *AuthPlatform) Initialize_From_AuthPlatform_STATUS(source *AuthPlatform_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ platform.Enabled = &enabled
+ } else {
+ platform.Enabled = nil
+ }
+
+ // RuntimeVersion
+ platform.RuntimeVersion = genruntime.ClonePointerToString(source.RuntimeVersion)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+type AuthPlatform_STATUS struct {
+ // Enabled: true
if the Authentication / Authorization feature is enabled for the current app; otherwise,
+ // false
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // RuntimeVersion: The RuntimeVersion of the Authentication / Authorization feature in use for the current app.
+ // The setting in this value can control the behavior of certain features in the Authentication / Authorization module.
+ RuntimeVersion *string `json:"runtimeVersion,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AuthPlatform_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (platform *AuthPlatform_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AuthPlatform_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (platform *AuthPlatform_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AuthPlatform_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AuthPlatform_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ platform.Enabled = &enabled
+ }
+
+ // Set property "RuntimeVersion":
+ if typedInput.RuntimeVersion != nil {
+ runtimeVersion := *typedInput.RuntimeVersion
+ platform.RuntimeVersion = &runtimeVersion
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AuthPlatform_STATUS populates our AuthPlatform_STATUS from the provided source AuthPlatform_STATUS
+func (platform *AuthPlatform_STATUS) AssignProperties_From_AuthPlatform_STATUS(source *storage.AuthPlatform_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ platform.Enabled = &enabled
+ } else {
+ platform.Enabled = nil
+ }
+
+ // RuntimeVersion
+ platform.RuntimeVersion = genruntime.ClonePointerToString(source.RuntimeVersion)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AuthPlatform_STATUS populates the provided destination AuthPlatform_STATUS from our AuthPlatform_STATUS
+func (platform *AuthPlatform_STATUS) AssignProperties_To_AuthPlatform_STATUS(destination *storage.AuthPlatform_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if platform.Enabled != nil {
+ enabled := *platform.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // RuntimeVersion
+ destination.RuntimeVersion = genruntime.ClonePointerToString(platform.RuntimeVersion)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the secrets references of encryption key and signing key for ContainerApp Service
+// Authentication/Authorization.
+type EncryptionSettings struct {
+ // ContainerAppAuthEncryptionSecretName: The secret name which is referenced for EncryptionKey.
+ ContainerAppAuthEncryptionSecretName *string `json:"containerAppAuthEncryptionSecretName,omitempty"`
+
+ // ContainerAppAuthSigningSecretName: The secret name which is referenced for SigningKey.
+ ContainerAppAuthSigningSecretName *string `json:"containerAppAuthSigningSecretName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &EncryptionSettings{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (settings *EncryptionSettings) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if settings == nil {
+ return nil, nil
+ }
+ result := &arm.EncryptionSettings{}
+
+ // Set property "ContainerAppAuthEncryptionSecretName":
+ if settings.ContainerAppAuthEncryptionSecretName != nil {
+ containerAppAuthEncryptionSecretName := *settings.ContainerAppAuthEncryptionSecretName
+ result.ContainerAppAuthEncryptionSecretName = &containerAppAuthEncryptionSecretName
+ }
+
+ // Set property "ContainerAppAuthSigningSecretName":
+ if settings.ContainerAppAuthSigningSecretName != nil {
+ containerAppAuthSigningSecretName := *settings.ContainerAppAuthSigningSecretName
+ result.ContainerAppAuthSigningSecretName = &containerAppAuthSigningSecretName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (settings *EncryptionSettings) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.EncryptionSettings{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (settings *EncryptionSettings) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.EncryptionSettings)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.EncryptionSettings, got %T", armInput)
+ }
+
+ // Set property "ContainerAppAuthEncryptionSecretName":
+ if typedInput.ContainerAppAuthEncryptionSecretName != nil {
+ containerAppAuthEncryptionSecretName := *typedInput.ContainerAppAuthEncryptionSecretName
+ settings.ContainerAppAuthEncryptionSecretName = &containerAppAuthEncryptionSecretName
+ }
+
+ // Set property "ContainerAppAuthSigningSecretName":
+ if typedInput.ContainerAppAuthSigningSecretName != nil {
+ containerAppAuthSigningSecretName := *typedInput.ContainerAppAuthSigningSecretName
+ settings.ContainerAppAuthSigningSecretName = &containerAppAuthSigningSecretName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_EncryptionSettings populates our EncryptionSettings from the provided source EncryptionSettings
+func (settings *EncryptionSettings) AssignProperties_From_EncryptionSettings(source *storage.EncryptionSettings) error {
+
+ // ContainerAppAuthEncryptionSecretName
+ settings.ContainerAppAuthEncryptionSecretName = genruntime.ClonePointerToString(source.ContainerAppAuthEncryptionSecretName)
+
+ // ContainerAppAuthSigningSecretName
+ settings.ContainerAppAuthSigningSecretName = genruntime.ClonePointerToString(source.ContainerAppAuthSigningSecretName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_EncryptionSettings populates the provided destination EncryptionSettings from our EncryptionSettings
+func (settings *EncryptionSettings) AssignProperties_To_EncryptionSettings(destination *storage.EncryptionSettings) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ContainerAppAuthEncryptionSecretName
+ destination.ContainerAppAuthEncryptionSecretName = genruntime.ClonePointerToString(settings.ContainerAppAuthEncryptionSecretName)
+
+ // ContainerAppAuthSigningSecretName
+ destination.ContainerAppAuthSigningSecretName = genruntime.ClonePointerToString(settings.ContainerAppAuthSigningSecretName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_EncryptionSettings_STATUS populates our EncryptionSettings from the provided source EncryptionSettings_STATUS
+func (settings *EncryptionSettings) Initialize_From_EncryptionSettings_STATUS(source *EncryptionSettings_STATUS) error {
+
+ // ContainerAppAuthEncryptionSecretName
+ settings.ContainerAppAuthEncryptionSecretName = genruntime.ClonePointerToString(source.ContainerAppAuthEncryptionSecretName)
+
+ // ContainerAppAuthSigningSecretName
+ settings.ContainerAppAuthSigningSecretName = genruntime.ClonePointerToString(source.ContainerAppAuthSigningSecretName)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the secrets references of encryption key and signing key for ContainerApp Service
+// Authentication/Authorization.
+type EncryptionSettings_STATUS struct {
+ // ContainerAppAuthEncryptionSecretName: The secret name which is referenced for EncryptionKey.
+ ContainerAppAuthEncryptionSecretName *string `json:"containerAppAuthEncryptionSecretName,omitempty"`
+
+ // ContainerAppAuthSigningSecretName: The secret name which is referenced for SigningKey.
+ ContainerAppAuthSigningSecretName *string `json:"containerAppAuthSigningSecretName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &EncryptionSettings_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (settings *EncryptionSettings_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.EncryptionSettings_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (settings *EncryptionSettings_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.EncryptionSettings_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.EncryptionSettings_STATUS, got %T", armInput)
+ }
+
+ // Set property "ContainerAppAuthEncryptionSecretName":
+ if typedInput.ContainerAppAuthEncryptionSecretName != nil {
+ containerAppAuthEncryptionSecretName := *typedInput.ContainerAppAuthEncryptionSecretName
+ settings.ContainerAppAuthEncryptionSecretName = &containerAppAuthEncryptionSecretName
+ }
+
+ // Set property "ContainerAppAuthSigningSecretName":
+ if typedInput.ContainerAppAuthSigningSecretName != nil {
+ containerAppAuthSigningSecretName := *typedInput.ContainerAppAuthSigningSecretName
+ settings.ContainerAppAuthSigningSecretName = &containerAppAuthSigningSecretName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_EncryptionSettings_STATUS populates our EncryptionSettings_STATUS from the provided source EncryptionSettings_STATUS
+func (settings *EncryptionSettings_STATUS) AssignProperties_From_EncryptionSettings_STATUS(source *storage.EncryptionSettings_STATUS) error {
+
+ // ContainerAppAuthEncryptionSecretName
+ settings.ContainerAppAuthEncryptionSecretName = genruntime.ClonePointerToString(source.ContainerAppAuthEncryptionSecretName)
+
+ // ContainerAppAuthSigningSecretName
+ settings.ContainerAppAuthSigningSecretName = genruntime.ClonePointerToString(source.ContainerAppAuthSigningSecretName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_EncryptionSettings_STATUS populates the provided destination EncryptionSettings_STATUS from our EncryptionSettings_STATUS
+func (settings *EncryptionSettings_STATUS) AssignProperties_To_EncryptionSettings_STATUS(destination *storage.EncryptionSettings_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ContainerAppAuthEncryptionSecretName
+ destination.ContainerAppAuthEncryptionSecretName = genruntime.ClonePointerToString(settings.ContainerAppAuthEncryptionSecretName)
+
+ // ContainerAppAuthSigningSecretName
+ destination.ContainerAppAuthSigningSecretName = genruntime.ClonePointerToString(settings.ContainerAppAuthSigningSecretName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings that determines the validation flow of users using ContainerApp Service
+// Authentication/Authorization.
+type GlobalValidation struct {
+ // ExcludedPaths: The paths for which unauthenticated flow would not be redirected to the login page.
+ ExcludedPaths []string `json:"excludedPaths,omitempty"`
+
+ // RedirectToProvider: The default authentication provider to use when multiple providers are configured.
+ // This setting is only needed if multiple providers are configured and the unauthenticated client
+ // action is set to "RedirectToLoginPage".
+ RedirectToProvider *string `json:"redirectToProvider,omitempty"`
+
+ // UnauthenticatedClientAction: The action to take when an unauthenticated client attempts to access the app.
+ UnauthenticatedClientAction *GlobalValidation_UnauthenticatedClientAction `json:"unauthenticatedClientAction,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &GlobalValidation{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (validation *GlobalValidation) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if validation == nil {
+ return nil, nil
+ }
+ result := &arm.GlobalValidation{}
+
+ // Set property "ExcludedPaths":
+ for _, item := range validation.ExcludedPaths {
+ result.ExcludedPaths = append(result.ExcludedPaths, item)
+ }
+
+ // Set property "RedirectToProvider":
+ if validation.RedirectToProvider != nil {
+ redirectToProvider := *validation.RedirectToProvider
+ result.RedirectToProvider = &redirectToProvider
+ }
+
+ // Set property "UnauthenticatedClientAction":
+ if validation.UnauthenticatedClientAction != nil {
+ var temp string
+ temp = string(*validation.UnauthenticatedClientAction)
+ unauthenticatedClientAction := arm.GlobalValidation_UnauthenticatedClientAction(temp)
+ result.UnauthenticatedClientAction = &unauthenticatedClientAction
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (validation *GlobalValidation) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.GlobalValidation{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (validation *GlobalValidation) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.GlobalValidation)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.GlobalValidation, got %T", armInput)
+ }
+
+ // Set property "ExcludedPaths":
+ for _, item := range typedInput.ExcludedPaths {
+ validation.ExcludedPaths = append(validation.ExcludedPaths, item)
+ }
+
+ // Set property "RedirectToProvider":
+ if typedInput.RedirectToProvider != nil {
+ redirectToProvider := *typedInput.RedirectToProvider
+ validation.RedirectToProvider = &redirectToProvider
+ }
+
+ // Set property "UnauthenticatedClientAction":
+ if typedInput.UnauthenticatedClientAction != nil {
+ var temp string
+ temp = string(*typedInput.UnauthenticatedClientAction)
+ unauthenticatedClientAction := GlobalValidation_UnauthenticatedClientAction(temp)
+ validation.UnauthenticatedClientAction = &unauthenticatedClientAction
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_GlobalValidation populates our GlobalValidation from the provided source GlobalValidation
+func (validation *GlobalValidation) AssignProperties_From_GlobalValidation(source *storage.GlobalValidation) error {
+
+ // ExcludedPaths
+ validation.ExcludedPaths = genruntime.CloneSliceOfString(source.ExcludedPaths)
+
+ // RedirectToProvider
+ validation.RedirectToProvider = genruntime.ClonePointerToString(source.RedirectToProvider)
+
+ // UnauthenticatedClientAction
+ if source.UnauthenticatedClientAction != nil {
+ unauthenticatedClientAction := *source.UnauthenticatedClientAction
+ unauthenticatedClientActionTemp := genruntime.ToEnum(unauthenticatedClientAction, globalValidation_UnauthenticatedClientAction_Values)
+ validation.UnauthenticatedClientAction = &unauthenticatedClientActionTemp
+ } else {
+ validation.UnauthenticatedClientAction = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_GlobalValidation populates the provided destination GlobalValidation from our GlobalValidation
+func (validation *GlobalValidation) AssignProperties_To_GlobalValidation(destination *storage.GlobalValidation) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ExcludedPaths
+ destination.ExcludedPaths = genruntime.CloneSliceOfString(validation.ExcludedPaths)
+
+ // RedirectToProvider
+ destination.RedirectToProvider = genruntime.ClonePointerToString(validation.RedirectToProvider)
+
+ // UnauthenticatedClientAction
+ if validation.UnauthenticatedClientAction != nil {
+ unauthenticatedClientAction := string(*validation.UnauthenticatedClientAction)
+ destination.UnauthenticatedClientAction = &unauthenticatedClientAction
+ } else {
+ destination.UnauthenticatedClientAction = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_GlobalValidation_STATUS populates our GlobalValidation from the provided source GlobalValidation_STATUS
+func (validation *GlobalValidation) Initialize_From_GlobalValidation_STATUS(source *GlobalValidation_STATUS) error {
+
+ // ExcludedPaths
+ validation.ExcludedPaths = genruntime.CloneSliceOfString(source.ExcludedPaths)
+
+ // RedirectToProvider
+ validation.RedirectToProvider = genruntime.ClonePointerToString(source.RedirectToProvider)
+
+ // UnauthenticatedClientAction
+ if source.UnauthenticatedClientAction != nil {
+ unauthenticatedClientAction := genruntime.ToEnum(string(*source.UnauthenticatedClientAction), globalValidation_UnauthenticatedClientAction_Values)
+ validation.UnauthenticatedClientAction = &unauthenticatedClientAction
+ } else {
+ validation.UnauthenticatedClientAction = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings that determines the validation flow of users using ContainerApp Service
+// Authentication/Authorization.
+type GlobalValidation_STATUS struct {
+ // ExcludedPaths: The paths for which unauthenticated flow would not be redirected to the login page.
+ ExcludedPaths []string `json:"excludedPaths,omitempty"`
+
+ // RedirectToProvider: The default authentication provider to use when multiple providers are configured.
+ // This setting is only needed if multiple providers are configured and the unauthenticated client
+ // action is set to "RedirectToLoginPage".
+ RedirectToProvider *string `json:"redirectToProvider,omitempty"`
+
+ // UnauthenticatedClientAction: The action to take when an unauthenticated client attempts to access the app.
+ UnauthenticatedClientAction *GlobalValidation_UnauthenticatedClientAction_STATUS `json:"unauthenticatedClientAction,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &GlobalValidation_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (validation *GlobalValidation_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.GlobalValidation_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (validation *GlobalValidation_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.GlobalValidation_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.GlobalValidation_STATUS, got %T", armInput)
+ }
+
+ // Set property "ExcludedPaths":
+ for _, item := range typedInput.ExcludedPaths {
+ validation.ExcludedPaths = append(validation.ExcludedPaths, item)
+ }
+
+ // Set property "RedirectToProvider":
+ if typedInput.RedirectToProvider != nil {
+ redirectToProvider := *typedInput.RedirectToProvider
+ validation.RedirectToProvider = &redirectToProvider
+ }
+
+ // Set property "UnauthenticatedClientAction":
+ if typedInput.UnauthenticatedClientAction != nil {
+ var temp string
+ temp = string(*typedInput.UnauthenticatedClientAction)
+ unauthenticatedClientAction := GlobalValidation_UnauthenticatedClientAction_STATUS(temp)
+ validation.UnauthenticatedClientAction = &unauthenticatedClientAction
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_GlobalValidation_STATUS populates our GlobalValidation_STATUS from the provided source GlobalValidation_STATUS
+func (validation *GlobalValidation_STATUS) AssignProperties_From_GlobalValidation_STATUS(source *storage.GlobalValidation_STATUS) error {
+
+ // ExcludedPaths
+ validation.ExcludedPaths = genruntime.CloneSliceOfString(source.ExcludedPaths)
+
+ // RedirectToProvider
+ validation.RedirectToProvider = genruntime.ClonePointerToString(source.RedirectToProvider)
+
+ // UnauthenticatedClientAction
+ if source.UnauthenticatedClientAction != nil {
+ unauthenticatedClientAction := *source.UnauthenticatedClientAction
+ unauthenticatedClientActionTemp := genruntime.ToEnum(unauthenticatedClientAction, globalValidation_UnauthenticatedClientAction_STATUS_Values)
+ validation.UnauthenticatedClientAction = &unauthenticatedClientActionTemp
+ } else {
+ validation.UnauthenticatedClientAction = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_GlobalValidation_STATUS populates the provided destination GlobalValidation_STATUS from our GlobalValidation_STATUS
+func (validation *GlobalValidation_STATUS) AssignProperties_To_GlobalValidation_STATUS(destination *storage.GlobalValidation_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ExcludedPaths
+ destination.ExcludedPaths = genruntime.CloneSliceOfString(validation.ExcludedPaths)
+
+ // RedirectToProvider
+ destination.RedirectToProvider = genruntime.ClonePointerToString(validation.RedirectToProvider)
+
+ // UnauthenticatedClientAction
+ if validation.UnauthenticatedClientAction != nil {
+ unauthenticatedClientAction := string(*validation.UnauthenticatedClientAction)
+ destination.UnauthenticatedClientAction = &unauthenticatedClientAction
+ } else {
+ destination.UnauthenticatedClientAction = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp
+// Service Authentication/Authorization.
+type HttpSettings struct {
+ // ForwardProxy: The configuration settings of a forward proxy used to make the requests.
+ ForwardProxy *ForwardProxy `json:"forwardProxy,omitempty"`
+
+ // RequireHttps: false
if the authentication/authorization responses not having the HTTPS scheme are
+ // permissible; otherwise, true
.
+ RequireHttps *bool `json:"requireHttps,omitempty"`
+
+ // Routes: The configuration settings of the paths HTTP requests.
+ Routes *HttpSettingsRoutes `json:"routes,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &HttpSettings{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (settings *HttpSettings) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if settings == nil {
+ return nil, nil
+ }
+ result := &arm.HttpSettings{}
+
+ // Set property "ForwardProxy":
+ if settings.ForwardProxy != nil {
+ forwardProxy_ARM, err := (*settings.ForwardProxy).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ forwardProxy := *forwardProxy_ARM.(*arm.ForwardProxy)
+ result.ForwardProxy = &forwardProxy
+ }
+
+ // Set property "RequireHttps":
+ if settings.RequireHttps != nil {
+ requireHttps := *settings.RequireHttps
+ result.RequireHttps = &requireHttps
+ }
+
+ // Set property "Routes":
+ if settings.Routes != nil {
+ routes_ARM, err := (*settings.Routes).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ routes := *routes_ARM.(*arm.HttpSettingsRoutes)
+ result.Routes = &routes
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (settings *HttpSettings) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.HttpSettings{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (settings *HttpSettings) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.HttpSettings)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.HttpSettings, got %T", armInput)
+ }
+
+ // Set property "ForwardProxy":
+ if typedInput.ForwardProxy != nil {
+ var forwardProxy1 ForwardProxy
+ err := forwardProxy1.PopulateFromARM(owner, *typedInput.ForwardProxy)
+ if err != nil {
+ return err
+ }
+ forwardProxy := forwardProxy1
+ settings.ForwardProxy = &forwardProxy
+ }
+
+ // Set property "RequireHttps":
+ if typedInput.RequireHttps != nil {
+ requireHttps := *typedInput.RequireHttps
+ settings.RequireHttps = &requireHttps
+ }
+
+ // Set property "Routes":
+ if typedInput.Routes != nil {
+ var routes1 HttpSettingsRoutes
+ err := routes1.PopulateFromARM(owner, *typedInput.Routes)
+ if err != nil {
+ return err
+ }
+ routes := routes1
+ settings.Routes = &routes
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_HttpSettings populates our HttpSettings from the provided source HttpSettings
+func (settings *HttpSettings) AssignProperties_From_HttpSettings(source *storage.HttpSettings) error {
+
+ // ForwardProxy
+ if source.ForwardProxy != nil {
+ var forwardProxy ForwardProxy
+ err := forwardProxy.AssignProperties_From_ForwardProxy(source.ForwardProxy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ForwardProxy() to populate field ForwardProxy")
+ }
+ settings.ForwardProxy = &forwardProxy
+ } else {
+ settings.ForwardProxy = nil
+ }
+
+ // RequireHttps
+ if source.RequireHttps != nil {
+ requireHttpsHTTPS := *source.RequireHttps
+ settings.RequireHttps = &requireHttpsHTTPS
+ } else {
+ settings.RequireHttps = nil
+ }
+
+ // Routes
+ if source.Routes != nil {
+ var route HttpSettingsRoutes
+ err := route.AssignProperties_From_HttpSettingsRoutes(source.Routes)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_HttpSettingsRoutes() to populate field Routes")
+ }
+ settings.Routes = &route
+ } else {
+ settings.Routes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_HttpSettings populates the provided destination HttpSettings from our HttpSettings
+func (settings *HttpSettings) AssignProperties_To_HttpSettings(destination *storage.HttpSettings) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ForwardProxy
+ if settings.ForwardProxy != nil {
+ var forwardProxy storage.ForwardProxy
+ err := settings.ForwardProxy.AssignProperties_To_ForwardProxy(&forwardProxy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ForwardProxy() to populate field ForwardProxy")
+ }
+ destination.ForwardProxy = &forwardProxy
+ } else {
+ destination.ForwardProxy = nil
+ }
+
+ // RequireHttps
+ if settings.RequireHttps != nil {
+ requireHttpsHTTPS := *settings.RequireHttps
+ destination.RequireHttps = &requireHttpsHTTPS
+ } else {
+ destination.RequireHttps = nil
+ }
+
+ // Routes
+ if settings.Routes != nil {
+ var route storage.HttpSettingsRoutes
+ err := settings.Routes.AssignProperties_To_HttpSettingsRoutes(&route)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_HttpSettingsRoutes() to populate field Routes")
+ }
+ destination.Routes = &route
+ } else {
+ destination.Routes = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_HttpSettings_STATUS populates our HttpSettings from the provided source HttpSettings_STATUS
+func (settings *HttpSettings) Initialize_From_HttpSettings_STATUS(source *HttpSettings_STATUS) error {
+
+ // ForwardProxy
+ if source.ForwardProxy != nil {
+ var forwardProxy ForwardProxy
+ err := forwardProxy.Initialize_From_ForwardProxy_STATUS(source.ForwardProxy)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ForwardProxy_STATUS() to populate field ForwardProxy")
+ }
+ settings.ForwardProxy = &forwardProxy
+ } else {
+ settings.ForwardProxy = nil
+ }
+
+ // RequireHttps
+ if source.RequireHttps != nil {
+ requireHttpsHTTPS := *source.RequireHttps
+ settings.RequireHttps = &requireHttpsHTTPS
+ } else {
+ settings.RequireHttps = nil
+ }
+
+ // Routes
+ if source.Routes != nil {
+ var route HttpSettingsRoutes
+ err := route.Initialize_From_HttpSettingsRoutes_STATUS(source.Routes)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_HttpSettingsRoutes_STATUS() to populate field Routes")
+ }
+ settings.Routes = &route
+ } else {
+ settings.Routes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp
+// Service Authentication/Authorization.
+type HttpSettings_STATUS struct {
+ // ForwardProxy: The configuration settings of a forward proxy used to make the requests.
+ ForwardProxy *ForwardProxy_STATUS `json:"forwardProxy,omitempty"`
+
+ // RequireHttps: false
if the authentication/authorization responses not having the HTTPS scheme are
+ // permissible; otherwise, true
.
+ RequireHttps *bool `json:"requireHttps,omitempty"`
+
+ // Routes: The configuration settings of the paths HTTP requests.
+ Routes *HttpSettingsRoutes_STATUS `json:"routes,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &HttpSettings_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (settings *HttpSettings_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.HttpSettings_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (settings *HttpSettings_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.HttpSettings_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.HttpSettings_STATUS, got %T", armInput)
+ }
+
+ // Set property "ForwardProxy":
+ if typedInput.ForwardProxy != nil {
+ var forwardProxy1 ForwardProxy_STATUS
+ err := forwardProxy1.PopulateFromARM(owner, *typedInput.ForwardProxy)
+ if err != nil {
+ return err
+ }
+ forwardProxy := forwardProxy1
+ settings.ForwardProxy = &forwardProxy
+ }
+
+ // Set property "RequireHttps":
+ if typedInput.RequireHttps != nil {
+ requireHttps := *typedInput.RequireHttps
+ settings.RequireHttps = &requireHttps
+ }
+
+ // Set property "Routes":
+ if typedInput.Routes != nil {
+ var routes1 HttpSettingsRoutes_STATUS
+ err := routes1.PopulateFromARM(owner, *typedInput.Routes)
+ if err != nil {
+ return err
+ }
+ routes := routes1
+ settings.Routes = &routes
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_HttpSettings_STATUS populates our HttpSettings_STATUS from the provided source HttpSettings_STATUS
+func (settings *HttpSettings_STATUS) AssignProperties_From_HttpSettings_STATUS(source *storage.HttpSettings_STATUS) error {
+
+ // ForwardProxy
+ if source.ForwardProxy != nil {
+ var forwardProxy ForwardProxy_STATUS
+ err := forwardProxy.AssignProperties_From_ForwardProxy_STATUS(source.ForwardProxy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ForwardProxy_STATUS() to populate field ForwardProxy")
+ }
+ settings.ForwardProxy = &forwardProxy
+ } else {
+ settings.ForwardProxy = nil
+ }
+
+ // RequireHttps
+ if source.RequireHttps != nil {
+ requireHttpsHTTPS := *source.RequireHttps
+ settings.RequireHttps = &requireHttpsHTTPS
+ } else {
+ settings.RequireHttps = nil
+ }
+
+ // Routes
+ if source.Routes != nil {
+ var route HttpSettingsRoutes_STATUS
+ err := route.AssignProperties_From_HttpSettingsRoutes_STATUS(source.Routes)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_HttpSettingsRoutes_STATUS() to populate field Routes")
+ }
+ settings.Routes = &route
+ } else {
+ settings.Routes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_HttpSettings_STATUS populates the provided destination HttpSettings_STATUS from our HttpSettings_STATUS
+func (settings *HttpSettings_STATUS) AssignProperties_To_HttpSettings_STATUS(destination *storage.HttpSettings_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ForwardProxy
+ if settings.ForwardProxy != nil {
+ var forwardProxy storage.ForwardProxy_STATUS
+ err := settings.ForwardProxy.AssignProperties_To_ForwardProxy_STATUS(&forwardProxy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ForwardProxy_STATUS() to populate field ForwardProxy")
+ }
+ destination.ForwardProxy = &forwardProxy
+ } else {
+ destination.ForwardProxy = nil
+ }
+
+ // RequireHttps
+ if settings.RequireHttps != nil {
+ requireHttpsHTTPS := *settings.RequireHttps
+ destination.RequireHttps = &requireHttpsHTTPS
+ } else {
+ destination.RequireHttps = nil
+ }
+
+ // Routes
+ if settings.Routes != nil {
+ var route storage.HttpSettingsRoutes_STATUS
+ err := settings.Routes.AssignProperties_To_HttpSettingsRoutes_STATUS(&route)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_HttpSettingsRoutes_STATUS() to populate field Routes")
+ }
+ destination.Routes = &route
+ } else {
+ destination.Routes = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of each of the identity providers used to configure ContainerApp Service
+// Authentication/Authorization.
+type IdentityProviders struct {
+ // Apple: The configuration settings of the Apple provider.
+ Apple *Apple `json:"apple,omitempty"`
+
+ // AzureActiveDirectory: The configuration settings of the Azure Active directory provider.
+ AzureActiveDirectory *AzureActiveDirectory `json:"azureActiveDirectory,omitempty"`
+
+ // AzureStaticWebApps: The configuration settings of the Azure Static Web Apps provider.
+ AzureStaticWebApps *AzureStaticWebApps `json:"azureStaticWebApps,omitempty"`
+
+ // CustomOpenIdConnectProviders: The map of the name of the alias of each custom Open ID Connect provider to the
+ // configuration settings of the custom Open ID Connect provider.
+ CustomOpenIdConnectProviders map[string]CustomOpenIdConnectProvider `json:"customOpenIdConnectProviders,omitempty"`
+
+ // Facebook: The configuration settings of the Facebook provider.
+ Facebook *Facebook `json:"facebook,omitempty"`
+
+ // GitHub: The configuration settings of the GitHub provider.
+ GitHub *GitHub `json:"gitHub,omitempty"`
+
+ // Google: The configuration settings of the Google provider.
+ Google *Google `json:"google,omitempty"`
+
+ // Twitter: The configuration settings of the Twitter provider.
+ Twitter *Twitter `json:"twitter,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &IdentityProviders{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (providers *IdentityProviders) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if providers == nil {
+ return nil, nil
+ }
+ result := &arm.IdentityProviders{}
+
+ // Set property "Apple":
+ if providers.Apple != nil {
+ apple_ARM, err := (*providers.Apple).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ apple := *apple_ARM.(*arm.Apple)
+ result.Apple = &apple
+ }
+
+ // Set property "AzureActiveDirectory":
+ if providers.AzureActiveDirectory != nil {
+ azureActiveDirectory_ARM, err := (*providers.AzureActiveDirectory).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ azureActiveDirectory := *azureActiveDirectory_ARM.(*arm.AzureActiveDirectory)
+ result.AzureActiveDirectory = &azureActiveDirectory
+ }
+
+ // Set property "AzureStaticWebApps":
+ if providers.AzureStaticWebApps != nil {
+ azureStaticWebApps_ARM, err := (*providers.AzureStaticWebApps).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ azureStaticWebApps := *azureStaticWebApps_ARM.(*arm.AzureStaticWebApps)
+ result.AzureStaticWebApps = &azureStaticWebApps
+ }
+
+ // Set property "CustomOpenIdConnectProviders":
+ if providers.CustomOpenIdConnectProviders != nil {
+ result.CustomOpenIdConnectProviders = make(map[string]arm.CustomOpenIdConnectProvider, len(providers.CustomOpenIdConnectProviders))
+ for key, value := range providers.CustomOpenIdConnectProviders {
+ value_ARM, err := value.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.CustomOpenIdConnectProviders[key] = *value_ARM.(*arm.CustomOpenIdConnectProvider)
+ }
+ }
+
+ // Set property "Facebook":
+ if providers.Facebook != nil {
+ facebook_ARM, err := (*providers.Facebook).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ facebook := *facebook_ARM.(*arm.Facebook)
+ result.Facebook = &facebook
+ }
+
+ // Set property "GitHub":
+ if providers.GitHub != nil {
+ gitHub_ARM, err := (*providers.GitHub).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ gitHub := *gitHub_ARM.(*arm.GitHub)
+ result.GitHub = &gitHub
+ }
+
+ // Set property "Google":
+ if providers.Google != nil {
+ google_ARM, err := (*providers.Google).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ google := *google_ARM.(*arm.Google)
+ result.Google = &google
+ }
+
+ // Set property "Twitter":
+ if providers.Twitter != nil {
+ twitter_ARM, err := (*providers.Twitter).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ twitter := *twitter_ARM.(*arm.Twitter)
+ result.Twitter = &twitter
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (providers *IdentityProviders) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.IdentityProviders{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (providers *IdentityProviders) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.IdentityProviders)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.IdentityProviders, got %T", armInput)
+ }
+
+ // Set property "Apple":
+ if typedInput.Apple != nil {
+ var apple1 Apple
+ err := apple1.PopulateFromARM(owner, *typedInput.Apple)
+ if err != nil {
+ return err
+ }
+ apple := apple1
+ providers.Apple = &apple
+ }
+
+ // Set property "AzureActiveDirectory":
+ if typedInput.AzureActiveDirectory != nil {
+ var azureActiveDirectory1 AzureActiveDirectory
+ err := azureActiveDirectory1.PopulateFromARM(owner, *typedInput.AzureActiveDirectory)
+ if err != nil {
+ return err
+ }
+ azureActiveDirectory := azureActiveDirectory1
+ providers.AzureActiveDirectory = &azureActiveDirectory
+ }
+
+ // Set property "AzureStaticWebApps":
+ if typedInput.AzureStaticWebApps != nil {
+ var azureStaticWebApps1 AzureStaticWebApps
+ err := azureStaticWebApps1.PopulateFromARM(owner, *typedInput.AzureStaticWebApps)
+ if err != nil {
+ return err
+ }
+ azureStaticWebApps := azureStaticWebApps1
+ providers.AzureStaticWebApps = &azureStaticWebApps
+ }
+
+ // Set property "CustomOpenIdConnectProviders":
+ if typedInput.CustomOpenIdConnectProviders != nil {
+ providers.CustomOpenIdConnectProviders = make(map[string]CustomOpenIdConnectProvider, len(typedInput.CustomOpenIdConnectProviders))
+ for key, value := range typedInput.CustomOpenIdConnectProviders {
+ var value1 CustomOpenIdConnectProvider
+ err := value1.PopulateFromARM(owner, value)
+ if err != nil {
+ return err
+ }
+ providers.CustomOpenIdConnectProviders[key] = value1
+ }
+ }
+
+ // Set property "Facebook":
+ if typedInput.Facebook != nil {
+ var facebook1 Facebook
+ err := facebook1.PopulateFromARM(owner, *typedInput.Facebook)
+ if err != nil {
+ return err
+ }
+ facebook := facebook1
+ providers.Facebook = &facebook
+ }
+
+ // Set property "GitHub":
+ if typedInput.GitHub != nil {
+ var gitHub1 GitHub
+ err := gitHub1.PopulateFromARM(owner, *typedInput.GitHub)
+ if err != nil {
+ return err
+ }
+ gitHub := gitHub1
+ providers.GitHub = &gitHub
+ }
+
+ // Set property "Google":
+ if typedInput.Google != nil {
+ var google1 Google
+ err := google1.PopulateFromARM(owner, *typedInput.Google)
+ if err != nil {
+ return err
+ }
+ google := google1
+ providers.Google = &google
+ }
+
+ // Set property "Twitter":
+ if typedInput.Twitter != nil {
+ var twitter1 Twitter
+ err := twitter1.PopulateFromARM(owner, *typedInput.Twitter)
+ if err != nil {
+ return err
+ }
+ twitter := twitter1
+ providers.Twitter = &twitter
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_IdentityProviders populates our IdentityProviders from the provided source IdentityProviders
+func (providers *IdentityProviders) AssignProperties_From_IdentityProviders(source *storage.IdentityProviders) error {
+
+ // Apple
+ if source.Apple != nil {
+ var apple Apple
+ err := apple.AssignProperties_From_Apple(source.Apple)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Apple() to populate field Apple")
+ }
+ providers.Apple = &apple
+ } else {
+ providers.Apple = nil
+ }
+
+ // AzureActiveDirectory
+ if source.AzureActiveDirectory != nil {
+ var azureActiveDirectory AzureActiveDirectory
+ err := azureActiveDirectory.AssignProperties_From_AzureActiveDirectory(source.AzureActiveDirectory)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureActiveDirectory() to populate field AzureActiveDirectory")
+ }
+ providers.AzureActiveDirectory = &azureActiveDirectory
+ } else {
+ providers.AzureActiveDirectory = nil
+ }
+
+ // AzureStaticWebApps
+ if source.AzureStaticWebApps != nil {
+ var azureStaticWebApp AzureStaticWebApps
+ err := azureStaticWebApp.AssignProperties_From_AzureStaticWebApps(source.AzureStaticWebApps)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureStaticWebApps() to populate field AzureStaticWebApps")
+ }
+ providers.AzureStaticWebApps = &azureStaticWebApp
+ } else {
+ providers.AzureStaticWebApps = nil
+ }
+
+ // CustomOpenIdConnectProviders
+ if source.CustomOpenIdConnectProviders != nil {
+ customOpenIdConnectProviderMap := make(map[string]CustomOpenIdConnectProvider, len(source.CustomOpenIdConnectProviders))
+ for customOpenIdConnectProviderKey, customOpenIdConnectProviderValue := range source.CustomOpenIdConnectProviders {
+ // Shadow the loop variable to avoid aliasing
+ customOpenIdConnectProviderValue := customOpenIdConnectProviderValue
+ var customOpenIdConnectProvider CustomOpenIdConnectProvider
+ err := customOpenIdConnectProvider.AssignProperties_From_CustomOpenIdConnectProvider(&customOpenIdConnectProviderValue)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CustomOpenIdConnectProvider() to populate field CustomOpenIdConnectProviders")
+ }
+ customOpenIdConnectProviderMap[customOpenIdConnectProviderKey] = customOpenIdConnectProvider
+ }
+ providers.CustomOpenIdConnectProviders = customOpenIdConnectProviderMap
+ } else {
+ providers.CustomOpenIdConnectProviders = nil
+ }
+
+ // Facebook
+ if source.Facebook != nil {
+ var facebook Facebook
+ err := facebook.AssignProperties_From_Facebook(source.Facebook)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Facebook() to populate field Facebook")
+ }
+ providers.Facebook = &facebook
+ } else {
+ providers.Facebook = nil
+ }
+
+ // GitHub
+ if source.GitHub != nil {
+ var gitHub GitHub
+ err := gitHub.AssignProperties_From_GitHub(source.GitHub)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_GitHub() to populate field GitHub")
+ }
+ providers.GitHub = &gitHub
+ } else {
+ providers.GitHub = nil
+ }
+
+ // Google
+ if source.Google != nil {
+ var google Google
+ err := google.AssignProperties_From_Google(source.Google)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Google() to populate field Google")
+ }
+ providers.Google = &google
+ } else {
+ providers.Google = nil
+ }
+
+ // Twitter
+ if source.Twitter != nil {
+ var twitter Twitter
+ err := twitter.AssignProperties_From_Twitter(source.Twitter)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Twitter() to populate field Twitter")
+ }
+ providers.Twitter = &twitter
+ } else {
+ providers.Twitter = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_IdentityProviders populates the provided destination IdentityProviders from our IdentityProviders
+func (providers *IdentityProviders) AssignProperties_To_IdentityProviders(destination *storage.IdentityProviders) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Apple
+ if providers.Apple != nil {
+ var apple storage.Apple
+ err := providers.Apple.AssignProperties_To_Apple(&apple)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Apple() to populate field Apple")
+ }
+ destination.Apple = &apple
+ } else {
+ destination.Apple = nil
+ }
+
+ // AzureActiveDirectory
+ if providers.AzureActiveDirectory != nil {
+ var azureActiveDirectory storage.AzureActiveDirectory
+ err := providers.AzureActiveDirectory.AssignProperties_To_AzureActiveDirectory(&azureActiveDirectory)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureActiveDirectory() to populate field AzureActiveDirectory")
+ }
+ destination.AzureActiveDirectory = &azureActiveDirectory
+ } else {
+ destination.AzureActiveDirectory = nil
+ }
+
+ // AzureStaticWebApps
+ if providers.AzureStaticWebApps != nil {
+ var azureStaticWebApp storage.AzureStaticWebApps
+ err := providers.AzureStaticWebApps.AssignProperties_To_AzureStaticWebApps(&azureStaticWebApp)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureStaticWebApps() to populate field AzureStaticWebApps")
+ }
+ destination.AzureStaticWebApps = &azureStaticWebApp
+ } else {
+ destination.AzureStaticWebApps = nil
+ }
+
+ // CustomOpenIdConnectProviders
+ if providers.CustomOpenIdConnectProviders != nil {
+ customOpenIdConnectProviderMap := make(map[string]storage.CustomOpenIdConnectProvider, len(providers.CustomOpenIdConnectProviders))
+ for customOpenIdConnectProviderKey, customOpenIdConnectProviderValue := range providers.CustomOpenIdConnectProviders {
+ // Shadow the loop variable to avoid aliasing
+ customOpenIdConnectProviderValue := customOpenIdConnectProviderValue
+ var customOpenIdConnectProvider storage.CustomOpenIdConnectProvider
+ err := customOpenIdConnectProviderValue.AssignProperties_To_CustomOpenIdConnectProvider(&customOpenIdConnectProvider)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CustomOpenIdConnectProvider() to populate field CustomOpenIdConnectProviders")
+ }
+ customOpenIdConnectProviderMap[customOpenIdConnectProviderKey] = customOpenIdConnectProvider
+ }
+ destination.CustomOpenIdConnectProviders = customOpenIdConnectProviderMap
+ } else {
+ destination.CustomOpenIdConnectProviders = nil
+ }
+
+ // Facebook
+ if providers.Facebook != nil {
+ var facebook storage.Facebook
+ err := providers.Facebook.AssignProperties_To_Facebook(&facebook)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Facebook() to populate field Facebook")
+ }
+ destination.Facebook = &facebook
+ } else {
+ destination.Facebook = nil
+ }
+
+ // GitHub
+ if providers.GitHub != nil {
+ var gitHub storage.GitHub
+ err := providers.GitHub.AssignProperties_To_GitHub(&gitHub)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_GitHub() to populate field GitHub")
+ }
+ destination.GitHub = &gitHub
+ } else {
+ destination.GitHub = nil
+ }
+
+ // Google
+ if providers.Google != nil {
+ var google storage.Google
+ err := providers.Google.AssignProperties_To_Google(&google)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Google() to populate field Google")
+ }
+ destination.Google = &google
+ } else {
+ destination.Google = nil
+ }
+
+ // Twitter
+ if providers.Twitter != nil {
+ var twitter storage.Twitter
+ err := providers.Twitter.AssignProperties_To_Twitter(&twitter)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Twitter() to populate field Twitter")
+ }
+ destination.Twitter = &twitter
+ } else {
+ destination.Twitter = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_IdentityProviders_STATUS populates our IdentityProviders from the provided source IdentityProviders_STATUS
+func (providers *IdentityProviders) Initialize_From_IdentityProviders_STATUS(source *IdentityProviders_STATUS) error {
+
+ // Apple
+ if source.Apple != nil {
+ var apple Apple
+ err := apple.Initialize_From_Apple_STATUS(source.Apple)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Apple_STATUS() to populate field Apple")
+ }
+ providers.Apple = &apple
+ } else {
+ providers.Apple = nil
+ }
+
+ // AzureActiveDirectory
+ if source.AzureActiveDirectory != nil {
+ var azureActiveDirectory AzureActiveDirectory
+ err := azureActiveDirectory.Initialize_From_AzureActiveDirectory_STATUS(source.AzureActiveDirectory)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AzureActiveDirectory_STATUS() to populate field AzureActiveDirectory")
+ }
+ providers.AzureActiveDirectory = &azureActiveDirectory
+ } else {
+ providers.AzureActiveDirectory = nil
+ }
+
+ // AzureStaticWebApps
+ if source.AzureStaticWebApps != nil {
+ var azureStaticWebApp AzureStaticWebApps
+ err := azureStaticWebApp.Initialize_From_AzureStaticWebApps_STATUS(source.AzureStaticWebApps)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AzureStaticWebApps_STATUS() to populate field AzureStaticWebApps")
+ }
+ providers.AzureStaticWebApps = &azureStaticWebApp
+ } else {
+ providers.AzureStaticWebApps = nil
+ }
+
+ // CustomOpenIdConnectProviders
+ if source.CustomOpenIdConnectProviders != nil {
+ customOpenIdConnectProviderMap := make(map[string]CustomOpenIdConnectProvider, len(source.CustomOpenIdConnectProviders))
+ for customOpenIdConnectProviderKey, customOpenIdConnectProviderValue := range source.CustomOpenIdConnectProviders {
+ // Shadow the loop variable to avoid aliasing
+ customOpenIdConnectProviderValue := customOpenIdConnectProviderValue
+ var customOpenIdConnectProvider CustomOpenIdConnectProvider
+ err := customOpenIdConnectProvider.Initialize_From_CustomOpenIdConnectProvider_STATUS(&customOpenIdConnectProviderValue)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_CustomOpenIdConnectProvider_STATUS() to populate field CustomOpenIdConnectProviders")
+ }
+ customOpenIdConnectProviderMap[customOpenIdConnectProviderKey] = customOpenIdConnectProvider
+ }
+ providers.CustomOpenIdConnectProviders = customOpenIdConnectProviderMap
+ } else {
+ providers.CustomOpenIdConnectProviders = nil
+ }
+
+ // Facebook
+ if source.Facebook != nil {
+ var facebook Facebook
+ err := facebook.Initialize_From_Facebook_STATUS(source.Facebook)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Facebook_STATUS() to populate field Facebook")
+ }
+ providers.Facebook = &facebook
+ } else {
+ providers.Facebook = nil
+ }
+
+ // GitHub
+ if source.GitHub != nil {
+ var gitHub GitHub
+ err := gitHub.Initialize_From_GitHub_STATUS(source.GitHub)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_GitHub_STATUS() to populate field GitHub")
+ }
+ providers.GitHub = &gitHub
+ } else {
+ providers.GitHub = nil
+ }
+
+ // Google
+ if source.Google != nil {
+ var google Google
+ err := google.Initialize_From_Google_STATUS(source.Google)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Google_STATUS() to populate field Google")
+ }
+ providers.Google = &google
+ } else {
+ providers.Google = nil
+ }
+
+ // Twitter
+ if source.Twitter != nil {
+ var twitter Twitter
+ err := twitter.Initialize_From_Twitter_STATUS(source.Twitter)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Twitter_STATUS() to populate field Twitter")
+ }
+ providers.Twitter = &twitter
+ } else {
+ providers.Twitter = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of each of the identity providers used to configure ContainerApp Service
+// Authentication/Authorization.
+type IdentityProviders_STATUS struct {
+ // Apple: The configuration settings of the Apple provider.
+ Apple *Apple_STATUS `json:"apple,omitempty"`
+
+ // AzureActiveDirectory: The configuration settings of the Azure Active directory provider.
+ AzureActiveDirectory *AzureActiveDirectory_STATUS `json:"azureActiveDirectory,omitempty"`
+
+ // AzureStaticWebApps: The configuration settings of the Azure Static Web Apps provider.
+ AzureStaticWebApps *AzureStaticWebApps_STATUS `json:"azureStaticWebApps,omitempty"`
+
+ // CustomOpenIdConnectProviders: The map of the name of the alias of each custom Open ID Connect provider to the
+ // configuration settings of the custom Open ID Connect provider.
+ CustomOpenIdConnectProviders map[string]CustomOpenIdConnectProvider_STATUS `json:"customOpenIdConnectProviders,omitempty"`
+
+ // Facebook: The configuration settings of the Facebook provider.
+ Facebook *Facebook_STATUS `json:"facebook,omitempty"`
+
+ // GitHub: The configuration settings of the GitHub provider.
+ GitHub *GitHub_STATUS `json:"gitHub,omitempty"`
+
+ // Google: The configuration settings of the Google provider.
+ Google *Google_STATUS `json:"google,omitempty"`
+
+ // Twitter: The configuration settings of the Twitter provider.
+ Twitter *Twitter_STATUS `json:"twitter,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &IdentityProviders_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (providers *IdentityProviders_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.IdentityProviders_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (providers *IdentityProviders_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.IdentityProviders_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.IdentityProviders_STATUS, got %T", armInput)
+ }
+
+ // Set property "Apple":
+ if typedInput.Apple != nil {
+ var apple1 Apple_STATUS
+ err := apple1.PopulateFromARM(owner, *typedInput.Apple)
+ if err != nil {
+ return err
+ }
+ apple := apple1
+ providers.Apple = &apple
+ }
+
+ // Set property "AzureActiveDirectory":
+ if typedInput.AzureActiveDirectory != nil {
+ var azureActiveDirectory1 AzureActiveDirectory_STATUS
+ err := azureActiveDirectory1.PopulateFromARM(owner, *typedInput.AzureActiveDirectory)
+ if err != nil {
+ return err
+ }
+ azureActiveDirectory := azureActiveDirectory1
+ providers.AzureActiveDirectory = &azureActiveDirectory
+ }
+
+ // Set property "AzureStaticWebApps":
+ if typedInput.AzureStaticWebApps != nil {
+ var azureStaticWebApps1 AzureStaticWebApps_STATUS
+ err := azureStaticWebApps1.PopulateFromARM(owner, *typedInput.AzureStaticWebApps)
+ if err != nil {
+ return err
+ }
+ azureStaticWebApps := azureStaticWebApps1
+ providers.AzureStaticWebApps = &azureStaticWebApps
+ }
+
+ // Set property "CustomOpenIdConnectProviders":
+ if typedInput.CustomOpenIdConnectProviders != nil {
+ providers.CustomOpenIdConnectProviders = make(map[string]CustomOpenIdConnectProvider_STATUS, len(typedInput.CustomOpenIdConnectProviders))
+ for key, value := range typedInput.CustomOpenIdConnectProviders {
+ var value1 CustomOpenIdConnectProvider_STATUS
+ err := value1.PopulateFromARM(owner, value)
+ if err != nil {
+ return err
+ }
+ providers.CustomOpenIdConnectProviders[key] = value1
+ }
+ }
+
+ // Set property "Facebook":
+ if typedInput.Facebook != nil {
+ var facebook1 Facebook_STATUS
+ err := facebook1.PopulateFromARM(owner, *typedInput.Facebook)
+ if err != nil {
+ return err
+ }
+ facebook := facebook1
+ providers.Facebook = &facebook
+ }
+
+ // Set property "GitHub":
+ if typedInput.GitHub != nil {
+ var gitHub1 GitHub_STATUS
+ err := gitHub1.PopulateFromARM(owner, *typedInput.GitHub)
+ if err != nil {
+ return err
+ }
+ gitHub := gitHub1
+ providers.GitHub = &gitHub
+ }
+
+ // Set property "Google":
+ if typedInput.Google != nil {
+ var google1 Google_STATUS
+ err := google1.PopulateFromARM(owner, *typedInput.Google)
+ if err != nil {
+ return err
+ }
+ google := google1
+ providers.Google = &google
+ }
+
+ // Set property "Twitter":
+ if typedInput.Twitter != nil {
+ var twitter1 Twitter_STATUS
+ err := twitter1.PopulateFromARM(owner, *typedInput.Twitter)
+ if err != nil {
+ return err
+ }
+ twitter := twitter1
+ providers.Twitter = &twitter
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_IdentityProviders_STATUS populates our IdentityProviders_STATUS from the provided source IdentityProviders_STATUS
+func (providers *IdentityProviders_STATUS) AssignProperties_From_IdentityProviders_STATUS(source *storage.IdentityProviders_STATUS) error {
+
+ // Apple
+ if source.Apple != nil {
+ var apple Apple_STATUS
+ err := apple.AssignProperties_From_Apple_STATUS(source.Apple)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Apple_STATUS() to populate field Apple")
+ }
+ providers.Apple = &apple
+ } else {
+ providers.Apple = nil
+ }
+
+ // AzureActiveDirectory
+ if source.AzureActiveDirectory != nil {
+ var azureActiveDirectory AzureActiveDirectory_STATUS
+ err := azureActiveDirectory.AssignProperties_From_AzureActiveDirectory_STATUS(source.AzureActiveDirectory)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureActiveDirectory_STATUS() to populate field AzureActiveDirectory")
+ }
+ providers.AzureActiveDirectory = &azureActiveDirectory
+ } else {
+ providers.AzureActiveDirectory = nil
+ }
+
+ // AzureStaticWebApps
+ if source.AzureStaticWebApps != nil {
+ var azureStaticWebApp AzureStaticWebApps_STATUS
+ err := azureStaticWebApp.AssignProperties_From_AzureStaticWebApps_STATUS(source.AzureStaticWebApps)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureStaticWebApps_STATUS() to populate field AzureStaticWebApps")
+ }
+ providers.AzureStaticWebApps = &azureStaticWebApp
+ } else {
+ providers.AzureStaticWebApps = nil
+ }
+
+ // CustomOpenIdConnectProviders
+ if source.CustomOpenIdConnectProviders != nil {
+ customOpenIdConnectProviderMap := make(map[string]CustomOpenIdConnectProvider_STATUS, len(source.CustomOpenIdConnectProviders))
+ for customOpenIdConnectProviderKey, customOpenIdConnectProviderValue := range source.CustomOpenIdConnectProviders {
+ // Shadow the loop variable to avoid aliasing
+ customOpenIdConnectProviderValue := customOpenIdConnectProviderValue
+ var customOpenIdConnectProvider CustomOpenIdConnectProvider_STATUS
+ err := customOpenIdConnectProvider.AssignProperties_From_CustomOpenIdConnectProvider_STATUS(&customOpenIdConnectProviderValue)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CustomOpenIdConnectProvider_STATUS() to populate field CustomOpenIdConnectProviders")
+ }
+ customOpenIdConnectProviderMap[customOpenIdConnectProviderKey] = customOpenIdConnectProvider
+ }
+ providers.CustomOpenIdConnectProviders = customOpenIdConnectProviderMap
+ } else {
+ providers.CustomOpenIdConnectProviders = nil
+ }
+
+ // Facebook
+ if source.Facebook != nil {
+ var facebook Facebook_STATUS
+ err := facebook.AssignProperties_From_Facebook_STATUS(source.Facebook)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Facebook_STATUS() to populate field Facebook")
+ }
+ providers.Facebook = &facebook
+ } else {
+ providers.Facebook = nil
+ }
+
+ // GitHub
+ if source.GitHub != nil {
+ var gitHub GitHub_STATUS
+ err := gitHub.AssignProperties_From_GitHub_STATUS(source.GitHub)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_GitHub_STATUS() to populate field GitHub")
+ }
+ providers.GitHub = &gitHub
+ } else {
+ providers.GitHub = nil
+ }
+
+ // Google
+ if source.Google != nil {
+ var google Google_STATUS
+ err := google.AssignProperties_From_Google_STATUS(source.Google)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Google_STATUS() to populate field Google")
+ }
+ providers.Google = &google
+ } else {
+ providers.Google = nil
+ }
+
+ // Twitter
+ if source.Twitter != nil {
+ var twitter Twitter_STATUS
+ err := twitter.AssignProperties_From_Twitter_STATUS(source.Twitter)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Twitter_STATUS() to populate field Twitter")
+ }
+ providers.Twitter = &twitter
+ } else {
+ providers.Twitter = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_IdentityProviders_STATUS populates the provided destination IdentityProviders_STATUS from our IdentityProviders_STATUS
+func (providers *IdentityProviders_STATUS) AssignProperties_To_IdentityProviders_STATUS(destination *storage.IdentityProviders_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Apple
+ if providers.Apple != nil {
+ var apple storage.Apple_STATUS
+ err := providers.Apple.AssignProperties_To_Apple_STATUS(&apple)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Apple_STATUS() to populate field Apple")
+ }
+ destination.Apple = &apple
+ } else {
+ destination.Apple = nil
+ }
+
+ // AzureActiveDirectory
+ if providers.AzureActiveDirectory != nil {
+ var azureActiveDirectory storage.AzureActiveDirectory_STATUS
+ err := providers.AzureActiveDirectory.AssignProperties_To_AzureActiveDirectory_STATUS(&azureActiveDirectory)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureActiveDirectory_STATUS() to populate field AzureActiveDirectory")
+ }
+ destination.AzureActiveDirectory = &azureActiveDirectory
+ } else {
+ destination.AzureActiveDirectory = nil
+ }
+
+ // AzureStaticWebApps
+ if providers.AzureStaticWebApps != nil {
+ var azureStaticWebApp storage.AzureStaticWebApps_STATUS
+ err := providers.AzureStaticWebApps.AssignProperties_To_AzureStaticWebApps_STATUS(&azureStaticWebApp)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureStaticWebApps_STATUS() to populate field AzureStaticWebApps")
+ }
+ destination.AzureStaticWebApps = &azureStaticWebApp
+ } else {
+ destination.AzureStaticWebApps = nil
+ }
+
+ // CustomOpenIdConnectProviders
+ if providers.CustomOpenIdConnectProviders != nil {
+ customOpenIdConnectProviderMap := make(map[string]storage.CustomOpenIdConnectProvider_STATUS, len(providers.CustomOpenIdConnectProviders))
+ for customOpenIdConnectProviderKey, customOpenIdConnectProviderValue := range providers.CustomOpenIdConnectProviders {
+ // Shadow the loop variable to avoid aliasing
+ customOpenIdConnectProviderValue := customOpenIdConnectProviderValue
+ var customOpenIdConnectProvider storage.CustomOpenIdConnectProvider_STATUS
+ err := customOpenIdConnectProviderValue.AssignProperties_To_CustomOpenIdConnectProvider_STATUS(&customOpenIdConnectProvider)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CustomOpenIdConnectProvider_STATUS() to populate field CustomOpenIdConnectProviders")
+ }
+ customOpenIdConnectProviderMap[customOpenIdConnectProviderKey] = customOpenIdConnectProvider
+ }
+ destination.CustomOpenIdConnectProviders = customOpenIdConnectProviderMap
+ } else {
+ destination.CustomOpenIdConnectProviders = nil
+ }
+
+ // Facebook
+ if providers.Facebook != nil {
+ var facebook storage.Facebook_STATUS
+ err := providers.Facebook.AssignProperties_To_Facebook_STATUS(&facebook)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Facebook_STATUS() to populate field Facebook")
+ }
+ destination.Facebook = &facebook
+ } else {
+ destination.Facebook = nil
+ }
+
+ // GitHub
+ if providers.GitHub != nil {
+ var gitHub storage.GitHub_STATUS
+ err := providers.GitHub.AssignProperties_To_GitHub_STATUS(&gitHub)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_GitHub_STATUS() to populate field GitHub")
+ }
+ destination.GitHub = &gitHub
+ } else {
+ destination.GitHub = nil
+ }
+
+ // Google
+ if providers.Google != nil {
+ var google storage.Google_STATUS
+ err := providers.Google.AssignProperties_To_Google_STATUS(&google)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Google_STATUS() to populate field Google")
+ }
+ destination.Google = &google
+ } else {
+ destination.Google = nil
+ }
+
+ // Twitter
+ if providers.Twitter != nil {
+ var twitter storage.Twitter_STATUS
+ err := providers.Twitter.AssignProperties_To_Twitter_STATUS(&twitter)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Twitter_STATUS() to populate field Twitter")
+ }
+ destination.Twitter = &twitter
+ } else {
+ destination.Twitter = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+type Login struct {
+ // AllowedExternalRedirectUrls: External URLs that can be redirected to as part of logging in or logging out of the app.
+ // Note that the query string part of the URL is ignored.
+ // This is an advanced setting typically only needed by Windows Store application backends.
+ // Note that URLs within the current domain are always implicitly allowed.
+ AllowedExternalRedirectUrls []string `json:"allowedExternalRedirectUrls,omitempty"`
+
+ // CookieExpiration: The configuration settings of the session cookie's expiration.
+ CookieExpiration *CookieExpiration `json:"cookieExpiration,omitempty"`
+
+ // Nonce: The configuration settings of the nonce used in the login flow.
+ Nonce *Nonce `json:"nonce,omitempty"`
+
+ // PreserveUrlFragmentsForLogins: true
if the fragments from the request are preserved after the login request
+ // is made; otherwise, false
.
+ PreserveUrlFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty"`
+
+ // Routes: The routes that specify the endpoints used for login and logout requests.
+ Routes *LoginRoutes `json:"routes,omitempty"`
+
+ // TokenStore: The configuration settings of the token store.
+ TokenStore *TokenStore `json:"tokenStore,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Login{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (login *Login) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if login == nil {
+ return nil, nil
+ }
+ result := &arm.Login{}
+
+ // Set property "AllowedExternalRedirectUrls":
+ for _, item := range login.AllowedExternalRedirectUrls {
+ result.AllowedExternalRedirectUrls = append(result.AllowedExternalRedirectUrls, item)
+ }
+
+ // Set property "CookieExpiration":
+ if login.CookieExpiration != nil {
+ cookieExpiration_ARM, err := (*login.CookieExpiration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ cookieExpiration := *cookieExpiration_ARM.(*arm.CookieExpiration)
+ result.CookieExpiration = &cookieExpiration
+ }
+
+ // Set property "Nonce":
+ if login.Nonce != nil {
+ nonce_ARM, err := (*login.Nonce).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ nonce := *nonce_ARM.(*arm.Nonce)
+ result.Nonce = &nonce
+ }
+
+ // Set property "PreserveUrlFragmentsForLogins":
+ if login.PreserveUrlFragmentsForLogins != nil {
+ preserveUrlFragmentsForLogins := *login.PreserveUrlFragmentsForLogins
+ result.PreserveUrlFragmentsForLogins = &preserveUrlFragmentsForLogins
+ }
+
+ // Set property "Routes":
+ if login.Routes != nil {
+ routes_ARM, err := (*login.Routes).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ routes := *routes_ARM.(*arm.LoginRoutes)
+ result.Routes = &routes
+ }
+
+ // Set property "TokenStore":
+ if login.TokenStore != nil {
+ tokenStore_ARM, err := (*login.TokenStore).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ tokenStore := *tokenStore_ARM.(*arm.TokenStore)
+ result.TokenStore = &tokenStore
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (login *Login) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Login{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (login *Login) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Login)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Login, got %T", armInput)
+ }
+
+ // Set property "AllowedExternalRedirectUrls":
+ for _, item := range typedInput.AllowedExternalRedirectUrls {
+ login.AllowedExternalRedirectUrls = append(login.AllowedExternalRedirectUrls, item)
+ }
+
+ // Set property "CookieExpiration":
+ if typedInput.CookieExpiration != nil {
+ var cookieExpiration1 CookieExpiration
+ err := cookieExpiration1.PopulateFromARM(owner, *typedInput.CookieExpiration)
+ if err != nil {
+ return err
+ }
+ cookieExpiration := cookieExpiration1
+ login.CookieExpiration = &cookieExpiration
+ }
+
+ // Set property "Nonce":
+ if typedInput.Nonce != nil {
+ var nonce1 Nonce
+ err := nonce1.PopulateFromARM(owner, *typedInput.Nonce)
+ if err != nil {
+ return err
+ }
+ nonce := nonce1
+ login.Nonce = &nonce
+ }
+
+ // Set property "PreserveUrlFragmentsForLogins":
+ if typedInput.PreserveUrlFragmentsForLogins != nil {
+ preserveUrlFragmentsForLogins := *typedInput.PreserveUrlFragmentsForLogins
+ login.PreserveUrlFragmentsForLogins = &preserveUrlFragmentsForLogins
+ }
+
+ // Set property "Routes":
+ if typedInput.Routes != nil {
+ var routes1 LoginRoutes
+ err := routes1.PopulateFromARM(owner, *typedInput.Routes)
+ if err != nil {
+ return err
+ }
+ routes := routes1
+ login.Routes = &routes
+ }
+
+ // Set property "TokenStore":
+ if typedInput.TokenStore != nil {
+ var tokenStore1 TokenStore
+ err := tokenStore1.PopulateFromARM(owner, *typedInput.TokenStore)
+ if err != nil {
+ return err
+ }
+ tokenStore := tokenStore1
+ login.TokenStore = &tokenStore
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Login populates our Login from the provided source Login
+func (login *Login) AssignProperties_From_Login(source *storage.Login) error {
+
+ // AllowedExternalRedirectUrls
+ login.AllowedExternalRedirectUrls = genruntime.CloneSliceOfString(source.AllowedExternalRedirectUrls)
+
+ // CookieExpiration
+ if source.CookieExpiration != nil {
+ var cookieExpiration CookieExpiration
+ err := cookieExpiration.AssignProperties_From_CookieExpiration(source.CookieExpiration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CookieExpiration() to populate field CookieExpiration")
+ }
+ login.CookieExpiration = &cookieExpiration
+ } else {
+ login.CookieExpiration = nil
+ }
+
+ // Nonce
+ if source.Nonce != nil {
+ var nonce Nonce
+ err := nonce.AssignProperties_From_Nonce(source.Nonce)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Nonce() to populate field Nonce")
+ }
+ login.Nonce = &nonce
+ } else {
+ login.Nonce = nil
+ }
+
+ // PreserveUrlFragmentsForLogins
+ if source.PreserveUrlFragmentsForLogins != nil {
+ preserveUrlFragmentsForLogin := *source.PreserveUrlFragmentsForLogins
+ login.PreserveUrlFragmentsForLogins = &preserveUrlFragmentsForLogin
+ } else {
+ login.PreserveUrlFragmentsForLogins = nil
+ }
+
+ // Routes
+ if source.Routes != nil {
+ var route LoginRoutes
+ err := route.AssignProperties_From_LoginRoutes(source.Routes)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginRoutes() to populate field Routes")
+ }
+ login.Routes = &route
+ } else {
+ login.Routes = nil
+ }
+
+ // TokenStore
+ if source.TokenStore != nil {
+ var tokenStore TokenStore
+ err := tokenStore.AssignProperties_From_TokenStore(source.TokenStore)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_TokenStore() to populate field TokenStore")
+ }
+ login.TokenStore = &tokenStore
+ } else {
+ login.TokenStore = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Login populates the provided destination Login from our Login
+func (login *Login) AssignProperties_To_Login(destination *storage.Login) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedExternalRedirectUrls
+ destination.AllowedExternalRedirectUrls = genruntime.CloneSliceOfString(login.AllowedExternalRedirectUrls)
+
+ // CookieExpiration
+ if login.CookieExpiration != nil {
+ var cookieExpiration storage.CookieExpiration
+ err := login.CookieExpiration.AssignProperties_To_CookieExpiration(&cookieExpiration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CookieExpiration() to populate field CookieExpiration")
+ }
+ destination.CookieExpiration = &cookieExpiration
+ } else {
+ destination.CookieExpiration = nil
+ }
+
+ // Nonce
+ if login.Nonce != nil {
+ var nonce storage.Nonce
+ err := login.Nonce.AssignProperties_To_Nonce(&nonce)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Nonce() to populate field Nonce")
+ }
+ destination.Nonce = &nonce
+ } else {
+ destination.Nonce = nil
+ }
+
+ // PreserveUrlFragmentsForLogins
+ if login.PreserveUrlFragmentsForLogins != nil {
+ preserveUrlFragmentsForLogin := *login.PreserveUrlFragmentsForLogins
+ destination.PreserveUrlFragmentsForLogins = &preserveUrlFragmentsForLogin
+ } else {
+ destination.PreserveUrlFragmentsForLogins = nil
+ }
+
+ // Routes
+ if login.Routes != nil {
+ var route storage.LoginRoutes
+ err := login.Routes.AssignProperties_To_LoginRoutes(&route)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginRoutes() to populate field Routes")
+ }
+ destination.Routes = &route
+ } else {
+ destination.Routes = nil
+ }
+
+ // TokenStore
+ if login.TokenStore != nil {
+ var tokenStore storage.TokenStore
+ err := login.TokenStore.AssignProperties_To_TokenStore(&tokenStore)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_TokenStore() to populate field TokenStore")
+ }
+ destination.TokenStore = &tokenStore
+ } else {
+ destination.TokenStore = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Login_STATUS populates our Login from the provided source Login_STATUS
+func (login *Login) Initialize_From_Login_STATUS(source *Login_STATUS) error {
+
+ // AllowedExternalRedirectUrls
+ login.AllowedExternalRedirectUrls = genruntime.CloneSliceOfString(source.AllowedExternalRedirectUrls)
+
+ // CookieExpiration
+ if source.CookieExpiration != nil {
+ var cookieExpiration CookieExpiration
+ err := cookieExpiration.Initialize_From_CookieExpiration_STATUS(source.CookieExpiration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_CookieExpiration_STATUS() to populate field CookieExpiration")
+ }
+ login.CookieExpiration = &cookieExpiration
+ } else {
+ login.CookieExpiration = nil
+ }
+
+ // Nonce
+ if source.Nonce != nil {
+ var nonce Nonce
+ err := nonce.Initialize_From_Nonce_STATUS(source.Nonce)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Nonce_STATUS() to populate field Nonce")
+ }
+ login.Nonce = &nonce
+ } else {
+ login.Nonce = nil
+ }
+
+ // PreserveUrlFragmentsForLogins
+ if source.PreserveUrlFragmentsForLogins != nil {
+ preserveUrlFragmentsForLogin := *source.PreserveUrlFragmentsForLogins
+ login.PreserveUrlFragmentsForLogins = &preserveUrlFragmentsForLogin
+ } else {
+ login.PreserveUrlFragmentsForLogins = nil
+ }
+
+ // Routes
+ if source.Routes != nil {
+ var route LoginRoutes
+ err := route.Initialize_From_LoginRoutes_STATUS(source.Routes)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_LoginRoutes_STATUS() to populate field Routes")
+ }
+ login.Routes = &route
+ } else {
+ login.Routes = nil
+ }
+
+ // TokenStore
+ if source.TokenStore != nil {
+ var tokenStore TokenStore
+ err := tokenStore.Initialize_From_TokenStore_STATUS(source.TokenStore)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_TokenStore_STATUS() to populate field TokenStore")
+ }
+ login.TokenStore = &tokenStore
+ } else {
+ login.TokenStore = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+type Login_STATUS struct {
+ // AllowedExternalRedirectUrls: External URLs that can be redirected to as part of logging in or logging out of the app.
+ // Note that the query string part of the URL is ignored.
+ // This is an advanced setting typically only needed by Windows Store application backends.
+ // Note that URLs within the current domain are always implicitly allowed.
+ AllowedExternalRedirectUrls []string `json:"allowedExternalRedirectUrls,omitempty"`
+
+ // CookieExpiration: The configuration settings of the session cookie's expiration.
+ CookieExpiration *CookieExpiration_STATUS `json:"cookieExpiration,omitempty"`
+
+ // Nonce: The configuration settings of the nonce used in the login flow.
+ Nonce *Nonce_STATUS `json:"nonce,omitempty"`
+
+ // PreserveUrlFragmentsForLogins: true
if the fragments from the request are preserved after the login request
+ // is made; otherwise, false
.
+ PreserveUrlFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty"`
+
+ // Routes: The routes that specify the endpoints used for login and logout requests.
+ Routes *LoginRoutes_STATUS `json:"routes,omitempty"`
+
+ // TokenStore: The configuration settings of the token store.
+ TokenStore *TokenStore_STATUS `json:"tokenStore,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Login_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (login *Login_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Login_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (login *Login_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Login_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Login_STATUS, got %T", armInput)
+ }
+
+ // Set property "AllowedExternalRedirectUrls":
+ for _, item := range typedInput.AllowedExternalRedirectUrls {
+ login.AllowedExternalRedirectUrls = append(login.AllowedExternalRedirectUrls, item)
+ }
+
+ // Set property "CookieExpiration":
+ if typedInput.CookieExpiration != nil {
+ var cookieExpiration1 CookieExpiration_STATUS
+ err := cookieExpiration1.PopulateFromARM(owner, *typedInput.CookieExpiration)
+ if err != nil {
+ return err
+ }
+ cookieExpiration := cookieExpiration1
+ login.CookieExpiration = &cookieExpiration
+ }
+
+ // Set property "Nonce":
+ if typedInput.Nonce != nil {
+ var nonce1 Nonce_STATUS
+ err := nonce1.PopulateFromARM(owner, *typedInput.Nonce)
+ if err != nil {
+ return err
+ }
+ nonce := nonce1
+ login.Nonce = &nonce
+ }
+
+ // Set property "PreserveUrlFragmentsForLogins":
+ if typedInput.PreserveUrlFragmentsForLogins != nil {
+ preserveUrlFragmentsForLogins := *typedInput.PreserveUrlFragmentsForLogins
+ login.PreserveUrlFragmentsForLogins = &preserveUrlFragmentsForLogins
+ }
+
+ // Set property "Routes":
+ if typedInput.Routes != nil {
+ var routes1 LoginRoutes_STATUS
+ err := routes1.PopulateFromARM(owner, *typedInput.Routes)
+ if err != nil {
+ return err
+ }
+ routes := routes1
+ login.Routes = &routes
+ }
+
+ // Set property "TokenStore":
+ if typedInput.TokenStore != nil {
+ var tokenStore1 TokenStore_STATUS
+ err := tokenStore1.PopulateFromARM(owner, *typedInput.TokenStore)
+ if err != nil {
+ return err
+ }
+ tokenStore := tokenStore1
+ login.TokenStore = &tokenStore
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Login_STATUS populates our Login_STATUS from the provided source Login_STATUS
+func (login *Login_STATUS) AssignProperties_From_Login_STATUS(source *storage.Login_STATUS) error {
+
+ // AllowedExternalRedirectUrls
+ login.AllowedExternalRedirectUrls = genruntime.CloneSliceOfString(source.AllowedExternalRedirectUrls)
+
+ // CookieExpiration
+ if source.CookieExpiration != nil {
+ var cookieExpiration CookieExpiration_STATUS
+ err := cookieExpiration.AssignProperties_From_CookieExpiration_STATUS(source.CookieExpiration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CookieExpiration_STATUS() to populate field CookieExpiration")
+ }
+ login.CookieExpiration = &cookieExpiration
+ } else {
+ login.CookieExpiration = nil
+ }
+
+ // Nonce
+ if source.Nonce != nil {
+ var nonce Nonce_STATUS
+ err := nonce.AssignProperties_From_Nonce_STATUS(source.Nonce)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Nonce_STATUS() to populate field Nonce")
+ }
+ login.Nonce = &nonce
+ } else {
+ login.Nonce = nil
+ }
+
+ // PreserveUrlFragmentsForLogins
+ if source.PreserveUrlFragmentsForLogins != nil {
+ preserveUrlFragmentsForLogin := *source.PreserveUrlFragmentsForLogins
+ login.PreserveUrlFragmentsForLogins = &preserveUrlFragmentsForLogin
+ } else {
+ login.PreserveUrlFragmentsForLogins = nil
+ }
+
+ // Routes
+ if source.Routes != nil {
+ var route LoginRoutes_STATUS
+ err := route.AssignProperties_From_LoginRoutes_STATUS(source.Routes)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginRoutes_STATUS() to populate field Routes")
+ }
+ login.Routes = &route
+ } else {
+ login.Routes = nil
+ }
+
+ // TokenStore
+ if source.TokenStore != nil {
+ var tokenStore TokenStore_STATUS
+ err := tokenStore.AssignProperties_From_TokenStore_STATUS(source.TokenStore)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_TokenStore_STATUS() to populate field TokenStore")
+ }
+ login.TokenStore = &tokenStore
+ } else {
+ login.TokenStore = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Login_STATUS populates the provided destination Login_STATUS from our Login_STATUS
+func (login *Login_STATUS) AssignProperties_To_Login_STATUS(destination *storage.Login_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedExternalRedirectUrls
+ destination.AllowedExternalRedirectUrls = genruntime.CloneSliceOfString(login.AllowedExternalRedirectUrls)
+
+ // CookieExpiration
+ if login.CookieExpiration != nil {
+ var cookieExpiration storage.CookieExpiration_STATUS
+ err := login.CookieExpiration.AssignProperties_To_CookieExpiration_STATUS(&cookieExpiration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CookieExpiration_STATUS() to populate field CookieExpiration")
+ }
+ destination.CookieExpiration = &cookieExpiration
+ } else {
+ destination.CookieExpiration = nil
+ }
+
+ // Nonce
+ if login.Nonce != nil {
+ var nonce storage.Nonce_STATUS
+ err := login.Nonce.AssignProperties_To_Nonce_STATUS(&nonce)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Nonce_STATUS() to populate field Nonce")
+ }
+ destination.Nonce = &nonce
+ } else {
+ destination.Nonce = nil
+ }
+
+ // PreserveUrlFragmentsForLogins
+ if login.PreserveUrlFragmentsForLogins != nil {
+ preserveUrlFragmentsForLogin := *login.PreserveUrlFragmentsForLogins
+ destination.PreserveUrlFragmentsForLogins = &preserveUrlFragmentsForLogin
+ } else {
+ destination.PreserveUrlFragmentsForLogins = nil
+ }
+
+ // Routes
+ if login.Routes != nil {
+ var route storage.LoginRoutes_STATUS
+ err := login.Routes.AssignProperties_To_LoginRoutes_STATUS(&route)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginRoutes_STATUS() to populate field Routes")
+ }
+ destination.Routes = &route
+ } else {
+ destination.Routes = nil
+ }
+
+ // TokenStore
+ if login.TokenStore != nil {
+ var tokenStore storage.TokenStore_STATUS
+ err := login.TokenStore.AssignProperties_To_TokenStore_STATUS(&tokenStore)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_TokenStore_STATUS() to populate field TokenStore")
+ }
+ destination.TokenStore = &tokenStore
+ } else {
+ destination.TokenStore = nil
+ }
+
+ // 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 &arm.SystemData_STATUS{}
+}
+
+// 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.(arm.SystemData_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.SystemData_STATUS, 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 {
+ var temp string
+ temp = string(*typedInput.CreatedByType)
+ createdByType := SystemData_CreatedByType_STATUS(temp)
+ 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 {
+ var temp string
+ temp = string(*typedInput.LastModifiedByType)
+ lastModifiedByType := SystemData_LastModifiedByType_STATUS(temp)
+ 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
+}
+
+// The configuration settings of the Apple provider.
+type Apple struct {
+ // Enabled: false
if the Apple provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the Apple registration.
+ Registration *AppleRegistration `json:"registration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Apple{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (apple *Apple) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if apple == nil {
+ return nil, nil
+ }
+ result := &arm.Apple{}
+
+ // Set property "Enabled":
+ if apple.Enabled != nil {
+ enabled := *apple.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if apple.Login != nil {
+ login_ARM, err := (*apple.Login).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ login := *login_ARM.(*arm.LoginScopes)
+ result.Login = &login
+ }
+
+ // Set property "Registration":
+ if apple.Registration != nil {
+ registration_ARM, err := (*apple.Registration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ registration := *registration_ARM.(*arm.AppleRegistration)
+ result.Registration = ®istration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (apple *Apple) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Apple{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (apple *Apple) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Apple)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Apple, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ apple.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 LoginScopes
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ apple.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 AppleRegistration
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ apple.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Apple populates our Apple from the provided source Apple
+func (apple *Apple) AssignProperties_From_Apple(source *storage.Apple) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ apple.Enabled = &enabled
+ } else {
+ apple.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes
+ err := login.AssignProperties_From_LoginScopes(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginScopes() to populate field Login")
+ }
+ apple.Login = &login
+ } else {
+ apple.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AppleRegistration
+ err := registration.AssignProperties_From_AppleRegistration(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AppleRegistration() to populate field Registration")
+ }
+ apple.Registration = ®istration
+ } else {
+ apple.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Apple populates the provided destination Apple from our Apple
+func (apple *Apple) AssignProperties_To_Apple(destination *storage.Apple) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if apple.Enabled != nil {
+ enabled := *apple.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Login
+ if apple.Login != nil {
+ var login storage.LoginScopes
+ err := apple.Login.AssignProperties_To_LoginScopes(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginScopes() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if apple.Registration != nil {
+ var registration storage.AppleRegistration
+ err := apple.Registration.AssignProperties_To_AppleRegistration(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AppleRegistration() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Apple_STATUS populates our Apple from the provided source Apple_STATUS
+func (apple *Apple) Initialize_From_Apple_STATUS(source *Apple_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ apple.Enabled = &enabled
+ } else {
+ apple.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes
+ err := login.Initialize_From_LoginScopes_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_LoginScopes_STATUS() to populate field Login")
+ }
+ apple.Login = &login
+ } else {
+ apple.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AppleRegistration
+ err := registration.Initialize_From_AppleRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AppleRegistration_STATUS() to populate field Registration")
+ }
+ apple.Registration = ®istration
+ } else {
+ apple.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Apple provider.
+type Apple_STATUS struct {
+ // Enabled: false
if the Apple provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the Apple registration.
+ Registration *AppleRegistration_STATUS `json:"registration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Apple_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (apple *Apple_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Apple_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (apple *Apple_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Apple_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Apple_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ apple.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 LoginScopes_STATUS
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ apple.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 AppleRegistration_STATUS
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ apple.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Apple_STATUS populates our Apple_STATUS from the provided source Apple_STATUS
+func (apple *Apple_STATUS) AssignProperties_From_Apple_STATUS(source *storage.Apple_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ apple.Enabled = &enabled
+ } else {
+ apple.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes_STATUS
+ err := login.AssignProperties_From_LoginScopes_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginScopes_STATUS() to populate field Login")
+ }
+ apple.Login = &login
+ } else {
+ apple.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AppleRegistration_STATUS
+ err := registration.AssignProperties_From_AppleRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AppleRegistration_STATUS() to populate field Registration")
+ }
+ apple.Registration = ®istration
+ } else {
+ apple.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Apple_STATUS populates the provided destination Apple_STATUS from our Apple_STATUS
+func (apple *Apple_STATUS) AssignProperties_To_Apple_STATUS(destination *storage.Apple_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if apple.Enabled != nil {
+ enabled := *apple.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Login
+ if apple.Login != nil {
+ var login storage.LoginScopes_STATUS
+ err := apple.Login.AssignProperties_To_LoginScopes_STATUS(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginScopes_STATUS() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if apple.Registration != nil {
+ var registration storage.AppleRegistration_STATUS
+ err := apple.Registration.AssignProperties_To_AppleRegistration_STATUS(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AppleRegistration_STATUS() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active directory provider.
+type AzureActiveDirectory struct {
+ // Enabled: false
if the Azure Active Directory provider should not be enabled despite the set registration;
+ // otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // IsAutoProvisioned: Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party
+ // tooling.
+ // This is an internal flag primarily intended to support the Azure Management Portal. Users should not
+ // read or write to this property.
+ IsAutoProvisioned *bool `json:"isAutoProvisioned,omitempty"`
+
+ // Login: The configuration settings of the Azure Active Directory login flow.
+ Login *AzureActiveDirectoryLogin `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the Azure Active Directory app registration.
+ Registration *AzureActiveDirectoryRegistration `json:"registration,omitempty"`
+
+ // Validation: The configuration settings of the Azure Active Directory token validation flow.
+ Validation *AzureActiveDirectoryValidation `json:"validation,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AzureActiveDirectory{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (directory *AzureActiveDirectory) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if directory == nil {
+ return nil, nil
+ }
+ result := &arm.AzureActiveDirectory{}
+
+ // Set property "Enabled":
+ if directory.Enabled != nil {
+ enabled := *directory.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "IsAutoProvisioned":
+ if directory.IsAutoProvisioned != nil {
+ isAutoProvisioned := *directory.IsAutoProvisioned
+ result.IsAutoProvisioned = &isAutoProvisioned
+ }
+
+ // Set property "Login":
+ if directory.Login != nil {
+ login_ARM, err := (*directory.Login).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ login := *login_ARM.(*arm.AzureActiveDirectoryLogin)
+ result.Login = &login
+ }
+
+ // Set property "Registration":
+ if directory.Registration != nil {
+ registration_ARM, err := (*directory.Registration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ registration := *registration_ARM.(*arm.AzureActiveDirectoryRegistration)
+ result.Registration = ®istration
+ }
+
+ // Set property "Validation":
+ if directory.Validation != nil {
+ validation_ARM, err := (*directory.Validation).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ validation := *validation_ARM.(*arm.AzureActiveDirectoryValidation)
+ result.Validation = &validation
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (directory *AzureActiveDirectory) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureActiveDirectory{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (directory *AzureActiveDirectory) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureActiveDirectory)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureActiveDirectory, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ directory.Enabled = &enabled
+ }
+
+ // Set property "IsAutoProvisioned":
+ if typedInput.IsAutoProvisioned != nil {
+ isAutoProvisioned := *typedInput.IsAutoProvisioned
+ directory.IsAutoProvisioned = &isAutoProvisioned
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 AzureActiveDirectoryLogin
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ directory.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 AzureActiveDirectoryRegistration
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ directory.Registration = ®istration
+ }
+
+ // Set property "Validation":
+ if typedInput.Validation != nil {
+ var validation1 AzureActiveDirectoryValidation
+ err := validation1.PopulateFromARM(owner, *typedInput.Validation)
+ if err != nil {
+ return err
+ }
+ validation := validation1
+ directory.Validation = &validation
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureActiveDirectory populates our AzureActiveDirectory from the provided source AzureActiveDirectory
+func (directory *AzureActiveDirectory) AssignProperties_From_AzureActiveDirectory(source *storage.AzureActiveDirectory) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ directory.Enabled = &enabled
+ } else {
+ directory.Enabled = nil
+ }
+
+ // IsAutoProvisioned
+ if source.IsAutoProvisioned != nil {
+ isAutoProvisioned := *source.IsAutoProvisioned
+ directory.IsAutoProvisioned = &isAutoProvisioned
+ } else {
+ directory.IsAutoProvisioned = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login AzureActiveDirectoryLogin
+ err := login.AssignProperties_From_AzureActiveDirectoryLogin(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureActiveDirectoryLogin() to populate field Login")
+ }
+ directory.Login = &login
+ } else {
+ directory.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AzureActiveDirectoryRegistration
+ err := registration.AssignProperties_From_AzureActiveDirectoryRegistration(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureActiveDirectoryRegistration() to populate field Registration")
+ }
+ directory.Registration = ®istration
+ } else {
+ directory.Registration = nil
+ }
+
+ // Validation
+ if source.Validation != nil {
+ var validation AzureActiveDirectoryValidation
+ err := validation.AssignProperties_From_AzureActiveDirectoryValidation(source.Validation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureActiveDirectoryValidation() to populate field Validation")
+ }
+ directory.Validation = &validation
+ } else {
+ directory.Validation = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureActiveDirectory populates the provided destination AzureActiveDirectory from our AzureActiveDirectory
+func (directory *AzureActiveDirectory) AssignProperties_To_AzureActiveDirectory(destination *storage.AzureActiveDirectory) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if directory.Enabled != nil {
+ enabled := *directory.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // IsAutoProvisioned
+ if directory.IsAutoProvisioned != nil {
+ isAutoProvisioned := *directory.IsAutoProvisioned
+ destination.IsAutoProvisioned = &isAutoProvisioned
+ } else {
+ destination.IsAutoProvisioned = nil
+ }
+
+ // Login
+ if directory.Login != nil {
+ var login storage.AzureActiveDirectoryLogin
+ err := directory.Login.AssignProperties_To_AzureActiveDirectoryLogin(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureActiveDirectoryLogin() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if directory.Registration != nil {
+ var registration storage.AzureActiveDirectoryRegistration
+ err := directory.Registration.AssignProperties_To_AzureActiveDirectoryRegistration(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureActiveDirectoryRegistration() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Validation
+ if directory.Validation != nil {
+ var validation storage.AzureActiveDirectoryValidation
+ err := directory.Validation.AssignProperties_To_AzureActiveDirectoryValidation(&validation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureActiveDirectoryValidation() to populate field Validation")
+ }
+ destination.Validation = &validation
+ } else {
+ destination.Validation = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AzureActiveDirectory_STATUS populates our AzureActiveDirectory from the provided source AzureActiveDirectory_STATUS
+func (directory *AzureActiveDirectory) Initialize_From_AzureActiveDirectory_STATUS(source *AzureActiveDirectory_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ directory.Enabled = &enabled
+ } else {
+ directory.Enabled = nil
+ }
+
+ // IsAutoProvisioned
+ if source.IsAutoProvisioned != nil {
+ isAutoProvisioned := *source.IsAutoProvisioned
+ directory.IsAutoProvisioned = &isAutoProvisioned
+ } else {
+ directory.IsAutoProvisioned = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login AzureActiveDirectoryLogin
+ err := login.Initialize_From_AzureActiveDirectoryLogin_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AzureActiveDirectoryLogin_STATUS() to populate field Login")
+ }
+ directory.Login = &login
+ } else {
+ directory.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AzureActiveDirectoryRegistration
+ err := registration.Initialize_From_AzureActiveDirectoryRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AzureActiveDirectoryRegistration_STATUS() to populate field Registration")
+ }
+ directory.Registration = ®istration
+ } else {
+ directory.Registration = nil
+ }
+
+ // Validation
+ if source.Validation != nil {
+ var validation AzureActiveDirectoryValidation
+ err := validation.Initialize_From_AzureActiveDirectoryValidation_STATUS(source.Validation)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AzureActiveDirectoryValidation_STATUS() to populate field Validation")
+ }
+ directory.Validation = &validation
+ } else {
+ directory.Validation = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active directory provider.
+type AzureActiveDirectory_STATUS struct {
+ // Enabled: false
if the Azure Active Directory provider should not be enabled despite the set registration;
+ // otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // IsAutoProvisioned: Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party
+ // tooling.
+ // This is an internal flag primarily intended to support the Azure Management Portal. Users should not
+ // read or write to this property.
+ IsAutoProvisioned *bool `json:"isAutoProvisioned,omitempty"`
+
+ // Login: The configuration settings of the Azure Active Directory login flow.
+ Login *AzureActiveDirectoryLogin_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the Azure Active Directory app registration.
+ Registration *AzureActiveDirectoryRegistration_STATUS `json:"registration,omitempty"`
+
+ // Validation: The configuration settings of the Azure Active Directory token validation flow.
+ Validation *AzureActiveDirectoryValidation_STATUS `json:"validation,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AzureActiveDirectory_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (directory *AzureActiveDirectory_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureActiveDirectory_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (directory *AzureActiveDirectory_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureActiveDirectory_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureActiveDirectory_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ directory.Enabled = &enabled
+ }
+
+ // Set property "IsAutoProvisioned":
+ if typedInput.IsAutoProvisioned != nil {
+ isAutoProvisioned := *typedInput.IsAutoProvisioned
+ directory.IsAutoProvisioned = &isAutoProvisioned
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 AzureActiveDirectoryLogin_STATUS
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ directory.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 AzureActiveDirectoryRegistration_STATUS
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ directory.Registration = ®istration
+ }
+
+ // Set property "Validation":
+ if typedInput.Validation != nil {
+ var validation1 AzureActiveDirectoryValidation_STATUS
+ err := validation1.PopulateFromARM(owner, *typedInput.Validation)
+ if err != nil {
+ return err
+ }
+ validation := validation1
+ directory.Validation = &validation
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureActiveDirectory_STATUS populates our AzureActiveDirectory_STATUS from the provided source AzureActiveDirectory_STATUS
+func (directory *AzureActiveDirectory_STATUS) AssignProperties_From_AzureActiveDirectory_STATUS(source *storage.AzureActiveDirectory_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ directory.Enabled = &enabled
+ } else {
+ directory.Enabled = nil
+ }
+
+ // IsAutoProvisioned
+ if source.IsAutoProvisioned != nil {
+ isAutoProvisioned := *source.IsAutoProvisioned
+ directory.IsAutoProvisioned = &isAutoProvisioned
+ } else {
+ directory.IsAutoProvisioned = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login AzureActiveDirectoryLogin_STATUS
+ err := login.AssignProperties_From_AzureActiveDirectoryLogin_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureActiveDirectoryLogin_STATUS() to populate field Login")
+ }
+ directory.Login = &login
+ } else {
+ directory.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AzureActiveDirectoryRegistration_STATUS
+ err := registration.AssignProperties_From_AzureActiveDirectoryRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureActiveDirectoryRegistration_STATUS() to populate field Registration")
+ }
+ directory.Registration = ®istration
+ } else {
+ directory.Registration = nil
+ }
+
+ // Validation
+ if source.Validation != nil {
+ var validation AzureActiveDirectoryValidation_STATUS
+ err := validation.AssignProperties_From_AzureActiveDirectoryValidation_STATUS(source.Validation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureActiveDirectoryValidation_STATUS() to populate field Validation")
+ }
+ directory.Validation = &validation
+ } else {
+ directory.Validation = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureActiveDirectory_STATUS populates the provided destination AzureActiveDirectory_STATUS from our AzureActiveDirectory_STATUS
+func (directory *AzureActiveDirectory_STATUS) AssignProperties_To_AzureActiveDirectory_STATUS(destination *storage.AzureActiveDirectory_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if directory.Enabled != nil {
+ enabled := *directory.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // IsAutoProvisioned
+ if directory.IsAutoProvisioned != nil {
+ isAutoProvisioned := *directory.IsAutoProvisioned
+ destination.IsAutoProvisioned = &isAutoProvisioned
+ } else {
+ destination.IsAutoProvisioned = nil
+ }
+
+ // Login
+ if directory.Login != nil {
+ var login storage.AzureActiveDirectoryLogin_STATUS
+ err := directory.Login.AssignProperties_To_AzureActiveDirectoryLogin_STATUS(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureActiveDirectoryLogin_STATUS() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if directory.Registration != nil {
+ var registration storage.AzureActiveDirectoryRegistration_STATUS
+ err := directory.Registration.AssignProperties_To_AzureActiveDirectoryRegistration_STATUS(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureActiveDirectoryRegistration_STATUS() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Validation
+ if directory.Validation != nil {
+ var validation storage.AzureActiveDirectoryValidation_STATUS
+ err := directory.Validation.AssignProperties_To_AzureActiveDirectoryValidation_STATUS(&validation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureActiveDirectoryValidation_STATUS() to populate field Validation")
+ }
+ destination.Validation = &validation
+ } else {
+ destination.Validation = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Static Web Apps provider.
+type AzureStaticWebApps struct {
+ // Enabled: false
if the Azure Static Web Apps provider should not be enabled despite the set registration;
+ // otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Registration: The configuration settings of the Azure Static Web Apps registration.
+ Registration *AzureStaticWebAppsRegistration `json:"registration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AzureStaticWebApps{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (apps *AzureStaticWebApps) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if apps == nil {
+ return nil, nil
+ }
+ result := &arm.AzureStaticWebApps{}
+
+ // Set property "Enabled":
+ if apps.Enabled != nil {
+ enabled := *apps.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "Registration":
+ if apps.Registration != nil {
+ registration_ARM, err := (*apps.Registration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ registration := *registration_ARM.(*arm.AzureStaticWebAppsRegistration)
+ result.Registration = ®istration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (apps *AzureStaticWebApps) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureStaticWebApps{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (apps *AzureStaticWebApps) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureStaticWebApps)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureStaticWebApps, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ apps.Enabled = &enabled
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 AzureStaticWebAppsRegistration
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ apps.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureStaticWebApps populates our AzureStaticWebApps from the provided source AzureStaticWebApps
+func (apps *AzureStaticWebApps) AssignProperties_From_AzureStaticWebApps(source *storage.AzureStaticWebApps) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ apps.Enabled = &enabled
+ } else {
+ apps.Enabled = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AzureStaticWebAppsRegistration
+ err := registration.AssignProperties_From_AzureStaticWebAppsRegistration(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureStaticWebAppsRegistration() to populate field Registration")
+ }
+ apps.Registration = ®istration
+ } else {
+ apps.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureStaticWebApps populates the provided destination AzureStaticWebApps from our AzureStaticWebApps
+func (apps *AzureStaticWebApps) AssignProperties_To_AzureStaticWebApps(destination *storage.AzureStaticWebApps) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if apps.Enabled != nil {
+ enabled := *apps.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Registration
+ if apps.Registration != nil {
+ var registration storage.AzureStaticWebAppsRegistration
+ err := apps.Registration.AssignProperties_To_AzureStaticWebAppsRegistration(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureStaticWebAppsRegistration() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AzureStaticWebApps_STATUS populates our AzureStaticWebApps from the provided source AzureStaticWebApps_STATUS
+func (apps *AzureStaticWebApps) Initialize_From_AzureStaticWebApps_STATUS(source *AzureStaticWebApps_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ apps.Enabled = &enabled
+ } else {
+ apps.Enabled = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AzureStaticWebAppsRegistration
+ err := registration.Initialize_From_AzureStaticWebAppsRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AzureStaticWebAppsRegistration_STATUS() to populate field Registration")
+ }
+ apps.Registration = ®istration
+ } else {
+ apps.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Static Web Apps provider.
+type AzureStaticWebApps_STATUS struct {
+ // Enabled: false
if the Azure Static Web Apps provider should not be enabled despite the set registration;
+ // otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Registration: The configuration settings of the Azure Static Web Apps registration.
+ Registration *AzureStaticWebAppsRegistration_STATUS `json:"registration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AzureStaticWebApps_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (apps *AzureStaticWebApps_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureStaticWebApps_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (apps *AzureStaticWebApps_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureStaticWebApps_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureStaticWebApps_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ apps.Enabled = &enabled
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 AzureStaticWebAppsRegistration_STATUS
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ apps.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureStaticWebApps_STATUS populates our AzureStaticWebApps_STATUS from the provided source AzureStaticWebApps_STATUS
+func (apps *AzureStaticWebApps_STATUS) AssignProperties_From_AzureStaticWebApps_STATUS(source *storage.AzureStaticWebApps_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ apps.Enabled = &enabled
+ } else {
+ apps.Enabled = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AzureStaticWebAppsRegistration_STATUS
+ err := registration.AssignProperties_From_AzureStaticWebAppsRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AzureStaticWebAppsRegistration_STATUS() to populate field Registration")
+ }
+ apps.Registration = ®istration
+ } else {
+ apps.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureStaticWebApps_STATUS populates the provided destination AzureStaticWebApps_STATUS from our AzureStaticWebApps_STATUS
+func (apps *AzureStaticWebApps_STATUS) AssignProperties_To_AzureStaticWebApps_STATUS(destination *storage.AzureStaticWebApps_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if apps.Enabled != nil {
+ enabled := *apps.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Registration
+ if apps.Registration != nil {
+ var registration storage.AzureStaticWebAppsRegistration_STATUS
+ err := apps.Registration.AssignProperties_To_AzureStaticWebAppsRegistration_STATUS(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AzureStaticWebAppsRegistration_STATUS() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the session cookie's expiration.
+type CookieExpiration struct {
+ // Convention: The convention used when determining the session cookie's expiration.
+ Convention *CookieExpiration_Convention `json:"convention,omitempty"`
+
+ // TimeToExpiration: The time after the request is made when the session cookie should expire.
+ TimeToExpiration *string `json:"timeToExpiration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &CookieExpiration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (expiration *CookieExpiration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if expiration == nil {
+ return nil, nil
+ }
+ result := &arm.CookieExpiration{}
+
+ // Set property "Convention":
+ if expiration.Convention != nil {
+ var temp string
+ temp = string(*expiration.Convention)
+ convention := arm.CookieExpiration_Convention(temp)
+ result.Convention = &convention
+ }
+
+ // Set property "TimeToExpiration":
+ if expiration.TimeToExpiration != nil {
+ timeToExpiration := *expiration.TimeToExpiration
+ result.TimeToExpiration = &timeToExpiration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (expiration *CookieExpiration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CookieExpiration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (expiration *CookieExpiration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CookieExpiration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CookieExpiration, got %T", armInput)
+ }
+
+ // Set property "Convention":
+ if typedInput.Convention != nil {
+ var temp string
+ temp = string(*typedInput.Convention)
+ convention := CookieExpiration_Convention(temp)
+ expiration.Convention = &convention
+ }
+
+ // Set property "TimeToExpiration":
+ if typedInput.TimeToExpiration != nil {
+ timeToExpiration := *typedInput.TimeToExpiration
+ expiration.TimeToExpiration = &timeToExpiration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CookieExpiration populates our CookieExpiration from the provided source CookieExpiration
+func (expiration *CookieExpiration) AssignProperties_From_CookieExpiration(source *storage.CookieExpiration) error {
+
+ // Convention
+ if source.Convention != nil {
+ convention := *source.Convention
+ conventionTemp := genruntime.ToEnum(convention, cookieExpiration_Convention_Values)
+ expiration.Convention = &conventionTemp
+ } else {
+ expiration.Convention = nil
+ }
+
+ // TimeToExpiration
+ expiration.TimeToExpiration = genruntime.ClonePointerToString(source.TimeToExpiration)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CookieExpiration populates the provided destination CookieExpiration from our CookieExpiration
+func (expiration *CookieExpiration) AssignProperties_To_CookieExpiration(destination *storage.CookieExpiration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Convention
+ if expiration.Convention != nil {
+ convention := string(*expiration.Convention)
+ destination.Convention = &convention
+ } else {
+ destination.Convention = nil
+ }
+
+ // TimeToExpiration
+ destination.TimeToExpiration = genruntime.ClonePointerToString(expiration.TimeToExpiration)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_CookieExpiration_STATUS populates our CookieExpiration from the provided source CookieExpiration_STATUS
+func (expiration *CookieExpiration) Initialize_From_CookieExpiration_STATUS(source *CookieExpiration_STATUS) error {
+
+ // Convention
+ if source.Convention != nil {
+ convention := genruntime.ToEnum(string(*source.Convention), cookieExpiration_Convention_Values)
+ expiration.Convention = &convention
+ } else {
+ expiration.Convention = nil
+ }
+
+ // TimeToExpiration
+ expiration.TimeToExpiration = genruntime.ClonePointerToString(source.TimeToExpiration)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the session cookie's expiration.
+type CookieExpiration_STATUS struct {
+ // Convention: The convention used when determining the session cookie's expiration.
+ Convention *CookieExpiration_Convention_STATUS `json:"convention,omitempty"`
+
+ // TimeToExpiration: The time after the request is made when the session cookie should expire.
+ TimeToExpiration *string `json:"timeToExpiration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &CookieExpiration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (expiration *CookieExpiration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CookieExpiration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (expiration *CookieExpiration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CookieExpiration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CookieExpiration_STATUS, got %T", armInput)
+ }
+
+ // Set property "Convention":
+ if typedInput.Convention != nil {
+ var temp string
+ temp = string(*typedInput.Convention)
+ convention := CookieExpiration_Convention_STATUS(temp)
+ expiration.Convention = &convention
+ }
+
+ // Set property "TimeToExpiration":
+ if typedInput.TimeToExpiration != nil {
+ timeToExpiration := *typedInput.TimeToExpiration
+ expiration.TimeToExpiration = &timeToExpiration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CookieExpiration_STATUS populates our CookieExpiration_STATUS from the provided source CookieExpiration_STATUS
+func (expiration *CookieExpiration_STATUS) AssignProperties_From_CookieExpiration_STATUS(source *storage.CookieExpiration_STATUS) error {
+
+ // Convention
+ if source.Convention != nil {
+ convention := *source.Convention
+ conventionTemp := genruntime.ToEnum(convention, cookieExpiration_Convention_STATUS_Values)
+ expiration.Convention = &conventionTemp
+ } else {
+ expiration.Convention = nil
+ }
+
+ // TimeToExpiration
+ expiration.TimeToExpiration = genruntime.ClonePointerToString(source.TimeToExpiration)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CookieExpiration_STATUS populates the provided destination CookieExpiration_STATUS from our CookieExpiration_STATUS
+func (expiration *CookieExpiration_STATUS) AssignProperties_To_CookieExpiration_STATUS(destination *storage.CookieExpiration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Convention
+ if expiration.Convention != nil {
+ convention := string(*expiration.Convention)
+ destination.Convention = &convention
+ } else {
+ destination.Convention = nil
+ }
+
+ // TimeToExpiration
+ destination.TimeToExpiration = genruntime.ClonePointerToString(expiration.TimeToExpiration)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the custom Open ID Connect provider.
+type CustomOpenIdConnectProvider struct {
+ // Enabled: false
if the custom Open ID provider provider should not be enabled; otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow of the custom Open ID Connect provider.
+ Login *OpenIdConnectLogin `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the custom Open ID Connect provider.
+ Registration *OpenIdConnectRegistration `json:"registration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &CustomOpenIdConnectProvider{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (provider *CustomOpenIdConnectProvider) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if provider == nil {
+ return nil, nil
+ }
+ result := &arm.CustomOpenIdConnectProvider{}
+
+ // Set property "Enabled":
+ if provider.Enabled != nil {
+ enabled := *provider.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if provider.Login != nil {
+ login_ARM, err := (*provider.Login).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ login := *login_ARM.(*arm.OpenIdConnectLogin)
+ result.Login = &login
+ }
+
+ // Set property "Registration":
+ if provider.Registration != nil {
+ registration_ARM, err := (*provider.Registration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ registration := *registration_ARM.(*arm.OpenIdConnectRegistration)
+ result.Registration = ®istration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (provider *CustomOpenIdConnectProvider) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CustomOpenIdConnectProvider{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (provider *CustomOpenIdConnectProvider) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CustomOpenIdConnectProvider)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CustomOpenIdConnectProvider, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ provider.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 OpenIdConnectLogin
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ provider.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 OpenIdConnectRegistration
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ provider.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CustomOpenIdConnectProvider populates our CustomOpenIdConnectProvider from the provided source CustomOpenIdConnectProvider
+func (provider *CustomOpenIdConnectProvider) AssignProperties_From_CustomOpenIdConnectProvider(source *storage.CustomOpenIdConnectProvider) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ provider.Enabled = &enabled
+ } else {
+ provider.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login OpenIdConnectLogin
+ err := login.AssignProperties_From_OpenIdConnectLogin(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_OpenIdConnectLogin() to populate field Login")
+ }
+ provider.Login = &login
+ } else {
+ provider.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration OpenIdConnectRegistration
+ err := registration.AssignProperties_From_OpenIdConnectRegistration(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_OpenIdConnectRegistration() to populate field Registration")
+ }
+ provider.Registration = ®istration
+ } else {
+ provider.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CustomOpenIdConnectProvider populates the provided destination CustomOpenIdConnectProvider from our CustomOpenIdConnectProvider
+func (provider *CustomOpenIdConnectProvider) AssignProperties_To_CustomOpenIdConnectProvider(destination *storage.CustomOpenIdConnectProvider) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if provider.Enabled != nil {
+ enabled := *provider.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Login
+ if provider.Login != nil {
+ var login storage.OpenIdConnectLogin
+ err := provider.Login.AssignProperties_To_OpenIdConnectLogin(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_OpenIdConnectLogin() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if provider.Registration != nil {
+ var registration storage.OpenIdConnectRegistration
+ err := provider.Registration.AssignProperties_To_OpenIdConnectRegistration(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_OpenIdConnectRegistration() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_CustomOpenIdConnectProvider_STATUS populates our CustomOpenIdConnectProvider from the provided source CustomOpenIdConnectProvider_STATUS
+func (provider *CustomOpenIdConnectProvider) Initialize_From_CustomOpenIdConnectProvider_STATUS(source *CustomOpenIdConnectProvider_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ provider.Enabled = &enabled
+ } else {
+ provider.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login OpenIdConnectLogin
+ err := login.Initialize_From_OpenIdConnectLogin_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_OpenIdConnectLogin_STATUS() to populate field Login")
+ }
+ provider.Login = &login
+ } else {
+ provider.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration OpenIdConnectRegistration
+ err := registration.Initialize_From_OpenIdConnectRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_OpenIdConnectRegistration_STATUS() to populate field Registration")
+ }
+ provider.Registration = ®istration
+ } else {
+ provider.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the custom Open ID Connect provider.
+type CustomOpenIdConnectProvider_STATUS struct {
+ // Enabled: false
if the custom Open ID provider provider should not be enabled; otherwise, true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow of the custom Open ID Connect provider.
+ Login *OpenIdConnectLogin_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the custom Open ID Connect provider.
+ Registration *OpenIdConnectRegistration_STATUS `json:"registration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &CustomOpenIdConnectProvider_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (provider *CustomOpenIdConnectProvider_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CustomOpenIdConnectProvider_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (provider *CustomOpenIdConnectProvider_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CustomOpenIdConnectProvider_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CustomOpenIdConnectProvider_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ provider.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 OpenIdConnectLogin_STATUS
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ provider.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 OpenIdConnectRegistration_STATUS
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ provider.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CustomOpenIdConnectProvider_STATUS populates our CustomOpenIdConnectProvider_STATUS from the provided source CustomOpenIdConnectProvider_STATUS
+func (provider *CustomOpenIdConnectProvider_STATUS) AssignProperties_From_CustomOpenIdConnectProvider_STATUS(source *storage.CustomOpenIdConnectProvider_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ provider.Enabled = &enabled
+ } else {
+ provider.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login OpenIdConnectLogin_STATUS
+ err := login.AssignProperties_From_OpenIdConnectLogin_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_OpenIdConnectLogin_STATUS() to populate field Login")
+ }
+ provider.Login = &login
+ } else {
+ provider.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration OpenIdConnectRegistration_STATUS
+ err := registration.AssignProperties_From_OpenIdConnectRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_OpenIdConnectRegistration_STATUS() to populate field Registration")
+ }
+ provider.Registration = ®istration
+ } else {
+ provider.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CustomOpenIdConnectProvider_STATUS populates the provided destination CustomOpenIdConnectProvider_STATUS from our CustomOpenIdConnectProvider_STATUS
+func (provider *CustomOpenIdConnectProvider_STATUS) AssignProperties_To_CustomOpenIdConnectProvider_STATUS(destination *storage.CustomOpenIdConnectProvider_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if provider.Enabled != nil {
+ enabled := *provider.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Login
+ if provider.Login != nil {
+ var login storage.OpenIdConnectLogin_STATUS
+ err := provider.Login.AssignProperties_To_OpenIdConnectLogin_STATUS(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_OpenIdConnectLogin_STATUS() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if provider.Registration != nil {
+ var registration storage.OpenIdConnectRegistration_STATUS
+ err := provider.Registration.AssignProperties_To_OpenIdConnectRegistration_STATUS(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_OpenIdConnectRegistration_STATUS() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Facebook provider.
+type Facebook struct {
+ // Enabled: false
if the Facebook provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // GraphApiVersion: The version of the Facebook api to be used while logging in.
+ GraphApiVersion *string `json:"graphApiVersion,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Facebook provider.
+ Registration *AppRegistration `json:"registration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Facebook{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (facebook *Facebook) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if facebook == nil {
+ return nil, nil
+ }
+ result := &arm.Facebook{}
+
+ // Set property "Enabled":
+ if facebook.Enabled != nil {
+ enabled := *facebook.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "GraphApiVersion":
+ if facebook.GraphApiVersion != nil {
+ graphApiVersion := *facebook.GraphApiVersion
+ result.GraphApiVersion = &graphApiVersion
+ }
+
+ // Set property "Login":
+ if facebook.Login != nil {
+ login_ARM, err := (*facebook.Login).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ login := *login_ARM.(*arm.LoginScopes)
+ result.Login = &login
+ }
+
+ // Set property "Registration":
+ if facebook.Registration != nil {
+ registration_ARM, err := (*facebook.Registration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ registration := *registration_ARM.(*arm.AppRegistration)
+ result.Registration = ®istration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (facebook *Facebook) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Facebook{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (facebook *Facebook) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Facebook)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Facebook, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ facebook.Enabled = &enabled
+ }
+
+ // Set property "GraphApiVersion":
+ if typedInput.GraphApiVersion != nil {
+ graphApiVersion := *typedInput.GraphApiVersion
+ facebook.GraphApiVersion = &graphApiVersion
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 LoginScopes
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ facebook.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 AppRegistration
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ facebook.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Facebook populates our Facebook from the provided source Facebook
+func (facebook *Facebook) AssignProperties_From_Facebook(source *storage.Facebook) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ facebook.Enabled = &enabled
+ } else {
+ facebook.Enabled = nil
+ }
+
+ // GraphApiVersion
+ facebook.GraphApiVersion = genruntime.ClonePointerToString(source.GraphApiVersion)
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes
+ err := login.AssignProperties_From_LoginScopes(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginScopes() to populate field Login")
+ }
+ facebook.Login = &login
+ } else {
+ facebook.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AppRegistration
+ err := registration.AssignProperties_From_AppRegistration(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AppRegistration() to populate field Registration")
+ }
+ facebook.Registration = ®istration
+ } else {
+ facebook.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Facebook populates the provided destination Facebook from our Facebook
+func (facebook *Facebook) AssignProperties_To_Facebook(destination *storage.Facebook) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if facebook.Enabled != nil {
+ enabled := *facebook.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // GraphApiVersion
+ destination.GraphApiVersion = genruntime.ClonePointerToString(facebook.GraphApiVersion)
+
+ // Login
+ if facebook.Login != nil {
+ var login storage.LoginScopes
+ err := facebook.Login.AssignProperties_To_LoginScopes(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginScopes() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if facebook.Registration != nil {
+ var registration storage.AppRegistration
+ err := facebook.Registration.AssignProperties_To_AppRegistration(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AppRegistration() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Facebook_STATUS populates our Facebook from the provided source Facebook_STATUS
+func (facebook *Facebook) Initialize_From_Facebook_STATUS(source *Facebook_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ facebook.Enabled = &enabled
+ } else {
+ facebook.Enabled = nil
+ }
+
+ // GraphApiVersion
+ facebook.GraphApiVersion = genruntime.ClonePointerToString(source.GraphApiVersion)
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes
+ err := login.Initialize_From_LoginScopes_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_LoginScopes_STATUS() to populate field Login")
+ }
+ facebook.Login = &login
+ } else {
+ facebook.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AppRegistration
+ err := registration.Initialize_From_AppRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AppRegistration_STATUS() to populate field Registration")
+ }
+ facebook.Registration = ®istration
+ } else {
+ facebook.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Facebook provider.
+type Facebook_STATUS struct {
+ // Enabled: false
if the Facebook provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // GraphApiVersion: The version of the Facebook api to be used while logging in.
+ GraphApiVersion *string `json:"graphApiVersion,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Facebook provider.
+ Registration *AppRegistration_STATUS `json:"registration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Facebook_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (facebook *Facebook_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Facebook_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (facebook *Facebook_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Facebook_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Facebook_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ facebook.Enabled = &enabled
+ }
+
+ // Set property "GraphApiVersion":
+ if typedInput.GraphApiVersion != nil {
+ graphApiVersion := *typedInput.GraphApiVersion
+ facebook.GraphApiVersion = &graphApiVersion
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 LoginScopes_STATUS
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ facebook.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 AppRegistration_STATUS
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ facebook.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Facebook_STATUS populates our Facebook_STATUS from the provided source Facebook_STATUS
+func (facebook *Facebook_STATUS) AssignProperties_From_Facebook_STATUS(source *storage.Facebook_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ facebook.Enabled = &enabled
+ } else {
+ facebook.Enabled = nil
+ }
+
+ // GraphApiVersion
+ facebook.GraphApiVersion = genruntime.ClonePointerToString(source.GraphApiVersion)
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes_STATUS
+ err := login.AssignProperties_From_LoginScopes_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginScopes_STATUS() to populate field Login")
+ }
+ facebook.Login = &login
+ } else {
+ facebook.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration AppRegistration_STATUS
+ err := registration.AssignProperties_From_AppRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AppRegistration_STATUS() to populate field Registration")
+ }
+ facebook.Registration = ®istration
+ } else {
+ facebook.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Facebook_STATUS populates the provided destination Facebook_STATUS from our Facebook_STATUS
+func (facebook *Facebook_STATUS) AssignProperties_To_Facebook_STATUS(destination *storage.Facebook_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if facebook.Enabled != nil {
+ enabled := *facebook.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // GraphApiVersion
+ destination.GraphApiVersion = genruntime.ClonePointerToString(facebook.GraphApiVersion)
+
+ // Login
+ if facebook.Login != nil {
+ var login storage.LoginScopes_STATUS
+ err := facebook.Login.AssignProperties_To_LoginScopes_STATUS(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginScopes_STATUS() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if facebook.Registration != nil {
+ var registration storage.AppRegistration_STATUS
+ err := facebook.Registration.AssignProperties_To_AppRegistration_STATUS(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AppRegistration_STATUS() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of a forward proxy used to make the requests.
+type ForwardProxy struct {
+ // Convention: The convention used to determine the url of the request made.
+ Convention *ForwardProxy_Convention `json:"convention,omitempty"`
+
+ // CustomHostHeaderName: The name of the header containing the host of the request.
+ CustomHostHeaderName *string `json:"customHostHeaderName,omitempty"`
+
+ // CustomProtoHeaderName: The name of the header containing the scheme of the request.
+ CustomProtoHeaderName *string `json:"customProtoHeaderName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ForwardProxy{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (proxy *ForwardProxy) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if proxy == nil {
+ return nil, nil
+ }
+ result := &arm.ForwardProxy{}
+
+ // Set property "Convention":
+ if proxy.Convention != nil {
+ var temp string
+ temp = string(*proxy.Convention)
+ convention := arm.ForwardProxy_Convention(temp)
+ result.Convention = &convention
+ }
+
+ // Set property "CustomHostHeaderName":
+ if proxy.CustomHostHeaderName != nil {
+ customHostHeaderName := *proxy.CustomHostHeaderName
+ result.CustomHostHeaderName = &customHostHeaderName
+ }
+
+ // Set property "CustomProtoHeaderName":
+ if proxy.CustomProtoHeaderName != nil {
+ customProtoHeaderName := *proxy.CustomProtoHeaderName
+ result.CustomProtoHeaderName = &customProtoHeaderName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (proxy *ForwardProxy) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ForwardProxy{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (proxy *ForwardProxy) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ForwardProxy)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ForwardProxy, got %T", armInput)
+ }
+
+ // Set property "Convention":
+ if typedInput.Convention != nil {
+ var temp string
+ temp = string(*typedInput.Convention)
+ convention := ForwardProxy_Convention(temp)
+ proxy.Convention = &convention
+ }
+
+ // Set property "CustomHostHeaderName":
+ if typedInput.CustomHostHeaderName != nil {
+ customHostHeaderName := *typedInput.CustomHostHeaderName
+ proxy.CustomHostHeaderName = &customHostHeaderName
+ }
+
+ // Set property "CustomProtoHeaderName":
+ if typedInput.CustomProtoHeaderName != nil {
+ customProtoHeaderName := *typedInput.CustomProtoHeaderName
+ proxy.CustomProtoHeaderName = &customProtoHeaderName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ForwardProxy populates our ForwardProxy from the provided source ForwardProxy
+func (proxy *ForwardProxy) AssignProperties_From_ForwardProxy(source *storage.ForwardProxy) error {
+
+ // Convention
+ if source.Convention != nil {
+ convention := *source.Convention
+ conventionTemp := genruntime.ToEnum(convention, forwardProxy_Convention_Values)
+ proxy.Convention = &conventionTemp
+ } else {
+ proxy.Convention = nil
+ }
+
+ // CustomHostHeaderName
+ proxy.CustomHostHeaderName = genruntime.ClonePointerToString(source.CustomHostHeaderName)
+
+ // CustomProtoHeaderName
+ proxy.CustomProtoHeaderName = genruntime.ClonePointerToString(source.CustomProtoHeaderName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ForwardProxy populates the provided destination ForwardProxy from our ForwardProxy
+func (proxy *ForwardProxy) AssignProperties_To_ForwardProxy(destination *storage.ForwardProxy) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Convention
+ if proxy.Convention != nil {
+ convention := string(*proxy.Convention)
+ destination.Convention = &convention
+ } else {
+ destination.Convention = nil
+ }
+
+ // CustomHostHeaderName
+ destination.CustomHostHeaderName = genruntime.ClonePointerToString(proxy.CustomHostHeaderName)
+
+ // CustomProtoHeaderName
+ destination.CustomProtoHeaderName = genruntime.ClonePointerToString(proxy.CustomProtoHeaderName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ForwardProxy_STATUS populates our ForwardProxy from the provided source ForwardProxy_STATUS
+func (proxy *ForwardProxy) Initialize_From_ForwardProxy_STATUS(source *ForwardProxy_STATUS) error {
+
+ // Convention
+ if source.Convention != nil {
+ convention := genruntime.ToEnum(string(*source.Convention), forwardProxy_Convention_Values)
+ proxy.Convention = &convention
+ } else {
+ proxy.Convention = nil
+ }
+
+ // CustomHostHeaderName
+ proxy.CustomHostHeaderName = genruntime.ClonePointerToString(source.CustomHostHeaderName)
+
+ // CustomProtoHeaderName
+ proxy.CustomProtoHeaderName = genruntime.ClonePointerToString(source.CustomProtoHeaderName)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of a forward proxy used to make the requests.
+type ForwardProxy_STATUS struct {
+ // Convention: The convention used to determine the url of the request made.
+ Convention *ForwardProxy_Convention_STATUS `json:"convention,omitempty"`
+
+ // CustomHostHeaderName: The name of the header containing the host of the request.
+ CustomHostHeaderName *string `json:"customHostHeaderName,omitempty"`
+
+ // CustomProtoHeaderName: The name of the header containing the scheme of the request.
+ CustomProtoHeaderName *string `json:"customProtoHeaderName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ForwardProxy_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (proxy *ForwardProxy_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ForwardProxy_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (proxy *ForwardProxy_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ForwardProxy_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ForwardProxy_STATUS, got %T", armInput)
+ }
+
+ // Set property "Convention":
+ if typedInput.Convention != nil {
+ var temp string
+ temp = string(*typedInput.Convention)
+ convention := ForwardProxy_Convention_STATUS(temp)
+ proxy.Convention = &convention
+ }
+
+ // Set property "CustomHostHeaderName":
+ if typedInput.CustomHostHeaderName != nil {
+ customHostHeaderName := *typedInput.CustomHostHeaderName
+ proxy.CustomHostHeaderName = &customHostHeaderName
+ }
+
+ // Set property "CustomProtoHeaderName":
+ if typedInput.CustomProtoHeaderName != nil {
+ customProtoHeaderName := *typedInput.CustomProtoHeaderName
+ proxy.CustomProtoHeaderName = &customProtoHeaderName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ForwardProxy_STATUS populates our ForwardProxy_STATUS from the provided source ForwardProxy_STATUS
+func (proxy *ForwardProxy_STATUS) AssignProperties_From_ForwardProxy_STATUS(source *storage.ForwardProxy_STATUS) error {
+
+ // Convention
+ if source.Convention != nil {
+ convention := *source.Convention
+ conventionTemp := genruntime.ToEnum(convention, forwardProxy_Convention_STATUS_Values)
+ proxy.Convention = &conventionTemp
+ } else {
+ proxy.Convention = nil
+ }
+
+ // CustomHostHeaderName
+ proxy.CustomHostHeaderName = genruntime.ClonePointerToString(source.CustomHostHeaderName)
+
+ // CustomProtoHeaderName
+ proxy.CustomProtoHeaderName = genruntime.ClonePointerToString(source.CustomProtoHeaderName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ForwardProxy_STATUS populates the provided destination ForwardProxy_STATUS from our ForwardProxy_STATUS
+func (proxy *ForwardProxy_STATUS) AssignProperties_To_ForwardProxy_STATUS(destination *storage.ForwardProxy_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Convention
+ if proxy.Convention != nil {
+ convention := string(*proxy.Convention)
+ destination.Convention = &convention
+ } else {
+ destination.Convention = nil
+ }
+
+ // CustomHostHeaderName
+ destination.CustomHostHeaderName = genruntime.ClonePointerToString(proxy.CustomHostHeaderName)
+
+ // CustomProtoHeaderName
+ destination.CustomProtoHeaderName = genruntime.ClonePointerToString(proxy.CustomProtoHeaderName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the GitHub provider.
+type GitHub struct {
+ // Enabled: false
if the GitHub provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the GitHub provider.
+ Registration *ClientRegistration `json:"registration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &GitHub{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (gitHub *GitHub) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if gitHub == nil {
+ return nil, nil
+ }
+ result := &arm.GitHub{}
+
+ // Set property "Enabled":
+ if gitHub.Enabled != nil {
+ enabled := *gitHub.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if gitHub.Login != nil {
+ login_ARM, err := (*gitHub.Login).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ login := *login_ARM.(*arm.LoginScopes)
+ result.Login = &login
+ }
+
+ // Set property "Registration":
+ if gitHub.Registration != nil {
+ registration_ARM, err := (*gitHub.Registration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ registration := *registration_ARM.(*arm.ClientRegistration)
+ result.Registration = ®istration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (gitHub *GitHub) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.GitHub{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (gitHub *GitHub) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.GitHub)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.GitHub, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ gitHub.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 LoginScopes
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ gitHub.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 ClientRegistration
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ gitHub.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_GitHub populates our GitHub from the provided source GitHub
+func (gitHub *GitHub) AssignProperties_From_GitHub(source *storage.GitHub) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ gitHub.Enabled = &enabled
+ } else {
+ gitHub.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes
+ err := login.AssignProperties_From_LoginScopes(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginScopes() to populate field Login")
+ }
+ gitHub.Login = &login
+ } else {
+ gitHub.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration ClientRegistration
+ err := registration.AssignProperties_From_ClientRegistration(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ClientRegistration() to populate field Registration")
+ }
+ gitHub.Registration = ®istration
+ } else {
+ gitHub.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_GitHub populates the provided destination GitHub from our GitHub
+func (gitHub *GitHub) AssignProperties_To_GitHub(destination *storage.GitHub) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if gitHub.Enabled != nil {
+ enabled := *gitHub.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Login
+ if gitHub.Login != nil {
+ var login storage.LoginScopes
+ err := gitHub.Login.AssignProperties_To_LoginScopes(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginScopes() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if gitHub.Registration != nil {
+ var registration storage.ClientRegistration
+ err := gitHub.Registration.AssignProperties_To_ClientRegistration(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ClientRegistration() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_GitHub_STATUS populates our GitHub from the provided source GitHub_STATUS
+func (gitHub *GitHub) Initialize_From_GitHub_STATUS(source *GitHub_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ gitHub.Enabled = &enabled
+ } else {
+ gitHub.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes
+ err := login.Initialize_From_LoginScopes_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_LoginScopes_STATUS() to populate field Login")
+ }
+ gitHub.Login = &login
+ } else {
+ gitHub.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration ClientRegistration
+ err := registration.Initialize_From_ClientRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ClientRegistration_STATUS() to populate field Registration")
+ }
+ gitHub.Registration = ®istration
+ } else {
+ gitHub.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the GitHub provider.
+type GitHub_STATUS struct {
+ // Enabled: false
if the GitHub provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the GitHub provider.
+ Registration *ClientRegistration_STATUS `json:"registration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &GitHub_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (gitHub *GitHub_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.GitHub_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (gitHub *GitHub_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.GitHub_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.GitHub_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ gitHub.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 LoginScopes_STATUS
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ gitHub.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 ClientRegistration_STATUS
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ gitHub.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_GitHub_STATUS populates our GitHub_STATUS from the provided source GitHub_STATUS
+func (gitHub *GitHub_STATUS) AssignProperties_From_GitHub_STATUS(source *storage.GitHub_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ gitHub.Enabled = &enabled
+ } else {
+ gitHub.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes_STATUS
+ err := login.AssignProperties_From_LoginScopes_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginScopes_STATUS() to populate field Login")
+ }
+ gitHub.Login = &login
+ } else {
+ gitHub.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration ClientRegistration_STATUS
+ err := registration.AssignProperties_From_ClientRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ClientRegistration_STATUS() to populate field Registration")
+ }
+ gitHub.Registration = ®istration
+ } else {
+ gitHub.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_GitHub_STATUS populates the provided destination GitHub_STATUS from our GitHub_STATUS
+func (gitHub *GitHub_STATUS) AssignProperties_To_GitHub_STATUS(destination *storage.GitHub_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if gitHub.Enabled != nil {
+ enabled := *gitHub.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Login
+ if gitHub.Login != nil {
+ var login storage.LoginScopes_STATUS
+ err := gitHub.Login.AssignProperties_To_LoginScopes_STATUS(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginScopes_STATUS() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if gitHub.Registration != nil {
+ var registration storage.ClientRegistration_STATUS
+ err := gitHub.Registration.AssignProperties_To_ClientRegistration_STATUS(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ClientRegistration_STATUS() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"AllowAnonymous","RedirectToLoginPage","Return401","Return403"}
+type GlobalValidation_UnauthenticatedClientAction string
+
+const (
+ GlobalValidation_UnauthenticatedClientAction_AllowAnonymous = GlobalValidation_UnauthenticatedClientAction("AllowAnonymous")
+ GlobalValidation_UnauthenticatedClientAction_RedirectToLoginPage = GlobalValidation_UnauthenticatedClientAction("RedirectToLoginPage")
+ GlobalValidation_UnauthenticatedClientAction_Return401 = GlobalValidation_UnauthenticatedClientAction("Return401")
+ GlobalValidation_UnauthenticatedClientAction_Return403 = GlobalValidation_UnauthenticatedClientAction("Return403")
+)
+
+// Mapping from string to GlobalValidation_UnauthenticatedClientAction
+var globalValidation_UnauthenticatedClientAction_Values = map[string]GlobalValidation_UnauthenticatedClientAction{
+ "allowanonymous": GlobalValidation_UnauthenticatedClientAction_AllowAnonymous,
+ "redirecttologinpage": GlobalValidation_UnauthenticatedClientAction_RedirectToLoginPage,
+ "return401": GlobalValidation_UnauthenticatedClientAction_Return401,
+ "return403": GlobalValidation_UnauthenticatedClientAction_Return403,
+}
+
+type GlobalValidation_UnauthenticatedClientAction_STATUS string
+
+const (
+ GlobalValidation_UnauthenticatedClientAction_STATUS_AllowAnonymous = GlobalValidation_UnauthenticatedClientAction_STATUS("AllowAnonymous")
+ GlobalValidation_UnauthenticatedClientAction_STATUS_RedirectToLoginPage = GlobalValidation_UnauthenticatedClientAction_STATUS("RedirectToLoginPage")
+ GlobalValidation_UnauthenticatedClientAction_STATUS_Return401 = GlobalValidation_UnauthenticatedClientAction_STATUS("Return401")
+ GlobalValidation_UnauthenticatedClientAction_STATUS_Return403 = GlobalValidation_UnauthenticatedClientAction_STATUS("Return403")
+)
+
+// Mapping from string to GlobalValidation_UnauthenticatedClientAction_STATUS
+var globalValidation_UnauthenticatedClientAction_STATUS_Values = map[string]GlobalValidation_UnauthenticatedClientAction_STATUS{
+ "allowanonymous": GlobalValidation_UnauthenticatedClientAction_STATUS_AllowAnonymous,
+ "redirecttologinpage": GlobalValidation_UnauthenticatedClientAction_STATUS_RedirectToLoginPage,
+ "return401": GlobalValidation_UnauthenticatedClientAction_STATUS_Return401,
+ "return403": GlobalValidation_UnauthenticatedClientAction_STATUS_Return403,
+}
+
+// The configuration settings of the Google provider.
+type Google struct {
+ // Enabled: false
if the Google provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Google provider.
+ Registration *ClientRegistration `json:"registration,omitempty"`
+
+ // Validation: The configuration settings of the Azure Active Directory token validation flow.
+ Validation *AllowedAudiencesValidation `json:"validation,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Google{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (google *Google) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if google == nil {
+ return nil, nil
+ }
+ result := &arm.Google{}
+
+ // Set property "Enabled":
+ if google.Enabled != nil {
+ enabled := *google.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if google.Login != nil {
+ login_ARM, err := (*google.Login).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ login := *login_ARM.(*arm.LoginScopes)
+ result.Login = &login
+ }
+
+ // Set property "Registration":
+ if google.Registration != nil {
+ registration_ARM, err := (*google.Registration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ registration := *registration_ARM.(*arm.ClientRegistration)
+ result.Registration = ®istration
+ }
+
+ // Set property "Validation":
+ if google.Validation != nil {
+ validation_ARM, err := (*google.Validation).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ validation := *validation_ARM.(*arm.AllowedAudiencesValidation)
+ result.Validation = &validation
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (google *Google) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Google{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (google *Google) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Google)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Google, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ google.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 LoginScopes
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ google.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 ClientRegistration
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ google.Registration = ®istration
+ }
+
+ // Set property "Validation":
+ if typedInput.Validation != nil {
+ var validation1 AllowedAudiencesValidation
+ err := validation1.PopulateFromARM(owner, *typedInput.Validation)
+ if err != nil {
+ return err
+ }
+ validation := validation1
+ google.Validation = &validation
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Google populates our Google from the provided source Google
+func (google *Google) AssignProperties_From_Google(source *storage.Google) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ google.Enabled = &enabled
+ } else {
+ google.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes
+ err := login.AssignProperties_From_LoginScopes(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginScopes() to populate field Login")
+ }
+ google.Login = &login
+ } else {
+ google.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration ClientRegistration
+ err := registration.AssignProperties_From_ClientRegistration(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ClientRegistration() to populate field Registration")
+ }
+ google.Registration = ®istration
+ } else {
+ google.Registration = nil
+ }
+
+ // Validation
+ if source.Validation != nil {
+ var validation AllowedAudiencesValidation
+ err := validation.AssignProperties_From_AllowedAudiencesValidation(source.Validation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AllowedAudiencesValidation() to populate field Validation")
+ }
+ google.Validation = &validation
+ } else {
+ google.Validation = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Google populates the provided destination Google from our Google
+func (google *Google) AssignProperties_To_Google(destination *storage.Google) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if google.Enabled != nil {
+ enabled := *google.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Login
+ if google.Login != nil {
+ var login storage.LoginScopes
+ err := google.Login.AssignProperties_To_LoginScopes(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginScopes() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if google.Registration != nil {
+ var registration storage.ClientRegistration
+ err := google.Registration.AssignProperties_To_ClientRegistration(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ClientRegistration() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Validation
+ if google.Validation != nil {
+ var validation storage.AllowedAudiencesValidation
+ err := google.Validation.AssignProperties_To_AllowedAudiencesValidation(&validation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AllowedAudiencesValidation() to populate field Validation")
+ }
+ destination.Validation = &validation
+ } else {
+ destination.Validation = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Google_STATUS populates our Google from the provided source Google_STATUS
+func (google *Google) Initialize_From_Google_STATUS(source *Google_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ google.Enabled = &enabled
+ } else {
+ google.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes
+ err := login.Initialize_From_LoginScopes_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_LoginScopes_STATUS() to populate field Login")
+ }
+ google.Login = &login
+ } else {
+ google.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration ClientRegistration
+ err := registration.Initialize_From_ClientRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ClientRegistration_STATUS() to populate field Registration")
+ }
+ google.Registration = ®istration
+ } else {
+ google.Registration = nil
+ }
+
+ // Validation
+ if source.Validation != nil {
+ var validation AllowedAudiencesValidation
+ err := validation.Initialize_From_AllowedAudiencesValidation_STATUS(source.Validation)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AllowedAudiencesValidation_STATUS() to populate field Validation")
+ }
+ google.Validation = &validation
+ } else {
+ google.Validation = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Google provider.
+type Google_STATUS struct {
+ // Enabled: false
if the Google provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Login: The configuration settings of the login flow.
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Google provider.
+ Registration *ClientRegistration_STATUS `json:"registration,omitempty"`
+
+ // Validation: The configuration settings of the Azure Active Directory token validation flow.
+ Validation *AllowedAudiencesValidation_STATUS `json:"validation,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Google_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (google *Google_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Google_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (google *Google_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Google_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Google_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ google.Enabled = &enabled
+ }
+
+ // Set property "Login":
+ if typedInput.Login != nil {
+ var login1 LoginScopes_STATUS
+ err := login1.PopulateFromARM(owner, *typedInput.Login)
+ if err != nil {
+ return err
+ }
+ login := login1
+ google.Login = &login
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 ClientRegistration_STATUS
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ google.Registration = ®istration
+ }
+
+ // Set property "Validation":
+ if typedInput.Validation != nil {
+ var validation1 AllowedAudiencesValidation_STATUS
+ err := validation1.PopulateFromARM(owner, *typedInput.Validation)
+ if err != nil {
+ return err
+ }
+ validation := validation1
+ google.Validation = &validation
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Google_STATUS populates our Google_STATUS from the provided source Google_STATUS
+func (google *Google_STATUS) AssignProperties_From_Google_STATUS(source *storage.Google_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ google.Enabled = &enabled
+ } else {
+ google.Enabled = nil
+ }
+
+ // Login
+ if source.Login != nil {
+ var login LoginScopes_STATUS
+ err := login.AssignProperties_From_LoginScopes_STATUS(source.Login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LoginScopes_STATUS() to populate field Login")
+ }
+ google.Login = &login
+ } else {
+ google.Login = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration ClientRegistration_STATUS
+ err := registration.AssignProperties_From_ClientRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ClientRegistration_STATUS() to populate field Registration")
+ }
+ google.Registration = ®istration
+ } else {
+ google.Registration = nil
+ }
+
+ // Validation
+ if source.Validation != nil {
+ var validation AllowedAudiencesValidation_STATUS
+ err := validation.AssignProperties_From_AllowedAudiencesValidation_STATUS(source.Validation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AllowedAudiencesValidation_STATUS() to populate field Validation")
+ }
+ google.Validation = &validation
+ } else {
+ google.Validation = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Google_STATUS populates the provided destination Google_STATUS from our Google_STATUS
+func (google *Google_STATUS) AssignProperties_To_Google_STATUS(destination *storage.Google_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if google.Enabled != nil {
+ enabled := *google.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Login
+ if google.Login != nil {
+ var login storage.LoginScopes_STATUS
+ err := google.Login.AssignProperties_To_LoginScopes_STATUS(&login)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LoginScopes_STATUS() to populate field Login")
+ }
+ destination.Login = &login
+ } else {
+ destination.Login = nil
+ }
+
+ // Registration
+ if google.Registration != nil {
+ var registration storage.ClientRegistration_STATUS
+ err := google.Registration.AssignProperties_To_ClientRegistration_STATUS(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ClientRegistration_STATUS() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Validation
+ if google.Validation != nil {
+ var validation storage.AllowedAudiencesValidation_STATUS
+ err := google.Validation.AssignProperties_To_AllowedAudiencesValidation_STATUS(&validation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AllowedAudiencesValidation_STATUS() to populate field Validation")
+ }
+ destination.Validation = &validation
+ } else {
+ destination.Validation = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the paths HTTP requests.
+type HttpSettingsRoutes struct {
+ // ApiPrefix: The prefix that should precede all the authentication/authorization paths.
+ ApiPrefix *string `json:"apiPrefix,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &HttpSettingsRoutes{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (routes *HttpSettingsRoutes) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if routes == nil {
+ return nil, nil
+ }
+ result := &arm.HttpSettingsRoutes{}
+
+ // Set property "ApiPrefix":
+ if routes.ApiPrefix != nil {
+ apiPrefix := *routes.ApiPrefix
+ result.ApiPrefix = &apiPrefix
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (routes *HttpSettingsRoutes) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.HttpSettingsRoutes{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (routes *HttpSettingsRoutes) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.HttpSettingsRoutes)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.HttpSettingsRoutes, got %T", armInput)
+ }
+
+ // Set property "ApiPrefix":
+ if typedInput.ApiPrefix != nil {
+ apiPrefix := *typedInput.ApiPrefix
+ routes.ApiPrefix = &apiPrefix
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_HttpSettingsRoutes populates our HttpSettingsRoutes from the provided source HttpSettingsRoutes
+func (routes *HttpSettingsRoutes) AssignProperties_From_HttpSettingsRoutes(source *storage.HttpSettingsRoutes) error {
+
+ // ApiPrefix
+ routes.ApiPrefix = genruntime.ClonePointerToString(source.ApiPrefix)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_HttpSettingsRoutes populates the provided destination HttpSettingsRoutes from our HttpSettingsRoutes
+func (routes *HttpSettingsRoutes) AssignProperties_To_HttpSettingsRoutes(destination *storage.HttpSettingsRoutes) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ApiPrefix
+ destination.ApiPrefix = genruntime.ClonePointerToString(routes.ApiPrefix)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_HttpSettingsRoutes_STATUS populates our HttpSettingsRoutes from the provided source HttpSettingsRoutes_STATUS
+func (routes *HttpSettingsRoutes) Initialize_From_HttpSettingsRoutes_STATUS(source *HttpSettingsRoutes_STATUS) error {
+
+ // ApiPrefix
+ routes.ApiPrefix = genruntime.ClonePointerToString(source.ApiPrefix)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the paths HTTP requests.
+type HttpSettingsRoutes_STATUS struct {
+ // ApiPrefix: The prefix that should precede all the authentication/authorization paths.
+ ApiPrefix *string `json:"apiPrefix,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &HttpSettingsRoutes_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (routes *HttpSettingsRoutes_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.HttpSettingsRoutes_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (routes *HttpSettingsRoutes_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.HttpSettingsRoutes_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.HttpSettingsRoutes_STATUS, got %T", armInput)
+ }
+
+ // Set property "ApiPrefix":
+ if typedInput.ApiPrefix != nil {
+ apiPrefix := *typedInput.ApiPrefix
+ routes.ApiPrefix = &apiPrefix
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_HttpSettingsRoutes_STATUS populates our HttpSettingsRoutes_STATUS from the provided source HttpSettingsRoutes_STATUS
+func (routes *HttpSettingsRoutes_STATUS) AssignProperties_From_HttpSettingsRoutes_STATUS(source *storage.HttpSettingsRoutes_STATUS) error {
+
+ // ApiPrefix
+ routes.ApiPrefix = genruntime.ClonePointerToString(source.ApiPrefix)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_HttpSettingsRoutes_STATUS populates the provided destination HttpSettingsRoutes_STATUS from our HttpSettingsRoutes_STATUS
+func (routes *HttpSettingsRoutes_STATUS) AssignProperties_To_HttpSettingsRoutes_STATUS(destination *storage.HttpSettingsRoutes_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ApiPrefix
+ destination.ApiPrefix = genruntime.ClonePointerToString(routes.ApiPrefix)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The routes that specify the endpoints used for login and logout requests.
+type LoginRoutes struct {
+ // LogoutEndpoint: The endpoint at which a logout request should be made.
+ LogoutEndpoint *string `json:"logoutEndpoint,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &LoginRoutes{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (routes *LoginRoutes) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if routes == nil {
+ return nil, nil
+ }
+ result := &arm.LoginRoutes{}
+
+ // Set property "LogoutEndpoint":
+ if routes.LogoutEndpoint != nil {
+ logoutEndpoint := *routes.LogoutEndpoint
+ result.LogoutEndpoint = &logoutEndpoint
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (routes *LoginRoutes) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.LoginRoutes{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (routes *LoginRoutes) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.LoginRoutes)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.LoginRoutes, got %T", armInput)
+ }
+
+ // Set property "LogoutEndpoint":
+ if typedInput.LogoutEndpoint != nil {
+ logoutEndpoint := *typedInput.LogoutEndpoint
+ routes.LogoutEndpoint = &logoutEndpoint
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_LoginRoutes populates our LoginRoutes from the provided source LoginRoutes
+func (routes *LoginRoutes) AssignProperties_From_LoginRoutes(source *storage.LoginRoutes) error {
+
+ // LogoutEndpoint
+ routes.LogoutEndpoint = genruntime.ClonePointerToString(source.LogoutEndpoint)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_LoginRoutes populates the provided destination LoginRoutes from our LoginRoutes
+func (routes *LoginRoutes) AssignProperties_To_LoginRoutes(destination *storage.LoginRoutes) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // LogoutEndpoint
+ destination.LogoutEndpoint = genruntime.ClonePointerToString(routes.LogoutEndpoint)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_LoginRoutes_STATUS populates our LoginRoutes from the provided source LoginRoutes_STATUS
+func (routes *LoginRoutes) Initialize_From_LoginRoutes_STATUS(source *LoginRoutes_STATUS) error {
+
+ // LogoutEndpoint
+ routes.LogoutEndpoint = genruntime.ClonePointerToString(source.LogoutEndpoint)
+
+ // No error
+ return nil
+}
+
+// The routes that specify the endpoints used for login and logout requests.
+type LoginRoutes_STATUS struct {
+ // LogoutEndpoint: The endpoint at which a logout request should be made.
+ LogoutEndpoint *string `json:"logoutEndpoint,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &LoginRoutes_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (routes *LoginRoutes_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.LoginRoutes_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (routes *LoginRoutes_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.LoginRoutes_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.LoginRoutes_STATUS, got %T", armInput)
+ }
+
+ // Set property "LogoutEndpoint":
+ if typedInput.LogoutEndpoint != nil {
+ logoutEndpoint := *typedInput.LogoutEndpoint
+ routes.LogoutEndpoint = &logoutEndpoint
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_LoginRoutes_STATUS populates our LoginRoutes_STATUS from the provided source LoginRoutes_STATUS
+func (routes *LoginRoutes_STATUS) AssignProperties_From_LoginRoutes_STATUS(source *storage.LoginRoutes_STATUS) error {
+
+ // LogoutEndpoint
+ routes.LogoutEndpoint = genruntime.ClonePointerToString(source.LogoutEndpoint)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_LoginRoutes_STATUS populates the provided destination LoginRoutes_STATUS from our LoginRoutes_STATUS
+func (routes *LoginRoutes_STATUS) AssignProperties_To_LoginRoutes_STATUS(destination *storage.LoginRoutes_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // LogoutEndpoint
+ destination.LogoutEndpoint = genruntime.ClonePointerToString(routes.LogoutEndpoint)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the nonce used in the login flow.
+type Nonce struct {
+ // NonceExpirationInterval: The time after the request is made when the nonce should expire.
+ NonceExpirationInterval *string `json:"nonceExpirationInterval,omitempty"`
+
+ // ValidateNonce: false
if the nonce should not be validated while completing the login flow; otherwise,
+ // true
.
+ ValidateNonce *bool `json:"validateNonce,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Nonce{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (nonce *Nonce) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if nonce == nil {
+ return nil, nil
+ }
+ result := &arm.Nonce{}
+
+ // Set property "NonceExpirationInterval":
+ if nonce.NonceExpirationInterval != nil {
+ nonceExpirationInterval := *nonce.NonceExpirationInterval
+ result.NonceExpirationInterval = &nonceExpirationInterval
+ }
+
+ // Set property "ValidateNonce":
+ if nonce.ValidateNonce != nil {
+ validateNonce := *nonce.ValidateNonce
+ result.ValidateNonce = &validateNonce
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (nonce *Nonce) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Nonce{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (nonce *Nonce) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Nonce)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Nonce, got %T", armInput)
+ }
+
+ // Set property "NonceExpirationInterval":
+ if typedInput.NonceExpirationInterval != nil {
+ nonceExpirationInterval := *typedInput.NonceExpirationInterval
+ nonce.NonceExpirationInterval = &nonceExpirationInterval
+ }
+
+ // Set property "ValidateNonce":
+ if typedInput.ValidateNonce != nil {
+ validateNonce := *typedInput.ValidateNonce
+ nonce.ValidateNonce = &validateNonce
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Nonce populates our Nonce from the provided source Nonce
+func (nonce *Nonce) AssignProperties_From_Nonce(source *storage.Nonce) error {
+
+ // NonceExpirationInterval
+ nonce.NonceExpirationInterval = genruntime.ClonePointerToString(source.NonceExpirationInterval)
+
+ // ValidateNonce
+ if source.ValidateNonce != nil {
+ validateNonce := *source.ValidateNonce
+ nonce.ValidateNonce = &validateNonce
+ } else {
+ nonce.ValidateNonce = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Nonce populates the provided destination Nonce from our Nonce
+func (nonce *Nonce) AssignProperties_To_Nonce(destination *storage.Nonce) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // NonceExpirationInterval
+ destination.NonceExpirationInterval = genruntime.ClonePointerToString(nonce.NonceExpirationInterval)
+
+ // ValidateNonce
+ if nonce.ValidateNonce != nil {
+ validateNonce := *nonce.ValidateNonce
+ destination.ValidateNonce = &validateNonce
+ } else {
+ destination.ValidateNonce = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Nonce_STATUS populates our Nonce from the provided source Nonce_STATUS
+func (nonce *Nonce) Initialize_From_Nonce_STATUS(source *Nonce_STATUS) error {
+
+ // NonceExpirationInterval
+ nonce.NonceExpirationInterval = genruntime.ClonePointerToString(source.NonceExpirationInterval)
+
+ // ValidateNonce
+ if source.ValidateNonce != nil {
+ validateNonce := *source.ValidateNonce
+ nonce.ValidateNonce = &validateNonce
+ } else {
+ nonce.ValidateNonce = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the nonce used in the login flow.
+type Nonce_STATUS struct {
+ // NonceExpirationInterval: The time after the request is made when the nonce should expire.
+ NonceExpirationInterval *string `json:"nonceExpirationInterval,omitempty"`
+
+ // ValidateNonce: false
if the nonce should not be validated while completing the login flow; otherwise,
+ // true
.
+ ValidateNonce *bool `json:"validateNonce,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Nonce_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (nonce *Nonce_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Nonce_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (nonce *Nonce_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Nonce_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Nonce_STATUS, got %T", armInput)
+ }
+
+ // Set property "NonceExpirationInterval":
+ if typedInput.NonceExpirationInterval != nil {
+ nonceExpirationInterval := *typedInput.NonceExpirationInterval
+ nonce.NonceExpirationInterval = &nonceExpirationInterval
+ }
+
+ // Set property "ValidateNonce":
+ if typedInput.ValidateNonce != nil {
+ validateNonce := *typedInput.ValidateNonce
+ nonce.ValidateNonce = &validateNonce
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Nonce_STATUS populates our Nonce_STATUS from the provided source Nonce_STATUS
+func (nonce *Nonce_STATUS) AssignProperties_From_Nonce_STATUS(source *storage.Nonce_STATUS) error {
+
+ // NonceExpirationInterval
+ nonce.NonceExpirationInterval = genruntime.ClonePointerToString(source.NonceExpirationInterval)
+
+ // ValidateNonce
+ if source.ValidateNonce != nil {
+ validateNonce := *source.ValidateNonce
+ nonce.ValidateNonce = &validateNonce
+ } else {
+ nonce.ValidateNonce = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Nonce_STATUS populates the provided destination Nonce_STATUS from our Nonce_STATUS
+func (nonce *Nonce_STATUS) AssignProperties_To_Nonce_STATUS(destination *storage.Nonce_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // NonceExpirationInterval
+ destination.NonceExpirationInterval = genruntime.ClonePointerToString(nonce.NonceExpirationInterval)
+
+ // ValidateNonce
+ if nonce.ValidateNonce != nil {
+ validateNonce := *nonce.ValidateNonce
+ destination.ValidateNonce = &validateNonce
+ } else {
+ destination.ValidateNonce = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+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,
+}
+
+// The configuration settings of the token store.
+type TokenStore struct {
+ // AzureBlobStorage: The configuration settings of the storage of the tokens if blob storage is used.
+ AzureBlobStorage *BlobStorageTokenStore `json:"azureBlobStorage,omitempty"`
+
+ // Enabled: true
to durably store platform-specific security tokens that are obtained during login flows;
+ // otherwise, false
.
+ // The default is false
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // TokenRefreshExtensionHours: The number of hours after session token expiration that a session token can be used to
+ // call the token refresh API. The default is 72 hours.
+ TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &TokenStore{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (store *TokenStore) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if store == nil {
+ return nil, nil
+ }
+ result := &arm.TokenStore{}
+
+ // Set property "AzureBlobStorage":
+ if store.AzureBlobStorage != nil {
+ azureBlobStorage_ARM, err := (*store.AzureBlobStorage).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ azureBlobStorage := *azureBlobStorage_ARM.(*arm.BlobStorageTokenStore)
+ result.AzureBlobStorage = &azureBlobStorage
+ }
+
+ // Set property "Enabled":
+ if store.Enabled != nil {
+ enabled := *store.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "TokenRefreshExtensionHours":
+ if store.TokenRefreshExtensionHours != nil {
+ tokenRefreshExtensionHours := *store.TokenRefreshExtensionHours
+ result.TokenRefreshExtensionHours = &tokenRefreshExtensionHours
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (store *TokenStore) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.TokenStore{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (store *TokenStore) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.TokenStore)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.TokenStore, got %T", armInput)
+ }
+
+ // Set property "AzureBlobStorage":
+ if typedInput.AzureBlobStorage != nil {
+ var azureBlobStorage1 BlobStorageTokenStore
+ err := azureBlobStorage1.PopulateFromARM(owner, *typedInput.AzureBlobStorage)
+ if err != nil {
+ return err
+ }
+ azureBlobStorage := azureBlobStorage1
+ store.AzureBlobStorage = &azureBlobStorage
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ store.Enabled = &enabled
+ }
+
+ // Set property "TokenRefreshExtensionHours":
+ if typedInput.TokenRefreshExtensionHours != nil {
+ tokenRefreshExtensionHours := *typedInput.TokenRefreshExtensionHours
+ store.TokenRefreshExtensionHours = &tokenRefreshExtensionHours
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_TokenStore populates our TokenStore from the provided source TokenStore
+func (store *TokenStore) AssignProperties_From_TokenStore(source *storage.TokenStore) error {
+
+ // AzureBlobStorage
+ if source.AzureBlobStorage != nil {
+ var azureBlobStorage BlobStorageTokenStore
+ err := azureBlobStorage.AssignProperties_From_BlobStorageTokenStore(source.AzureBlobStorage)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_BlobStorageTokenStore() to populate field AzureBlobStorage")
+ }
+ store.AzureBlobStorage = &azureBlobStorage
+ } else {
+ store.AzureBlobStorage = nil
+ }
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ store.Enabled = &enabled
+ } else {
+ store.Enabled = nil
+ }
+
+ // TokenRefreshExtensionHours
+ if source.TokenRefreshExtensionHours != nil {
+ tokenRefreshExtensionHour := *source.TokenRefreshExtensionHours
+ store.TokenRefreshExtensionHours = &tokenRefreshExtensionHour
+ } else {
+ store.TokenRefreshExtensionHours = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_TokenStore populates the provided destination TokenStore from our TokenStore
+func (store *TokenStore) AssignProperties_To_TokenStore(destination *storage.TokenStore) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AzureBlobStorage
+ if store.AzureBlobStorage != nil {
+ var azureBlobStorage storage.BlobStorageTokenStore
+ err := store.AzureBlobStorage.AssignProperties_To_BlobStorageTokenStore(&azureBlobStorage)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_BlobStorageTokenStore() to populate field AzureBlobStorage")
+ }
+ destination.AzureBlobStorage = &azureBlobStorage
+ } else {
+ destination.AzureBlobStorage = nil
+ }
+
+ // Enabled
+ if store.Enabled != nil {
+ enabled := *store.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // TokenRefreshExtensionHours
+ if store.TokenRefreshExtensionHours != nil {
+ tokenRefreshExtensionHour := *store.TokenRefreshExtensionHours
+ destination.TokenRefreshExtensionHours = &tokenRefreshExtensionHour
+ } else {
+ destination.TokenRefreshExtensionHours = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_TokenStore_STATUS populates our TokenStore from the provided source TokenStore_STATUS
+func (store *TokenStore) Initialize_From_TokenStore_STATUS(source *TokenStore_STATUS) error {
+
+ // AzureBlobStorage
+ if source.AzureBlobStorage != nil {
+ var azureBlobStorage BlobStorageTokenStore
+ err := azureBlobStorage.Initialize_From_BlobStorageTokenStore_STATUS(source.AzureBlobStorage)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_BlobStorageTokenStore_STATUS() to populate field AzureBlobStorage")
+ }
+ store.AzureBlobStorage = &azureBlobStorage
+ } else {
+ store.AzureBlobStorage = nil
+ }
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ store.Enabled = &enabled
+ } else {
+ store.Enabled = nil
+ }
+
+ // TokenRefreshExtensionHours
+ if source.TokenRefreshExtensionHours != nil {
+ tokenRefreshExtensionHour := *source.TokenRefreshExtensionHours
+ store.TokenRefreshExtensionHours = &tokenRefreshExtensionHour
+ } else {
+ store.TokenRefreshExtensionHours = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the token store.
+type TokenStore_STATUS struct {
+ // AzureBlobStorage: The configuration settings of the storage of the tokens if blob storage is used.
+ AzureBlobStorage *BlobStorageTokenStore_STATUS `json:"azureBlobStorage,omitempty"`
+
+ // Enabled: true
to durably store platform-specific security tokens that are obtained during login flows;
+ // otherwise, false
.
+ // The default is false
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // TokenRefreshExtensionHours: The number of hours after session token expiration that a session token can be used to
+ // call the token refresh API. The default is 72 hours.
+ TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &TokenStore_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (store *TokenStore_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.TokenStore_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (store *TokenStore_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.TokenStore_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.TokenStore_STATUS, got %T", armInput)
+ }
+
+ // Set property "AzureBlobStorage":
+ if typedInput.AzureBlobStorage != nil {
+ var azureBlobStorage1 BlobStorageTokenStore_STATUS
+ err := azureBlobStorage1.PopulateFromARM(owner, *typedInput.AzureBlobStorage)
+ if err != nil {
+ return err
+ }
+ azureBlobStorage := azureBlobStorage1
+ store.AzureBlobStorage = &azureBlobStorage
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ store.Enabled = &enabled
+ }
+
+ // Set property "TokenRefreshExtensionHours":
+ if typedInput.TokenRefreshExtensionHours != nil {
+ tokenRefreshExtensionHours := *typedInput.TokenRefreshExtensionHours
+ store.TokenRefreshExtensionHours = &tokenRefreshExtensionHours
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_TokenStore_STATUS populates our TokenStore_STATUS from the provided source TokenStore_STATUS
+func (store *TokenStore_STATUS) AssignProperties_From_TokenStore_STATUS(source *storage.TokenStore_STATUS) error {
+
+ // AzureBlobStorage
+ if source.AzureBlobStorage != nil {
+ var azureBlobStorage BlobStorageTokenStore_STATUS
+ err := azureBlobStorage.AssignProperties_From_BlobStorageTokenStore_STATUS(source.AzureBlobStorage)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_BlobStorageTokenStore_STATUS() to populate field AzureBlobStorage")
+ }
+ store.AzureBlobStorage = &azureBlobStorage
+ } else {
+ store.AzureBlobStorage = nil
+ }
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ store.Enabled = &enabled
+ } else {
+ store.Enabled = nil
+ }
+
+ // TokenRefreshExtensionHours
+ if source.TokenRefreshExtensionHours != nil {
+ tokenRefreshExtensionHour := *source.TokenRefreshExtensionHours
+ store.TokenRefreshExtensionHours = &tokenRefreshExtensionHour
+ } else {
+ store.TokenRefreshExtensionHours = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_TokenStore_STATUS populates the provided destination TokenStore_STATUS from our TokenStore_STATUS
+func (store *TokenStore_STATUS) AssignProperties_To_TokenStore_STATUS(destination *storage.TokenStore_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AzureBlobStorage
+ if store.AzureBlobStorage != nil {
+ var azureBlobStorage storage.BlobStorageTokenStore_STATUS
+ err := store.AzureBlobStorage.AssignProperties_To_BlobStorageTokenStore_STATUS(&azureBlobStorage)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_BlobStorageTokenStore_STATUS() to populate field AzureBlobStorage")
+ }
+ destination.AzureBlobStorage = &azureBlobStorage
+ } else {
+ destination.AzureBlobStorage = nil
+ }
+
+ // Enabled
+ if store.Enabled != nil {
+ enabled := *store.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // TokenRefreshExtensionHours
+ if store.TokenRefreshExtensionHours != nil {
+ tokenRefreshExtensionHour := *store.TokenRefreshExtensionHours
+ destination.TokenRefreshExtensionHours = &tokenRefreshExtensionHour
+ } else {
+ destination.TokenRefreshExtensionHours = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Twitter provider.
+type Twitter struct {
+ // Enabled: false
if the Twitter provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Twitter provider.
+ Registration *TwitterRegistration `json:"registration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Twitter{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (twitter *Twitter) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if twitter == nil {
+ return nil, nil
+ }
+ result := &arm.Twitter{}
+
+ // Set property "Enabled":
+ if twitter.Enabled != nil {
+ enabled := *twitter.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "Registration":
+ if twitter.Registration != nil {
+ registration_ARM, err := (*twitter.Registration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ registration := *registration_ARM.(*arm.TwitterRegistration)
+ result.Registration = ®istration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (twitter *Twitter) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Twitter{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (twitter *Twitter) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Twitter)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Twitter, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ twitter.Enabled = &enabled
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 TwitterRegistration
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ twitter.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Twitter populates our Twitter from the provided source Twitter
+func (twitter *Twitter) AssignProperties_From_Twitter(source *storage.Twitter) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ twitter.Enabled = &enabled
+ } else {
+ twitter.Enabled = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration TwitterRegistration
+ err := registration.AssignProperties_From_TwitterRegistration(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_TwitterRegistration() to populate field Registration")
+ }
+ twitter.Registration = ®istration
+ } else {
+ twitter.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Twitter populates the provided destination Twitter from our Twitter
+func (twitter *Twitter) AssignProperties_To_Twitter(destination *storage.Twitter) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if twitter.Enabled != nil {
+ enabled := *twitter.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Registration
+ if twitter.Registration != nil {
+ var registration storage.TwitterRegistration
+ err := twitter.Registration.AssignProperties_To_TwitterRegistration(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_TwitterRegistration() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Twitter_STATUS populates our Twitter from the provided source Twitter_STATUS
+func (twitter *Twitter) Initialize_From_Twitter_STATUS(source *Twitter_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ twitter.Enabled = &enabled
+ } else {
+ twitter.Enabled = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration TwitterRegistration
+ err := registration.Initialize_From_TwitterRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_TwitterRegistration_STATUS() to populate field Registration")
+ }
+ twitter.Registration = ®istration
+ } else {
+ twitter.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Twitter provider.
+type Twitter_STATUS struct {
+ // Enabled: false
if the Twitter provider should not be enabled despite the set registration; otherwise,
+ // true
.
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // Registration: The configuration settings of the app registration for the Twitter provider.
+ Registration *TwitterRegistration_STATUS `json:"registration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Twitter_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (twitter *Twitter_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Twitter_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (twitter *Twitter_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Twitter_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Twitter_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ twitter.Enabled = &enabled
+ }
+
+ // Set property "Registration":
+ if typedInput.Registration != nil {
+ var registration1 TwitterRegistration_STATUS
+ err := registration1.PopulateFromARM(owner, *typedInput.Registration)
+ if err != nil {
+ return err
+ }
+ registration := registration1
+ twitter.Registration = ®istration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Twitter_STATUS populates our Twitter_STATUS from the provided source Twitter_STATUS
+func (twitter *Twitter_STATUS) AssignProperties_From_Twitter_STATUS(source *storage.Twitter_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ twitter.Enabled = &enabled
+ } else {
+ twitter.Enabled = nil
+ }
+
+ // Registration
+ if source.Registration != nil {
+ var registration TwitterRegistration_STATUS
+ err := registration.AssignProperties_From_TwitterRegistration_STATUS(source.Registration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_TwitterRegistration_STATUS() to populate field Registration")
+ }
+ twitter.Registration = ®istration
+ } else {
+ twitter.Registration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Twitter_STATUS populates the provided destination Twitter_STATUS from our Twitter_STATUS
+func (twitter *Twitter_STATUS) AssignProperties_To_Twitter_STATUS(destination *storage.Twitter_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if twitter.Enabled != nil {
+ enabled := *twitter.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Registration
+ if twitter.Registration != nil {
+ var registration storage.TwitterRegistration_STATUS
+ err := twitter.Registration.AssignProperties_To_TwitterRegistration_STATUS(®istration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_TwitterRegistration_STATUS() to populate field Registration")
+ }
+ destination.Registration = ®istration
+ } else {
+ destination.Registration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Allowed Audiences validation flow.
+type AllowedAudiencesValidation struct {
+ // AllowedAudiences: The configuration settings of the allowed list of audiences from which to validate the JWT token.
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AllowedAudiencesValidation{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (validation *AllowedAudiencesValidation) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if validation == nil {
+ return nil, nil
+ }
+ result := &arm.AllowedAudiencesValidation{}
+
+ // Set property "AllowedAudiences":
+ for _, item := range validation.AllowedAudiences {
+ result.AllowedAudiences = append(result.AllowedAudiences, item)
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (validation *AllowedAudiencesValidation) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AllowedAudiencesValidation{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (validation *AllowedAudiencesValidation) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AllowedAudiencesValidation)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AllowedAudiencesValidation, got %T", armInput)
+ }
+
+ // Set property "AllowedAudiences":
+ for _, item := range typedInput.AllowedAudiences {
+ validation.AllowedAudiences = append(validation.AllowedAudiences, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AllowedAudiencesValidation populates our AllowedAudiencesValidation from the provided source AllowedAudiencesValidation
+func (validation *AllowedAudiencesValidation) AssignProperties_From_AllowedAudiencesValidation(source *storage.AllowedAudiencesValidation) error {
+
+ // AllowedAudiences
+ validation.AllowedAudiences = genruntime.CloneSliceOfString(source.AllowedAudiences)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AllowedAudiencesValidation populates the provided destination AllowedAudiencesValidation from our AllowedAudiencesValidation
+func (validation *AllowedAudiencesValidation) AssignProperties_To_AllowedAudiencesValidation(destination *storage.AllowedAudiencesValidation) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedAudiences
+ destination.AllowedAudiences = genruntime.CloneSliceOfString(validation.AllowedAudiences)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AllowedAudiencesValidation_STATUS populates our AllowedAudiencesValidation from the provided source AllowedAudiencesValidation_STATUS
+func (validation *AllowedAudiencesValidation) Initialize_From_AllowedAudiencesValidation_STATUS(source *AllowedAudiencesValidation_STATUS) error {
+
+ // AllowedAudiences
+ validation.AllowedAudiences = genruntime.CloneSliceOfString(source.AllowedAudiences)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Allowed Audiences validation flow.
+type AllowedAudiencesValidation_STATUS struct {
+ // AllowedAudiences: The configuration settings of the allowed list of audiences from which to validate the JWT token.
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AllowedAudiencesValidation_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (validation *AllowedAudiencesValidation_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AllowedAudiencesValidation_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (validation *AllowedAudiencesValidation_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AllowedAudiencesValidation_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AllowedAudiencesValidation_STATUS, got %T", armInput)
+ }
+
+ // Set property "AllowedAudiences":
+ for _, item := range typedInput.AllowedAudiences {
+ validation.AllowedAudiences = append(validation.AllowedAudiences, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AllowedAudiencesValidation_STATUS populates our AllowedAudiencesValidation_STATUS from the provided source AllowedAudiencesValidation_STATUS
+func (validation *AllowedAudiencesValidation_STATUS) AssignProperties_From_AllowedAudiencesValidation_STATUS(source *storage.AllowedAudiencesValidation_STATUS) error {
+
+ // AllowedAudiences
+ validation.AllowedAudiences = genruntime.CloneSliceOfString(source.AllowedAudiences)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AllowedAudiencesValidation_STATUS populates the provided destination AllowedAudiencesValidation_STATUS from our AllowedAudiencesValidation_STATUS
+func (validation *AllowedAudiencesValidation_STATUS) AssignProperties_To_AllowedAudiencesValidation_STATUS(destination *storage.AllowedAudiencesValidation_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedAudiences
+ destination.AllowedAudiences = genruntime.CloneSliceOfString(validation.AllowedAudiences)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the registration for the Apple provider
+type AppleRegistration struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AppleRegistration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (registration *AppleRegistration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if registration == nil {
+ return nil, nil
+ }
+ result := &arm.AppleRegistration{}
+
+ // Set property "ClientId":
+ if registration.ClientId != nil {
+ clientId := *registration.ClientId
+ result.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretSettingName":
+ if registration.ClientSecretSettingName != nil {
+ clientSecretSettingName := *registration.ClientSecretSettingName
+ result.ClientSecretSettingName = &clientSecretSettingName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *AppleRegistration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AppleRegistration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *AppleRegistration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AppleRegistration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AppleRegistration, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretSettingName":
+ if typedInput.ClientSecretSettingName != nil {
+ clientSecretSettingName := *typedInput.ClientSecretSettingName
+ registration.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AppleRegistration populates our AppleRegistration from the provided source AppleRegistration
+func (registration *AppleRegistration) AssignProperties_From_AppleRegistration(source *storage.AppleRegistration) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AppleRegistration populates the provided destination AppleRegistration from our AppleRegistration
+func (registration *AppleRegistration) AssignProperties_To_AppleRegistration(destination *storage.AppleRegistration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // ClientSecretSettingName
+ destination.ClientSecretSettingName = genruntime.ClonePointerToString(registration.ClientSecretSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AppleRegistration_STATUS populates our AppleRegistration from the provided source AppleRegistration_STATUS
+func (registration *AppleRegistration) Initialize_From_AppleRegistration_STATUS(source *AppleRegistration_STATUS) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the registration for the Apple provider
+type AppleRegistration_STATUS struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AppleRegistration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *AppleRegistration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AppleRegistration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *AppleRegistration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AppleRegistration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AppleRegistration_STATUS, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretSettingName":
+ if typedInput.ClientSecretSettingName != nil {
+ clientSecretSettingName := *typedInput.ClientSecretSettingName
+ registration.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AppleRegistration_STATUS populates our AppleRegistration_STATUS from the provided source AppleRegistration_STATUS
+func (registration *AppleRegistration_STATUS) AssignProperties_From_AppleRegistration_STATUS(source *storage.AppleRegistration_STATUS) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AppleRegistration_STATUS populates the provided destination AppleRegistration_STATUS from our AppleRegistration_STATUS
+func (registration *AppleRegistration_STATUS) AssignProperties_To_AppleRegistration_STATUS(destination *storage.AppleRegistration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // ClientSecretSettingName
+ destination.ClientSecretSettingName = genruntime.ClonePointerToString(registration.ClientSecretSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the app registration for providers that have app ids and app secrets
+type AppRegistration struct {
+ // AppId: The App ID of the app used for login.
+ AppId *string `json:"appId,omitempty"`
+
+ // AppSecretSettingName: The app setting name that contains the app secret.
+ AppSecretSettingName *string `json:"appSecretSettingName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AppRegistration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (registration *AppRegistration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if registration == nil {
+ return nil, nil
+ }
+ result := &arm.AppRegistration{}
+
+ // Set property "AppId":
+ if registration.AppId != nil {
+ appId := *registration.AppId
+ result.AppId = &appId
+ }
+
+ // Set property "AppSecretSettingName":
+ if registration.AppSecretSettingName != nil {
+ appSecretSettingName := *registration.AppSecretSettingName
+ result.AppSecretSettingName = &appSecretSettingName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *AppRegistration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AppRegistration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *AppRegistration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AppRegistration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AppRegistration, got %T", armInput)
+ }
+
+ // Set property "AppId":
+ if typedInput.AppId != nil {
+ appId := *typedInput.AppId
+ registration.AppId = &appId
+ }
+
+ // Set property "AppSecretSettingName":
+ if typedInput.AppSecretSettingName != nil {
+ appSecretSettingName := *typedInput.AppSecretSettingName
+ registration.AppSecretSettingName = &appSecretSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AppRegistration populates our AppRegistration from the provided source AppRegistration
+func (registration *AppRegistration) AssignProperties_From_AppRegistration(source *storage.AppRegistration) error {
+
+ // AppId
+ registration.AppId = genruntime.ClonePointerToString(source.AppId)
+
+ // AppSecretSettingName
+ registration.AppSecretSettingName = genruntime.ClonePointerToString(source.AppSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AppRegistration populates the provided destination AppRegistration from our AppRegistration
+func (registration *AppRegistration) AssignProperties_To_AppRegistration(destination *storage.AppRegistration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AppId
+ destination.AppId = genruntime.ClonePointerToString(registration.AppId)
+
+ // AppSecretSettingName
+ destination.AppSecretSettingName = genruntime.ClonePointerToString(registration.AppSecretSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AppRegistration_STATUS populates our AppRegistration from the provided source AppRegistration_STATUS
+func (registration *AppRegistration) Initialize_From_AppRegistration_STATUS(source *AppRegistration_STATUS) error {
+
+ // AppId
+ registration.AppId = genruntime.ClonePointerToString(source.AppId)
+
+ // AppSecretSettingName
+ registration.AppSecretSettingName = genruntime.ClonePointerToString(source.AppSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the app registration for providers that have app ids and app secrets
+type AppRegistration_STATUS struct {
+ // AppId: The App ID of the app used for login.
+ AppId *string `json:"appId,omitempty"`
+
+ // AppSecretSettingName: The app setting name that contains the app secret.
+ AppSecretSettingName *string `json:"appSecretSettingName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AppRegistration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *AppRegistration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AppRegistration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *AppRegistration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AppRegistration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AppRegistration_STATUS, got %T", armInput)
+ }
+
+ // Set property "AppId":
+ if typedInput.AppId != nil {
+ appId := *typedInput.AppId
+ registration.AppId = &appId
+ }
+
+ // Set property "AppSecretSettingName":
+ if typedInput.AppSecretSettingName != nil {
+ appSecretSettingName := *typedInput.AppSecretSettingName
+ registration.AppSecretSettingName = &appSecretSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AppRegistration_STATUS populates our AppRegistration_STATUS from the provided source AppRegistration_STATUS
+func (registration *AppRegistration_STATUS) AssignProperties_From_AppRegistration_STATUS(source *storage.AppRegistration_STATUS) error {
+
+ // AppId
+ registration.AppId = genruntime.ClonePointerToString(source.AppId)
+
+ // AppSecretSettingName
+ registration.AppSecretSettingName = genruntime.ClonePointerToString(source.AppSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AppRegistration_STATUS populates the provided destination AppRegistration_STATUS from our AppRegistration_STATUS
+func (registration *AppRegistration_STATUS) AssignProperties_To_AppRegistration_STATUS(destination *storage.AppRegistration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AppId
+ destination.AppId = genruntime.ClonePointerToString(registration.AppId)
+
+ // AppSecretSettingName
+ destination.AppSecretSettingName = genruntime.ClonePointerToString(registration.AppSecretSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory login flow.
+type AzureActiveDirectoryLogin struct {
+ // DisableWWWAuthenticate: true
if the www-authenticate provider should be omitted from the request;
+ // otherwise, false
.
+ DisableWWWAuthenticate *bool `json:"disableWWWAuthenticate,omitempty"`
+
+ // LoginParameters: Login parameters to send to the OpenID Connect authorization endpoint when
+ // a user logs in. Each parameter must be in the form "key=value".
+ LoginParameters []string `json:"loginParameters,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AzureActiveDirectoryLogin{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (login *AzureActiveDirectoryLogin) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if login == nil {
+ return nil, nil
+ }
+ result := &arm.AzureActiveDirectoryLogin{}
+
+ // Set property "DisableWWWAuthenticate":
+ if login.DisableWWWAuthenticate != nil {
+ disableWWWAuthenticate := *login.DisableWWWAuthenticate
+ result.DisableWWWAuthenticate = &disableWWWAuthenticate
+ }
+
+ // Set property "LoginParameters":
+ for _, item := range login.LoginParameters {
+ result.LoginParameters = append(result.LoginParameters, item)
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (login *AzureActiveDirectoryLogin) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureActiveDirectoryLogin{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (login *AzureActiveDirectoryLogin) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureActiveDirectoryLogin)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureActiveDirectoryLogin, got %T", armInput)
+ }
+
+ // Set property "DisableWWWAuthenticate":
+ if typedInput.DisableWWWAuthenticate != nil {
+ disableWWWAuthenticate := *typedInput.DisableWWWAuthenticate
+ login.DisableWWWAuthenticate = &disableWWWAuthenticate
+ }
+
+ // Set property "LoginParameters":
+ for _, item := range typedInput.LoginParameters {
+ login.LoginParameters = append(login.LoginParameters, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureActiveDirectoryLogin populates our AzureActiveDirectoryLogin from the provided source AzureActiveDirectoryLogin
+func (login *AzureActiveDirectoryLogin) AssignProperties_From_AzureActiveDirectoryLogin(source *storage.AzureActiveDirectoryLogin) error {
+
+ // DisableWWWAuthenticate
+ if source.DisableWWWAuthenticate != nil {
+ disableWWWAuthenticate := *source.DisableWWWAuthenticate
+ login.DisableWWWAuthenticate = &disableWWWAuthenticate
+ } else {
+ login.DisableWWWAuthenticate = nil
+ }
+
+ // LoginParameters
+ login.LoginParameters = genruntime.CloneSliceOfString(source.LoginParameters)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureActiveDirectoryLogin populates the provided destination AzureActiveDirectoryLogin from our AzureActiveDirectoryLogin
+func (login *AzureActiveDirectoryLogin) AssignProperties_To_AzureActiveDirectoryLogin(destination *storage.AzureActiveDirectoryLogin) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // DisableWWWAuthenticate
+ if login.DisableWWWAuthenticate != nil {
+ disableWWWAuthenticate := *login.DisableWWWAuthenticate
+ destination.DisableWWWAuthenticate = &disableWWWAuthenticate
+ } else {
+ destination.DisableWWWAuthenticate = nil
+ }
+
+ // LoginParameters
+ destination.LoginParameters = genruntime.CloneSliceOfString(login.LoginParameters)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AzureActiveDirectoryLogin_STATUS populates our AzureActiveDirectoryLogin from the provided source AzureActiveDirectoryLogin_STATUS
+func (login *AzureActiveDirectoryLogin) Initialize_From_AzureActiveDirectoryLogin_STATUS(source *AzureActiveDirectoryLogin_STATUS) error {
+
+ // DisableWWWAuthenticate
+ if source.DisableWWWAuthenticate != nil {
+ disableWWWAuthenticate := *source.DisableWWWAuthenticate
+ login.DisableWWWAuthenticate = &disableWWWAuthenticate
+ } else {
+ login.DisableWWWAuthenticate = nil
+ }
+
+ // LoginParameters
+ login.LoginParameters = genruntime.CloneSliceOfString(source.LoginParameters)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory login flow.
+type AzureActiveDirectoryLogin_STATUS struct {
+ // DisableWWWAuthenticate: true
if the www-authenticate provider should be omitted from the request;
+ // otherwise, false
.
+ DisableWWWAuthenticate *bool `json:"disableWWWAuthenticate,omitempty"`
+
+ // LoginParameters: Login parameters to send to the OpenID Connect authorization endpoint when
+ // a user logs in. Each parameter must be in the form "key=value".
+ LoginParameters []string `json:"loginParameters,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AzureActiveDirectoryLogin_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (login *AzureActiveDirectoryLogin_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureActiveDirectoryLogin_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (login *AzureActiveDirectoryLogin_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureActiveDirectoryLogin_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureActiveDirectoryLogin_STATUS, got %T", armInput)
+ }
+
+ // Set property "DisableWWWAuthenticate":
+ if typedInput.DisableWWWAuthenticate != nil {
+ disableWWWAuthenticate := *typedInput.DisableWWWAuthenticate
+ login.DisableWWWAuthenticate = &disableWWWAuthenticate
+ }
+
+ // Set property "LoginParameters":
+ for _, item := range typedInput.LoginParameters {
+ login.LoginParameters = append(login.LoginParameters, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureActiveDirectoryLogin_STATUS populates our AzureActiveDirectoryLogin_STATUS from the provided source AzureActiveDirectoryLogin_STATUS
+func (login *AzureActiveDirectoryLogin_STATUS) AssignProperties_From_AzureActiveDirectoryLogin_STATUS(source *storage.AzureActiveDirectoryLogin_STATUS) error {
+
+ // DisableWWWAuthenticate
+ if source.DisableWWWAuthenticate != nil {
+ disableWWWAuthenticate := *source.DisableWWWAuthenticate
+ login.DisableWWWAuthenticate = &disableWWWAuthenticate
+ } else {
+ login.DisableWWWAuthenticate = nil
+ }
+
+ // LoginParameters
+ login.LoginParameters = genruntime.CloneSliceOfString(source.LoginParameters)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureActiveDirectoryLogin_STATUS populates the provided destination AzureActiveDirectoryLogin_STATUS from our AzureActiveDirectoryLogin_STATUS
+func (login *AzureActiveDirectoryLogin_STATUS) AssignProperties_To_AzureActiveDirectoryLogin_STATUS(destination *storage.AzureActiveDirectoryLogin_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // DisableWWWAuthenticate
+ if login.DisableWWWAuthenticate != nil {
+ disableWWWAuthenticate := *login.DisableWWWAuthenticate
+ destination.DisableWWWAuthenticate = &disableWWWAuthenticate
+ } else {
+ destination.DisableWWWAuthenticate = nil
+ }
+
+ // LoginParameters
+ destination.LoginParameters = genruntime.CloneSliceOfString(login.LoginParameters)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory app registration.
+type AzureActiveDirectoryRegistration struct {
+ // ClientId: The Client ID of this relying party application, known as the client_id.
+ // This setting is required for enabling OpenID Connection authentication with Azure Active Directory or
+ // other 3rd party OpenID Connect providers.
+ // More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretCertificateIssuer: An alternative to the client secret thumbprint, that is the issuer of a certificate used
+ // for signing purposes. This property acts as
+ // a replacement for the Client Secret Certificate Thumbprint. It is also optional.
+ ClientSecretCertificateIssuer *string `json:"clientSecretCertificateIssuer,omitempty"`
+
+ // ClientSecretCertificateSubjectAlternativeName: An alternative to the client secret thumbprint, that is the subject
+ // alternative name of a certificate used for signing purposes. This property acts as
+ // a replacement for the Client Secret Certificate Thumbprint. It is also optional.
+ ClientSecretCertificateSubjectAlternativeName *string `json:"clientSecretCertificateSubjectAlternativeName,omitempty"`
+
+ // ClientSecretCertificateThumbprint: An alternative to the client secret, that is the thumbprint of a certificate used for
+ // signing purposes. This property acts as
+ // a replacement for the Client Secret. It is also optional.
+ ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret of the relying party application.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+
+ // OpenIdIssuer: The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.
+ // When using Azure Active Directory, this value is the URI of the directory tenant, e.g.
+ // https://login.microsoftonline.com/v2.0/{tenant-guid}/.
+ // This URI is a case-sensitive identifier for the token issuer.
+ // More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html
+ OpenIdIssuer *string `json:"openIdIssuer,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AzureActiveDirectoryRegistration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (registration *AzureActiveDirectoryRegistration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if registration == nil {
+ return nil, nil
+ }
+ result := &arm.AzureActiveDirectoryRegistration{}
+
+ // Set property "ClientId":
+ if registration.ClientId != nil {
+ clientId := *registration.ClientId
+ result.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretCertificateIssuer":
+ if registration.ClientSecretCertificateIssuer != nil {
+ clientSecretCertificateIssuer := *registration.ClientSecretCertificateIssuer
+ result.ClientSecretCertificateIssuer = &clientSecretCertificateIssuer
+ }
+
+ // Set property "ClientSecretCertificateSubjectAlternativeName":
+ if registration.ClientSecretCertificateSubjectAlternativeName != nil {
+ clientSecretCertificateSubjectAlternativeName := *registration.ClientSecretCertificateSubjectAlternativeName
+ result.ClientSecretCertificateSubjectAlternativeName = &clientSecretCertificateSubjectAlternativeName
+ }
+
+ // Set property "ClientSecretCertificateThumbprint":
+ if registration.ClientSecretCertificateThumbprint != nil {
+ clientSecretCertificateThumbprint := *registration.ClientSecretCertificateThumbprint
+ result.ClientSecretCertificateThumbprint = &clientSecretCertificateThumbprint
+ }
+
+ // Set property "ClientSecretSettingName":
+ if registration.ClientSecretSettingName != nil {
+ clientSecretSettingName := *registration.ClientSecretSettingName
+ result.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // Set property "OpenIdIssuer":
+ if registration.OpenIdIssuer != nil {
+ openIdIssuer := *registration.OpenIdIssuer
+ result.OpenIdIssuer = &openIdIssuer
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *AzureActiveDirectoryRegistration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureActiveDirectoryRegistration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *AzureActiveDirectoryRegistration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureActiveDirectoryRegistration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureActiveDirectoryRegistration, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretCertificateIssuer":
+ if typedInput.ClientSecretCertificateIssuer != nil {
+ clientSecretCertificateIssuer := *typedInput.ClientSecretCertificateIssuer
+ registration.ClientSecretCertificateIssuer = &clientSecretCertificateIssuer
+ }
+
+ // Set property "ClientSecretCertificateSubjectAlternativeName":
+ if typedInput.ClientSecretCertificateSubjectAlternativeName != nil {
+ clientSecretCertificateSubjectAlternativeName := *typedInput.ClientSecretCertificateSubjectAlternativeName
+ registration.ClientSecretCertificateSubjectAlternativeName = &clientSecretCertificateSubjectAlternativeName
+ }
+
+ // Set property "ClientSecretCertificateThumbprint":
+ if typedInput.ClientSecretCertificateThumbprint != nil {
+ clientSecretCertificateThumbprint := *typedInput.ClientSecretCertificateThumbprint
+ registration.ClientSecretCertificateThumbprint = &clientSecretCertificateThumbprint
+ }
+
+ // Set property "ClientSecretSettingName":
+ if typedInput.ClientSecretSettingName != nil {
+ clientSecretSettingName := *typedInput.ClientSecretSettingName
+ registration.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // Set property "OpenIdIssuer":
+ if typedInput.OpenIdIssuer != nil {
+ openIdIssuer := *typedInput.OpenIdIssuer
+ registration.OpenIdIssuer = &openIdIssuer
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureActiveDirectoryRegistration populates our AzureActiveDirectoryRegistration from the provided source AzureActiveDirectoryRegistration
+func (registration *AzureActiveDirectoryRegistration) AssignProperties_From_AzureActiveDirectoryRegistration(source *storage.AzureActiveDirectoryRegistration) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretCertificateIssuer
+ registration.ClientSecretCertificateIssuer = genruntime.ClonePointerToString(source.ClientSecretCertificateIssuer)
+
+ // ClientSecretCertificateSubjectAlternativeName
+ registration.ClientSecretCertificateSubjectAlternativeName = genruntime.ClonePointerToString(source.ClientSecretCertificateSubjectAlternativeName)
+
+ // ClientSecretCertificateThumbprint
+ registration.ClientSecretCertificateThumbprint = genruntime.ClonePointerToString(source.ClientSecretCertificateThumbprint)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // OpenIdIssuer
+ registration.OpenIdIssuer = genruntime.ClonePointerToString(source.OpenIdIssuer)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureActiveDirectoryRegistration populates the provided destination AzureActiveDirectoryRegistration from our AzureActiveDirectoryRegistration
+func (registration *AzureActiveDirectoryRegistration) AssignProperties_To_AzureActiveDirectoryRegistration(destination *storage.AzureActiveDirectoryRegistration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // ClientSecretCertificateIssuer
+ destination.ClientSecretCertificateIssuer = genruntime.ClonePointerToString(registration.ClientSecretCertificateIssuer)
+
+ // ClientSecretCertificateSubjectAlternativeName
+ destination.ClientSecretCertificateSubjectAlternativeName = genruntime.ClonePointerToString(registration.ClientSecretCertificateSubjectAlternativeName)
+
+ // ClientSecretCertificateThumbprint
+ destination.ClientSecretCertificateThumbprint = genruntime.ClonePointerToString(registration.ClientSecretCertificateThumbprint)
+
+ // ClientSecretSettingName
+ destination.ClientSecretSettingName = genruntime.ClonePointerToString(registration.ClientSecretSettingName)
+
+ // OpenIdIssuer
+ destination.OpenIdIssuer = genruntime.ClonePointerToString(registration.OpenIdIssuer)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AzureActiveDirectoryRegistration_STATUS populates our AzureActiveDirectoryRegistration from the provided source AzureActiveDirectoryRegistration_STATUS
+func (registration *AzureActiveDirectoryRegistration) Initialize_From_AzureActiveDirectoryRegistration_STATUS(source *AzureActiveDirectoryRegistration_STATUS) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretCertificateIssuer
+ registration.ClientSecretCertificateIssuer = genruntime.ClonePointerToString(source.ClientSecretCertificateIssuer)
+
+ // ClientSecretCertificateSubjectAlternativeName
+ registration.ClientSecretCertificateSubjectAlternativeName = genruntime.ClonePointerToString(source.ClientSecretCertificateSubjectAlternativeName)
+
+ // ClientSecretCertificateThumbprint
+ registration.ClientSecretCertificateThumbprint = genruntime.ClonePointerToString(source.ClientSecretCertificateThumbprint)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // OpenIdIssuer
+ registration.OpenIdIssuer = genruntime.ClonePointerToString(source.OpenIdIssuer)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory app registration.
+type AzureActiveDirectoryRegistration_STATUS struct {
+ // ClientId: The Client ID of this relying party application, known as the client_id.
+ // This setting is required for enabling OpenID Connection authentication with Azure Active Directory or
+ // other 3rd party OpenID Connect providers.
+ // More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretCertificateIssuer: An alternative to the client secret thumbprint, that is the issuer of a certificate used
+ // for signing purposes. This property acts as
+ // a replacement for the Client Secret Certificate Thumbprint. It is also optional.
+ ClientSecretCertificateIssuer *string `json:"clientSecretCertificateIssuer,omitempty"`
+
+ // ClientSecretCertificateSubjectAlternativeName: An alternative to the client secret thumbprint, that is the subject
+ // alternative name of a certificate used for signing purposes. This property acts as
+ // a replacement for the Client Secret Certificate Thumbprint. It is also optional.
+ ClientSecretCertificateSubjectAlternativeName *string `json:"clientSecretCertificateSubjectAlternativeName,omitempty"`
+
+ // ClientSecretCertificateThumbprint: An alternative to the client secret, that is the thumbprint of a certificate used for
+ // signing purposes. This property acts as
+ // a replacement for the Client Secret. It is also optional.
+ ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret of the relying party application.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+
+ // OpenIdIssuer: The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application.
+ // When using Azure Active Directory, this value is the URI of the directory tenant, e.g.
+ // https://login.microsoftonline.com/v2.0/{tenant-guid}/.
+ // This URI is a case-sensitive identifier for the token issuer.
+ // More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html
+ OpenIdIssuer *string `json:"openIdIssuer,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AzureActiveDirectoryRegistration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *AzureActiveDirectoryRegistration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureActiveDirectoryRegistration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *AzureActiveDirectoryRegistration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureActiveDirectoryRegistration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureActiveDirectoryRegistration_STATUS, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretCertificateIssuer":
+ if typedInput.ClientSecretCertificateIssuer != nil {
+ clientSecretCertificateIssuer := *typedInput.ClientSecretCertificateIssuer
+ registration.ClientSecretCertificateIssuer = &clientSecretCertificateIssuer
+ }
+
+ // Set property "ClientSecretCertificateSubjectAlternativeName":
+ if typedInput.ClientSecretCertificateSubjectAlternativeName != nil {
+ clientSecretCertificateSubjectAlternativeName := *typedInput.ClientSecretCertificateSubjectAlternativeName
+ registration.ClientSecretCertificateSubjectAlternativeName = &clientSecretCertificateSubjectAlternativeName
+ }
+
+ // Set property "ClientSecretCertificateThumbprint":
+ if typedInput.ClientSecretCertificateThumbprint != nil {
+ clientSecretCertificateThumbprint := *typedInput.ClientSecretCertificateThumbprint
+ registration.ClientSecretCertificateThumbprint = &clientSecretCertificateThumbprint
+ }
+
+ // Set property "ClientSecretSettingName":
+ if typedInput.ClientSecretSettingName != nil {
+ clientSecretSettingName := *typedInput.ClientSecretSettingName
+ registration.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // Set property "OpenIdIssuer":
+ if typedInput.OpenIdIssuer != nil {
+ openIdIssuer := *typedInput.OpenIdIssuer
+ registration.OpenIdIssuer = &openIdIssuer
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureActiveDirectoryRegistration_STATUS populates our AzureActiveDirectoryRegistration_STATUS from the provided source AzureActiveDirectoryRegistration_STATUS
+func (registration *AzureActiveDirectoryRegistration_STATUS) AssignProperties_From_AzureActiveDirectoryRegistration_STATUS(source *storage.AzureActiveDirectoryRegistration_STATUS) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretCertificateIssuer
+ registration.ClientSecretCertificateIssuer = genruntime.ClonePointerToString(source.ClientSecretCertificateIssuer)
+
+ // ClientSecretCertificateSubjectAlternativeName
+ registration.ClientSecretCertificateSubjectAlternativeName = genruntime.ClonePointerToString(source.ClientSecretCertificateSubjectAlternativeName)
+
+ // ClientSecretCertificateThumbprint
+ registration.ClientSecretCertificateThumbprint = genruntime.ClonePointerToString(source.ClientSecretCertificateThumbprint)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // OpenIdIssuer
+ registration.OpenIdIssuer = genruntime.ClonePointerToString(source.OpenIdIssuer)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureActiveDirectoryRegistration_STATUS populates the provided destination AzureActiveDirectoryRegistration_STATUS from our AzureActiveDirectoryRegistration_STATUS
+func (registration *AzureActiveDirectoryRegistration_STATUS) AssignProperties_To_AzureActiveDirectoryRegistration_STATUS(destination *storage.AzureActiveDirectoryRegistration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // ClientSecretCertificateIssuer
+ destination.ClientSecretCertificateIssuer = genruntime.ClonePointerToString(registration.ClientSecretCertificateIssuer)
+
+ // ClientSecretCertificateSubjectAlternativeName
+ destination.ClientSecretCertificateSubjectAlternativeName = genruntime.ClonePointerToString(registration.ClientSecretCertificateSubjectAlternativeName)
+
+ // ClientSecretCertificateThumbprint
+ destination.ClientSecretCertificateThumbprint = genruntime.ClonePointerToString(registration.ClientSecretCertificateThumbprint)
+
+ // ClientSecretSettingName
+ destination.ClientSecretSettingName = genruntime.ClonePointerToString(registration.ClientSecretSettingName)
+
+ // OpenIdIssuer
+ destination.OpenIdIssuer = genruntime.ClonePointerToString(registration.OpenIdIssuer)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory token validation flow.
+type AzureActiveDirectoryValidation struct {
+ // AllowedAudiences: The list of audiences that can make successful authentication/authorization requests.
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+
+ // DefaultAuthorizationPolicy: The configuration settings of the default authorization policy.
+ DefaultAuthorizationPolicy *DefaultAuthorizationPolicy `json:"defaultAuthorizationPolicy,omitempty"`
+
+ // JwtClaimChecks: The configuration settings of the checks that should be made while validating the JWT Claims.
+ JwtClaimChecks *JwtClaimChecks `json:"jwtClaimChecks,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AzureActiveDirectoryValidation{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (validation *AzureActiveDirectoryValidation) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if validation == nil {
+ return nil, nil
+ }
+ result := &arm.AzureActiveDirectoryValidation{}
+
+ // Set property "AllowedAudiences":
+ for _, item := range validation.AllowedAudiences {
+ result.AllowedAudiences = append(result.AllowedAudiences, item)
+ }
+
+ // Set property "DefaultAuthorizationPolicy":
+ if validation.DefaultAuthorizationPolicy != nil {
+ defaultAuthorizationPolicy_ARM, err := (*validation.DefaultAuthorizationPolicy).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ defaultAuthorizationPolicy := *defaultAuthorizationPolicy_ARM.(*arm.DefaultAuthorizationPolicy)
+ result.DefaultAuthorizationPolicy = &defaultAuthorizationPolicy
+ }
+
+ // Set property "JwtClaimChecks":
+ if validation.JwtClaimChecks != nil {
+ jwtClaimChecks_ARM, err := (*validation.JwtClaimChecks).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ jwtClaimChecks := *jwtClaimChecks_ARM.(*arm.JwtClaimChecks)
+ result.JwtClaimChecks = &jwtClaimChecks
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (validation *AzureActiveDirectoryValidation) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureActiveDirectoryValidation{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (validation *AzureActiveDirectoryValidation) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureActiveDirectoryValidation)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureActiveDirectoryValidation, got %T", armInput)
+ }
+
+ // Set property "AllowedAudiences":
+ for _, item := range typedInput.AllowedAudiences {
+ validation.AllowedAudiences = append(validation.AllowedAudiences, item)
+ }
+
+ // Set property "DefaultAuthorizationPolicy":
+ if typedInput.DefaultAuthorizationPolicy != nil {
+ var defaultAuthorizationPolicy1 DefaultAuthorizationPolicy
+ err := defaultAuthorizationPolicy1.PopulateFromARM(owner, *typedInput.DefaultAuthorizationPolicy)
+ if err != nil {
+ return err
+ }
+ defaultAuthorizationPolicy := defaultAuthorizationPolicy1
+ validation.DefaultAuthorizationPolicy = &defaultAuthorizationPolicy
+ }
+
+ // Set property "JwtClaimChecks":
+ if typedInput.JwtClaimChecks != nil {
+ var jwtClaimChecks1 JwtClaimChecks
+ err := jwtClaimChecks1.PopulateFromARM(owner, *typedInput.JwtClaimChecks)
+ if err != nil {
+ return err
+ }
+ jwtClaimChecks := jwtClaimChecks1
+ validation.JwtClaimChecks = &jwtClaimChecks
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureActiveDirectoryValidation populates our AzureActiveDirectoryValidation from the provided source AzureActiveDirectoryValidation
+func (validation *AzureActiveDirectoryValidation) AssignProperties_From_AzureActiveDirectoryValidation(source *storage.AzureActiveDirectoryValidation) error {
+
+ // AllowedAudiences
+ validation.AllowedAudiences = genruntime.CloneSliceOfString(source.AllowedAudiences)
+
+ // DefaultAuthorizationPolicy
+ if source.DefaultAuthorizationPolicy != nil {
+ var defaultAuthorizationPolicy DefaultAuthorizationPolicy
+ err := defaultAuthorizationPolicy.AssignProperties_From_DefaultAuthorizationPolicy(source.DefaultAuthorizationPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_DefaultAuthorizationPolicy() to populate field DefaultAuthorizationPolicy")
+ }
+ validation.DefaultAuthorizationPolicy = &defaultAuthorizationPolicy
+ } else {
+ validation.DefaultAuthorizationPolicy = nil
+ }
+
+ // JwtClaimChecks
+ if source.JwtClaimChecks != nil {
+ var jwtClaimCheck JwtClaimChecks
+ err := jwtClaimCheck.AssignProperties_From_JwtClaimChecks(source.JwtClaimChecks)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JwtClaimChecks() to populate field JwtClaimChecks")
+ }
+ validation.JwtClaimChecks = &jwtClaimCheck
+ } else {
+ validation.JwtClaimChecks = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureActiveDirectoryValidation populates the provided destination AzureActiveDirectoryValidation from our AzureActiveDirectoryValidation
+func (validation *AzureActiveDirectoryValidation) AssignProperties_To_AzureActiveDirectoryValidation(destination *storage.AzureActiveDirectoryValidation) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedAudiences
+ destination.AllowedAudiences = genruntime.CloneSliceOfString(validation.AllowedAudiences)
+
+ // DefaultAuthorizationPolicy
+ if validation.DefaultAuthorizationPolicy != nil {
+ var defaultAuthorizationPolicy storage.DefaultAuthorizationPolicy
+ err := validation.DefaultAuthorizationPolicy.AssignProperties_To_DefaultAuthorizationPolicy(&defaultAuthorizationPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_DefaultAuthorizationPolicy() to populate field DefaultAuthorizationPolicy")
+ }
+ destination.DefaultAuthorizationPolicy = &defaultAuthorizationPolicy
+ } else {
+ destination.DefaultAuthorizationPolicy = nil
+ }
+
+ // JwtClaimChecks
+ if validation.JwtClaimChecks != nil {
+ var jwtClaimCheck storage.JwtClaimChecks
+ err := validation.JwtClaimChecks.AssignProperties_To_JwtClaimChecks(&jwtClaimCheck)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JwtClaimChecks() to populate field JwtClaimChecks")
+ }
+ destination.JwtClaimChecks = &jwtClaimCheck
+ } else {
+ destination.JwtClaimChecks = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AzureActiveDirectoryValidation_STATUS populates our AzureActiveDirectoryValidation from the provided source AzureActiveDirectoryValidation_STATUS
+func (validation *AzureActiveDirectoryValidation) Initialize_From_AzureActiveDirectoryValidation_STATUS(source *AzureActiveDirectoryValidation_STATUS) error {
+
+ // AllowedAudiences
+ validation.AllowedAudiences = genruntime.CloneSliceOfString(source.AllowedAudiences)
+
+ // DefaultAuthorizationPolicy
+ if source.DefaultAuthorizationPolicy != nil {
+ var defaultAuthorizationPolicy DefaultAuthorizationPolicy
+ err := defaultAuthorizationPolicy.Initialize_From_DefaultAuthorizationPolicy_STATUS(source.DefaultAuthorizationPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_DefaultAuthorizationPolicy_STATUS() to populate field DefaultAuthorizationPolicy")
+ }
+ validation.DefaultAuthorizationPolicy = &defaultAuthorizationPolicy
+ } else {
+ validation.DefaultAuthorizationPolicy = nil
+ }
+
+ // JwtClaimChecks
+ if source.JwtClaimChecks != nil {
+ var jwtClaimCheck JwtClaimChecks
+ err := jwtClaimCheck.Initialize_From_JwtClaimChecks_STATUS(source.JwtClaimChecks)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_JwtClaimChecks_STATUS() to populate field JwtClaimChecks")
+ }
+ validation.JwtClaimChecks = &jwtClaimCheck
+ } else {
+ validation.JwtClaimChecks = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory token validation flow.
+type AzureActiveDirectoryValidation_STATUS struct {
+ // AllowedAudiences: The list of audiences that can make successful authentication/authorization requests.
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+
+ // DefaultAuthorizationPolicy: The configuration settings of the default authorization policy.
+ DefaultAuthorizationPolicy *DefaultAuthorizationPolicy_STATUS `json:"defaultAuthorizationPolicy,omitempty"`
+
+ // JwtClaimChecks: The configuration settings of the checks that should be made while validating the JWT Claims.
+ JwtClaimChecks *JwtClaimChecks_STATUS `json:"jwtClaimChecks,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AzureActiveDirectoryValidation_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (validation *AzureActiveDirectoryValidation_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureActiveDirectoryValidation_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (validation *AzureActiveDirectoryValidation_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureActiveDirectoryValidation_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureActiveDirectoryValidation_STATUS, got %T", armInput)
+ }
+
+ // Set property "AllowedAudiences":
+ for _, item := range typedInput.AllowedAudiences {
+ validation.AllowedAudiences = append(validation.AllowedAudiences, item)
+ }
+
+ // Set property "DefaultAuthorizationPolicy":
+ if typedInput.DefaultAuthorizationPolicy != nil {
+ var defaultAuthorizationPolicy1 DefaultAuthorizationPolicy_STATUS
+ err := defaultAuthorizationPolicy1.PopulateFromARM(owner, *typedInput.DefaultAuthorizationPolicy)
+ if err != nil {
+ return err
+ }
+ defaultAuthorizationPolicy := defaultAuthorizationPolicy1
+ validation.DefaultAuthorizationPolicy = &defaultAuthorizationPolicy
+ }
+
+ // Set property "JwtClaimChecks":
+ if typedInput.JwtClaimChecks != nil {
+ var jwtClaimChecks1 JwtClaimChecks_STATUS
+ err := jwtClaimChecks1.PopulateFromARM(owner, *typedInput.JwtClaimChecks)
+ if err != nil {
+ return err
+ }
+ jwtClaimChecks := jwtClaimChecks1
+ validation.JwtClaimChecks = &jwtClaimChecks
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureActiveDirectoryValidation_STATUS populates our AzureActiveDirectoryValidation_STATUS from the provided source AzureActiveDirectoryValidation_STATUS
+func (validation *AzureActiveDirectoryValidation_STATUS) AssignProperties_From_AzureActiveDirectoryValidation_STATUS(source *storage.AzureActiveDirectoryValidation_STATUS) error {
+
+ // AllowedAudiences
+ validation.AllowedAudiences = genruntime.CloneSliceOfString(source.AllowedAudiences)
+
+ // DefaultAuthorizationPolicy
+ if source.DefaultAuthorizationPolicy != nil {
+ var defaultAuthorizationPolicy DefaultAuthorizationPolicy_STATUS
+ err := defaultAuthorizationPolicy.AssignProperties_From_DefaultAuthorizationPolicy_STATUS(source.DefaultAuthorizationPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_DefaultAuthorizationPolicy_STATUS() to populate field DefaultAuthorizationPolicy")
+ }
+ validation.DefaultAuthorizationPolicy = &defaultAuthorizationPolicy
+ } else {
+ validation.DefaultAuthorizationPolicy = nil
+ }
+
+ // JwtClaimChecks
+ if source.JwtClaimChecks != nil {
+ var jwtClaimCheck JwtClaimChecks_STATUS
+ err := jwtClaimCheck.AssignProperties_From_JwtClaimChecks_STATUS(source.JwtClaimChecks)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JwtClaimChecks_STATUS() to populate field JwtClaimChecks")
+ }
+ validation.JwtClaimChecks = &jwtClaimCheck
+ } else {
+ validation.JwtClaimChecks = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureActiveDirectoryValidation_STATUS populates the provided destination AzureActiveDirectoryValidation_STATUS from our AzureActiveDirectoryValidation_STATUS
+func (validation *AzureActiveDirectoryValidation_STATUS) AssignProperties_To_AzureActiveDirectoryValidation_STATUS(destination *storage.AzureActiveDirectoryValidation_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedAudiences
+ destination.AllowedAudiences = genruntime.CloneSliceOfString(validation.AllowedAudiences)
+
+ // DefaultAuthorizationPolicy
+ if validation.DefaultAuthorizationPolicy != nil {
+ var defaultAuthorizationPolicy storage.DefaultAuthorizationPolicy_STATUS
+ err := validation.DefaultAuthorizationPolicy.AssignProperties_To_DefaultAuthorizationPolicy_STATUS(&defaultAuthorizationPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_DefaultAuthorizationPolicy_STATUS() to populate field DefaultAuthorizationPolicy")
+ }
+ destination.DefaultAuthorizationPolicy = &defaultAuthorizationPolicy
+ } else {
+ destination.DefaultAuthorizationPolicy = nil
+ }
+
+ // JwtClaimChecks
+ if validation.JwtClaimChecks != nil {
+ var jwtClaimCheck storage.JwtClaimChecks_STATUS
+ err := validation.JwtClaimChecks.AssignProperties_To_JwtClaimChecks_STATUS(&jwtClaimCheck)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JwtClaimChecks_STATUS() to populate field JwtClaimChecks")
+ }
+ destination.JwtClaimChecks = &jwtClaimCheck
+ } else {
+ destination.JwtClaimChecks = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the registration for the Azure Static Web Apps provider
+type AzureStaticWebAppsRegistration struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AzureStaticWebAppsRegistration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (registration *AzureStaticWebAppsRegistration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if registration == nil {
+ return nil, nil
+ }
+ result := &arm.AzureStaticWebAppsRegistration{}
+
+ // Set property "ClientId":
+ if registration.ClientId != nil {
+ clientId := *registration.ClientId
+ result.ClientId = &clientId
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *AzureStaticWebAppsRegistration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureStaticWebAppsRegistration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *AzureStaticWebAppsRegistration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureStaticWebAppsRegistration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureStaticWebAppsRegistration, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureStaticWebAppsRegistration populates our AzureStaticWebAppsRegistration from the provided source AzureStaticWebAppsRegistration
+func (registration *AzureStaticWebAppsRegistration) AssignProperties_From_AzureStaticWebAppsRegistration(source *storage.AzureStaticWebAppsRegistration) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureStaticWebAppsRegistration populates the provided destination AzureStaticWebAppsRegistration from our AzureStaticWebAppsRegistration
+func (registration *AzureStaticWebAppsRegistration) AssignProperties_To_AzureStaticWebAppsRegistration(destination *storage.AzureStaticWebAppsRegistration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AzureStaticWebAppsRegistration_STATUS populates our AzureStaticWebAppsRegistration from the provided source AzureStaticWebAppsRegistration_STATUS
+func (registration *AzureStaticWebAppsRegistration) Initialize_From_AzureStaticWebAppsRegistration_STATUS(source *AzureStaticWebAppsRegistration_STATUS) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the registration for the Azure Static Web Apps provider
+type AzureStaticWebAppsRegistration_STATUS struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AzureStaticWebAppsRegistration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *AzureStaticWebAppsRegistration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AzureStaticWebAppsRegistration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *AzureStaticWebAppsRegistration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AzureStaticWebAppsRegistration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AzureStaticWebAppsRegistration_STATUS, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AzureStaticWebAppsRegistration_STATUS populates our AzureStaticWebAppsRegistration_STATUS from the provided source AzureStaticWebAppsRegistration_STATUS
+func (registration *AzureStaticWebAppsRegistration_STATUS) AssignProperties_From_AzureStaticWebAppsRegistration_STATUS(source *storage.AzureStaticWebAppsRegistration_STATUS) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AzureStaticWebAppsRegistration_STATUS populates the provided destination AzureStaticWebAppsRegistration_STATUS from our AzureStaticWebAppsRegistration_STATUS
+func (registration *AzureStaticWebAppsRegistration_STATUS) AssignProperties_To_AzureStaticWebAppsRegistration_STATUS(destination *storage.AzureStaticWebAppsRegistration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the storage of the tokens if blob storage is used.
+type BlobStorageTokenStore struct {
+ // +kubebuilder:validation:Required
+ // SasUrlSettingName: The name of the app secrets containing the SAS URL of the blob storage containing the tokens.
+ SasUrlSettingName *string `json:"sasUrlSettingName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &BlobStorageTokenStore{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (store *BlobStorageTokenStore) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if store == nil {
+ return nil, nil
+ }
+ result := &arm.BlobStorageTokenStore{}
+
+ // Set property "SasUrlSettingName":
+ if store.SasUrlSettingName != nil {
+ sasUrlSettingName := *store.SasUrlSettingName
+ result.SasUrlSettingName = &sasUrlSettingName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (store *BlobStorageTokenStore) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.BlobStorageTokenStore{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (store *BlobStorageTokenStore) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.BlobStorageTokenStore)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.BlobStorageTokenStore, got %T", armInput)
+ }
+
+ // Set property "SasUrlSettingName":
+ if typedInput.SasUrlSettingName != nil {
+ sasUrlSettingName := *typedInput.SasUrlSettingName
+ store.SasUrlSettingName = &sasUrlSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_BlobStorageTokenStore populates our BlobStorageTokenStore from the provided source BlobStorageTokenStore
+func (store *BlobStorageTokenStore) AssignProperties_From_BlobStorageTokenStore(source *storage.BlobStorageTokenStore) error {
+
+ // SasUrlSettingName
+ store.SasUrlSettingName = genruntime.ClonePointerToString(source.SasUrlSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_BlobStorageTokenStore populates the provided destination BlobStorageTokenStore from our BlobStorageTokenStore
+func (store *BlobStorageTokenStore) AssignProperties_To_BlobStorageTokenStore(destination *storage.BlobStorageTokenStore) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // SasUrlSettingName
+ destination.SasUrlSettingName = genruntime.ClonePointerToString(store.SasUrlSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_BlobStorageTokenStore_STATUS populates our BlobStorageTokenStore from the provided source BlobStorageTokenStore_STATUS
+func (store *BlobStorageTokenStore) Initialize_From_BlobStorageTokenStore_STATUS(source *BlobStorageTokenStore_STATUS) error {
+
+ // SasUrlSettingName
+ store.SasUrlSettingName = genruntime.ClonePointerToString(source.SasUrlSettingName)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the storage of the tokens if blob storage is used.
+type BlobStorageTokenStore_STATUS struct {
+ // SasUrlSettingName: The name of the app secrets containing the SAS URL of the blob storage containing the tokens.
+ SasUrlSettingName *string `json:"sasUrlSettingName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &BlobStorageTokenStore_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (store *BlobStorageTokenStore_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.BlobStorageTokenStore_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (store *BlobStorageTokenStore_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.BlobStorageTokenStore_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.BlobStorageTokenStore_STATUS, got %T", armInput)
+ }
+
+ // Set property "SasUrlSettingName":
+ if typedInput.SasUrlSettingName != nil {
+ sasUrlSettingName := *typedInput.SasUrlSettingName
+ store.SasUrlSettingName = &sasUrlSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_BlobStorageTokenStore_STATUS populates our BlobStorageTokenStore_STATUS from the provided source BlobStorageTokenStore_STATUS
+func (store *BlobStorageTokenStore_STATUS) AssignProperties_From_BlobStorageTokenStore_STATUS(source *storage.BlobStorageTokenStore_STATUS) error {
+
+ // SasUrlSettingName
+ store.SasUrlSettingName = genruntime.ClonePointerToString(source.SasUrlSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_BlobStorageTokenStore_STATUS populates the provided destination BlobStorageTokenStore_STATUS from our BlobStorageTokenStore_STATUS
+func (store *BlobStorageTokenStore_STATUS) AssignProperties_To_BlobStorageTokenStore_STATUS(destination *storage.BlobStorageTokenStore_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // SasUrlSettingName
+ destination.SasUrlSettingName = genruntime.ClonePointerToString(store.SasUrlSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the app registration for providers that have client ids and client secrets
+type ClientRegistration struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ClientRegistration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (registration *ClientRegistration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if registration == nil {
+ return nil, nil
+ }
+ result := &arm.ClientRegistration{}
+
+ // Set property "ClientId":
+ if registration.ClientId != nil {
+ clientId := *registration.ClientId
+ result.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretSettingName":
+ if registration.ClientSecretSettingName != nil {
+ clientSecretSettingName := *registration.ClientSecretSettingName
+ result.ClientSecretSettingName = &clientSecretSettingName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *ClientRegistration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ClientRegistration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *ClientRegistration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ClientRegistration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ClientRegistration, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretSettingName":
+ if typedInput.ClientSecretSettingName != nil {
+ clientSecretSettingName := *typedInput.ClientSecretSettingName
+ registration.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ClientRegistration populates our ClientRegistration from the provided source ClientRegistration
+func (registration *ClientRegistration) AssignProperties_From_ClientRegistration(source *storage.ClientRegistration) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ClientRegistration populates the provided destination ClientRegistration from our ClientRegistration
+func (registration *ClientRegistration) AssignProperties_To_ClientRegistration(destination *storage.ClientRegistration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // ClientSecretSettingName
+ destination.ClientSecretSettingName = genruntime.ClonePointerToString(registration.ClientSecretSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ClientRegistration_STATUS populates our ClientRegistration from the provided source ClientRegistration_STATUS
+func (registration *ClientRegistration) Initialize_From_ClientRegistration_STATUS(source *ClientRegistration_STATUS) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the app registration for providers that have client ids and client secrets
+type ClientRegistration_STATUS struct {
+ // ClientId: The Client ID of the app used for login.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // ClientSecretSettingName: The app setting name that contains the client secret.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ClientRegistration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *ClientRegistration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ClientRegistration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *ClientRegistration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ClientRegistration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ClientRegistration_STATUS, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // Set property "ClientSecretSettingName":
+ if typedInput.ClientSecretSettingName != nil {
+ clientSecretSettingName := *typedInput.ClientSecretSettingName
+ registration.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ClientRegistration_STATUS populates our ClientRegistration_STATUS from the provided source ClientRegistration_STATUS
+func (registration *ClientRegistration_STATUS) AssignProperties_From_ClientRegistration_STATUS(source *storage.ClientRegistration_STATUS) error {
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // ClientSecretSettingName
+ registration.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ClientRegistration_STATUS populates the provided destination ClientRegistration_STATUS from our ClientRegistration_STATUS
+func (registration *ClientRegistration_STATUS) AssignProperties_To_ClientRegistration_STATUS(destination *storage.ClientRegistration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // ClientSecretSettingName
+ destination.ClientSecretSettingName = genruntime.ClonePointerToString(registration.ClientSecretSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"FixedTime","IdentityProviderDerived"}
+type CookieExpiration_Convention string
+
+const (
+ CookieExpiration_Convention_FixedTime = CookieExpiration_Convention("FixedTime")
+ CookieExpiration_Convention_IdentityProviderDerived = CookieExpiration_Convention("IdentityProviderDerived")
+)
+
+// Mapping from string to CookieExpiration_Convention
+var cookieExpiration_Convention_Values = map[string]CookieExpiration_Convention{
+ "fixedtime": CookieExpiration_Convention_FixedTime,
+ "identityproviderderived": CookieExpiration_Convention_IdentityProviderDerived,
+}
+
+type CookieExpiration_Convention_STATUS string
+
+const (
+ CookieExpiration_Convention_STATUS_FixedTime = CookieExpiration_Convention_STATUS("FixedTime")
+ CookieExpiration_Convention_STATUS_IdentityProviderDerived = CookieExpiration_Convention_STATUS("IdentityProviderDerived")
+)
+
+// Mapping from string to CookieExpiration_Convention_STATUS
+var cookieExpiration_Convention_STATUS_Values = map[string]CookieExpiration_Convention_STATUS{
+ "fixedtime": CookieExpiration_Convention_STATUS_FixedTime,
+ "identityproviderderived": CookieExpiration_Convention_STATUS_IdentityProviderDerived,
+}
+
+// +kubebuilder:validation:Enum={"Custom","NoProxy","Standard"}
+type ForwardProxy_Convention string
+
+const (
+ ForwardProxy_Convention_Custom = ForwardProxy_Convention("Custom")
+ ForwardProxy_Convention_NoProxy = ForwardProxy_Convention("NoProxy")
+ ForwardProxy_Convention_Standard = ForwardProxy_Convention("Standard")
+)
+
+// Mapping from string to ForwardProxy_Convention
+var forwardProxy_Convention_Values = map[string]ForwardProxy_Convention{
+ "custom": ForwardProxy_Convention_Custom,
+ "noproxy": ForwardProxy_Convention_NoProxy,
+ "standard": ForwardProxy_Convention_Standard,
+}
+
+type ForwardProxy_Convention_STATUS string
+
+const (
+ ForwardProxy_Convention_STATUS_Custom = ForwardProxy_Convention_STATUS("Custom")
+ ForwardProxy_Convention_STATUS_NoProxy = ForwardProxy_Convention_STATUS("NoProxy")
+ ForwardProxy_Convention_STATUS_Standard = ForwardProxy_Convention_STATUS("Standard")
+)
+
+// Mapping from string to ForwardProxy_Convention_STATUS
+var forwardProxy_Convention_STATUS_Values = map[string]ForwardProxy_Convention_STATUS{
+ "custom": ForwardProxy_Convention_STATUS_Custom,
+ "noproxy": ForwardProxy_Convention_STATUS_NoProxy,
+ "standard": ForwardProxy_Convention_STATUS_Standard,
+}
+
+// The configuration settings of the login flow, including the scopes that should be requested.
+type LoginScopes struct {
+ // Scopes: A list of the scopes that should be requested while authenticating.
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &LoginScopes{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (scopes *LoginScopes) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if scopes == nil {
+ return nil, nil
+ }
+ result := &arm.LoginScopes{}
+
+ // Set property "Scopes":
+ for _, item := range scopes.Scopes {
+ result.Scopes = append(result.Scopes, item)
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (scopes *LoginScopes) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.LoginScopes{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (scopes *LoginScopes) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.LoginScopes)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.LoginScopes, got %T", armInput)
+ }
+
+ // Set property "Scopes":
+ for _, item := range typedInput.Scopes {
+ scopes.Scopes = append(scopes.Scopes, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_LoginScopes populates our LoginScopes from the provided source LoginScopes
+func (scopes *LoginScopes) AssignProperties_From_LoginScopes(source *storage.LoginScopes) error {
+
+ // Scopes
+ scopes.Scopes = genruntime.CloneSliceOfString(source.Scopes)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_LoginScopes populates the provided destination LoginScopes from our LoginScopes
+func (scopes *LoginScopes) AssignProperties_To_LoginScopes(destination *storage.LoginScopes) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Scopes
+ destination.Scopes = genruntime.CloneSliceOfString(scopes.Scopes)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_LoginScopes_STATUS populates our LoginScopes from the provided source LoginScopes_STATUS
+func (scopes *LoginScopes) Initialize_From_LoginScopes_STATUS(source *LoginScopes_STATUS) error {
+
+ // Scopes
+ scopes.Scopes = genruntime.CloneSliceOfString(source.Scopes)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the login flow, including the scopes that should be requested.
+type LoginScopes_STATUS struct {
+ // Scopes: A list of the scopes that should be requested while authenticating.
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &LoginScopes_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (scopes *LoginScopes_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.LoginScopes_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (scopes *LoginScopes_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.LoginScopes_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.LoginScopes_STATUS, got %T", armInput)
+ }
+
+ // Set property "Scopes":
+ for _, item := range typedInput.Scopes {
+ scopes.Scopes = append(scopes.Scopes, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_LoginScopes_STATUS populates our LoginScopes_STATUS from the provided source LoginScopes_STATUS
+func (scopes *LoginScopes_STATUS) AssignProperties_From_LoginScopes_STATUS(source *storage.LoginScopes_STATUS) error {
+
+ // Scopes
+ scopes.Scopes = genruntime.CloneSliceOfString(source.Scopes)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_LoginScopes_STATUS populates the provided destination LoginScopes_STATUS from our LoginScopes_STATUS
+func (scopes *LoginScopes_STATUS) AssignProperties_To_LoginScopes_STATUS(destination *storage.LoginScopes_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Scopes
+ destination.Scopes = genruntime.CloneSliceOfString(scopes.Scopes)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the login flow of the custom Open ID Connect provider.
+type OpenIdConnectLogin struct {
+ // NameClaimType: The name of the claim that contains the users name.
+ NameClaimType *string `json:"nameClaimType,omitempty"`
+
+ // Scopes: A list of the scopes that should be requested while authenticating.
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &OpenIdConnectLogin{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (login *OpenIdConnectLogin) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if login == nil {
+ return nil, nil
+ }
+ result := &arm.OpenIdConnectLogin{}
+
+ // Set property "NameClaimType":
+ if login.NameClaimType != nil {
+ nameClaimType := *login.NameClaimType
+ result.NameClaimType = &nameClaimType
+ }
+
+ // Set property "Scopes":
+ for _, item := range login.Scopes {
+ result.Scopes = append(result.Scopes, item)
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (login *OpenIdConnectLogin) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.OpenIdConnectLogin{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (login *OpenIdConnectLogin) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.OpenIdConnectLogin)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.OpenIdConnectLogin, got %T", armInput)
+ }
+
+ // Set property "NameClaimType":
+ if typedInput.NameClaimType != nil {
+ nameClaimType := *typedInput.NameClaimType
+ login.NameClaimType = &nameClaimType
+ }
+
+ // Set property "Scopes":
+ for _, item := range typedInput.Scopes {
+ login.Scopes = append(login.Scopes, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_OpenIdConnectLogin populates our OpenIdConnectLogin from the provided source OpenIdConnectLogin
+func (login *OpenIdConnectLogin) AssignProperties_From_OpenIdConnectLogin(source *storage.OpenIdConnectLogin) error {
+
+ // NameClaimType
+ login.NameClaimType = genruntime.ClonePointerToString(source.NameClaimType)
+
+ // Scopes
+ login.Scopes = genruntime.CloneSliceOfString(source.Scopes)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_OpenIdConnectLogin populates the provided destination OpenIdConnectLogin from our OpenIdConnectLogin
+func (login *OpenIdConnectLogin) AssignProperties_To_OpenIdConnectLogin(destination *storage.OpenIdConnectLogin) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // NameClaimType
+ destination.NameClaimType = genruntime.ClonePointerToString(login.NameClaimType)
+
+ // Scopes
+ destination.Scopes = genruntime.CloneSliceOfString(login.Scopes)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_OpenIdConnectLogin_STATUS populates our OpenIdConnectLogin from the provided source OpenIdConnectLogin_STATUS
+func (login *OpenIdConnectLogin) Initialize_From_OpenIdConnectLogin_STATUS(source *OpenIdConnectLogin_STATUS) error {
+
+ // NameClaimType
+ login.NameClaimType = genruntime.ClonePointerToString(source.NameClaimType)
+
+ // Scopes
+ login.Scopes = genruntime.CloneSliceOfString(source.Scopes)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the login flow of the custom Open ID Connect provider.
+type OpenIdConnectLogin_STATUS struct {
+ // NameClaimType: The name of the claim that contains the users name.
+ NameClaimType *string `json:"nameClaimType,omitempty"`
+
+ // Scopes: A list of the scopes that should be requested while authenticating.
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &OpenIdConnectLogin_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (login *OpenIdConnectLogin_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.OpenIdConnectLogin_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (login *OpenIdConnectLogin_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.OpenIdConnectLogin_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.OpenIdConnectLogin_STATUS, got %T", armInput)
+ }
+
+ // Set property "NameClaimType":
+ if typedInput.NameClaimType != nil {
+ nameClaimType := *typedInput.NameClaimType
+ login.NameClaimType = &nameClaimType
+ }
+
+ // Set property "Scopes":
+ for _, item := range typedInput.Scopes {
+ login.Scopes = append(login.Scopes, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_OpenIdConnectLogin_STATUS populates our OpenIdConnectLogin_STATUS from the provided source OpenIdConnectLogin_STATUS
+func (login *OpenIdConnectLogin_STATUS) AssignProperties_From_OpenIdConnectLogin_STATUS(source *storage.OpenIdConnectLogin_STATUS) error {
+
+ // NameClaimType
+ login.NameClaimType = genruntime.ClonePointerToString(source.NameClaimType)
+
+ // Scopes
+ login.Scopes = genruntime.CloneSliceOfString(source.Scopes)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_OpenIdConnectLogin_STATUS populates the provided destination OpenIdConnectLogin_STATUS from our OpenIdConnectLogin_STATUS
+func (login *OpenIdConnectLogin_STATUS) AssignProperties_To_OpenIdConnectLogin_STATUS(destination *storage.OpenIdConnectLogin_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // NameClaimType
+ destination.NameClaimType = genruntime.ClonePointerToString(login.NameClaimType)
+
+ // Scopes
+ destination.Scopes = genruntime.CloneSliceOfString(login.Scopes)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the app registration for the custom Open ID Connect provider.
+type OpenIdConnectRegistration struct {
+ // ClientCredential: The authentication credentials of the custom Open ID Connect provider.
+ ClientCredential *OpenIdConnectClientCredential `json:"clientCredential,omitempty"`
+
+ // ClientId: The client id of the custom Open ID Connect provider.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // OpenIdConnectConfiguration: The configuration settings of the endpoints used for the custom Open ID Connect provider.
+ OpenIdConnectConfiguration *OpenIdConnectConfig `json:"openIdConnectConfiguration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &OpenIdConnectRegistration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (registration *OpenIdConnectRegistration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if registration == nil {
+ return nil, nil
+ }
+ result := &arm.OpenIdConnectRegistration{}
+
+ // Set property "ClientCredential":
+ if registration.ClientCredential != nil {
+ clientCredential_ARM, err := (*registration.ClientCredential).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ clientCredential := *clientCredential_ARM.(*arm.OpenIdConnectClientCredential)
+ result.ClientCredential = &clientCredential
+ }
+
+ // Set property "ClientId":
+ if registration.ClientId != nil {
+ clientId := *registration.ClientId
+ result.ClientId = &clientId
+ }
+
+ // Set property "OpenIdConnectConfiguration":
+ if registration.OpenIdConnectConfiguration != nil {
+ openIdConnectConfiguration_ARM, err := (*registration.OpenIdConnectConfiguration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ openIdConnectConfiguration := *openIdConnectConfiguration_ARM.(*arm.OpenIdConnectConfig)
+ result.OpenIdConnectConfiguration = &openIdConnectConfiguration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *OpenIdConnectRegistration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.OpenIdConnectRegistration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *OpenIdConnectRegistration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.OpenIdConnectRegistration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.OpenIdConnectRegistration, got %T", armInput)
+ }
+
+ // Set property "ClientCredential":
+ if typedInput.ClientCredential != nil {
+ var clientCredential1 OpenIdConnectClientCredential
+ err := clientCredential1.PopulateFromARM(owner, *typedInput.ClientCredential)
+ if err != nil {
+ return err
+ }
+ clientCredential := clientCredential1
+ registration.ClientCredential = &clientCredential
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // Set property "OpenIdConnectConfiguration":
+ if typedInput.OpenIdConnectConfiguration != nil {
+ var openIdConnectConfiguration1 OpenIdConnectConfig
+ err := openIdConnectConfiguration1.PopulateFromARM(owner, *typedInput.OpenIdConnectConfiguration)
+ if err != nil {
+ return err
+ }
+ openIdConnectConfiguration := openIdConnectConfiguration1
+ registration.OpenIdConnectConfiguration = &openIdConnectConfiguration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_OpenIdConnectRegistration populates our OpenIdConnectRegistration from the provided source OpenIdConnectRegistration
+func (registration *OpenIdConnectRegistration) AssignProperties_From_OpenIdConnectRegistration(source *storage.OpenIdConnectRegistration) error {
+
+ // ClientCredential
+ if source.ClientCredential != nil {
+ var clientCredential OpenIdConnectClientCredential
+ err := clientCredential.AssignProperties_From_OpenIdConnectClientCredential(source.ClientCredential)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_OpenIdConnectClientCredential() to populate field ClientCredential")
+ }
+ registration.ClientCredential = &clientCredential
+ } else {
+ registration.ClientCredential = nil
+ }
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // OpenIdConnectConfiguration
+ if source.OpenIdConnectConfiguration != nil {
+ var openIdConnectConfiguration OpenIdConnectConfig
+ err := openIdConnectConfiguration.AssignProperties_From_OpenIdConnectConfig(source.OpenIdConnectConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_OpenIdConnectConfig() to populate field OpenIdConnectConfiguration")
+ }
+ registration.OpenIdConnectConfiguration = &openIdConnectConfiguration
+ } else {
+ registration.OpenIdConnectConfiguration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_OpenIdConnectRegistration populates the provided destination OpenIdConnectRegistration from our OpenIdConnectRegistration
+func (registration *OpenIdConnectRegistration) AssignProperties_To_OpenIdConnectRegistration(destination *storage.OpenIdConnectRegistration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientCredential
+ if registration.ClientCredential != nil {
+ var clientCredential storage.OpenIdConnectClientCredential
+ err := registration.ClientCredential.AssignProperties_To_OpenIdConnectClientCredential(&clientCredential)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_OpenIdConnectClientCredential() to populate field ClientCredential")
+ }
+ destination.ClientCredential = &clientCredential
+ } else {
+ destination.ClientCredential = nil
+ }
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // OpenIdConnectConfiguration
+ if registration.OpenIdConnectConfiguration != nil {
+ var openIdConnectConfiguration storage.OpenIdConnectConfig
+ err := registration.OpenIdConnectConfiguration.AssignProperties_To_OpenIdConnectConfig(&openIdConnectConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_OpenIdConnectConfig() to populate field OpenIdConnectConfiguration")
+ }
+ destination.OpenIdConnectConfiguration = &openIdConnectConfiguration
+ } else {
+ destination.OpenIdConnectConfiguration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_OpenIdConnectRegistration_STATUS populates our OpenIdConnectRegistration from the provided source OpenIdConnectRegistration_STATUS
+func (registration *OpenIdConnectRegistration) Initialize_From_OpenIdConnectRegistration_STATUS(source *OpenIdConnectRegistration_STATUS) error {
+
+ // ClientCredential
+ if source.ClientCredential != nil {
+ var clientCredential OpenIdConnectClientCredential
+ err := clientCredential.Initialize_From_OpenIdConnectClientCredential_STATUS(source.ClientCredential)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_OpenIdConnectClientCredential_STATUS() to populate field ClientCredential")
+ }
+ registration.ClientCredential = &clientCredential
+ } else {
+ registration.ClientCredential = nil
+ }
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // OpenIdConnectConfiguration
+ if source.OpenIdConnectConfiguration != nil {
+ var openIdConnectConfiguration OpenIdConnectConfig
+ err := openIdConnectConfiguration.Initialize_From_OpenIdConnectConfig_STATUS(source.OpenIdConnectConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_OpenIdConnectConfig_STATUS() to populate field OpenIdConnectConfiguration")
+ }
+ registration.OpenIdConnectConfiguration = &openIdConnectConfiguration
+ } else {
+ registration.OpenIdConnectConfiguration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the app registration for the custom Open ID Connect provider.
+type OpenIdConnectRegistration_STATUS struct {
+ // ClientCredential: The authentication credentials of the custom Open ID Connect provider.
+ ClientCredential *OpenIdConnectClientCredential_STATUS `json:"clientCredential,omitempty"`
+
+ // ClientId: The client id of the custom Open ID Connect provider.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // OpenIdConnectConfiguration: The configuration settings of the endpoints used for the custom Open ID Connect provider.
+ OpenIdConnectConfiguration *OpenIdConnectConfig_STATUS `json:"openIdConnectConfiguration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &OpenIdConnectRegistration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *OpenIdConnectRegistration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.OpenIdConnectRegistration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *OpenIdConnectRegistration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.OpenIdConnectRegistration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.OpenIdConnectRegistration_STATUS, got %T", armInput)
+ }
+
+ // Set property "ClientCredential":
+ if typedInput.ClientCredential != nil {
+ var clientCredential1 OpenIdConnectClientCredential_STATUS
+ err := clientCredential1.PopulateFromARM(owner, *typedInput.ClientCredential)
+ if err != nil {
+ return err
+ }
+ clientCredential := clientCredential1
+ registration.ClientCredential = &clientCredential
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ registration.ClientId = &clientId
+ }
+
+ // Set property "OpenIdConnectConfiguration":
+ if typedInput.OpenIdConnectConfiguration != nil {
+ var openIdConnectConfiguration1 OpenIdConnectConfig_STATUS
+ err := openIdConnectConfiguration1.PopulateFromARM(owner, *typedInput.OpenIdConnectConfiguration)
+ if err != nil {
+ return err
+ }
+ openIdConnectConfiguration := openIdConnectConfiguration1
+ registration.OpenIdConnectConfiguration = &openIdConnectConfiguration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_OpenIdConnectRegistration_STATUS populates our OpenIdConnectRegistration_STATUS from the provided source OpenIdConnectRegistration_STATUS
+func (registration *OpenIdConnectRegistration_STATUS) AssignProperties_From_OpenIdConnectRegistration_STATUS(source *storage.OpenIdConnectRegistration_STATUS) error {
+
+ // ClientCredential
+ if source.ClientCredential != nil {
+ var clientCredential OpenIdConnectClientCredential_STATUS
+ err := clientCredential.AssignProperties_From_OpenIdConnectClientCredential_STATUS(source.ClientCredential)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_OpenIdConnectClientCredential_STATUS() to populate field ClientCredential")
+ }
+ registration.ClientCredential = &clientCredential
+ } else {
+ registration.ClientCredential = nil
+ }
+
+ // ClientId
+ registration.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // OpenIdConnectConfiguration
+ if source.OpenIdConnectConfiguration != nil {
+ var openIdConnectConfiguration OpenIdConnectConfig_STATUS
+ err := openIdConnectConfiguration.AssignProperties_From_OpenIdConnectConfig_STATUS(source.OpenIdConnectConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_OpenIdConnectConfig_STATUS() to populate field OpenIdConnectConfiguration")
+ }
+ registration.OpenIdConnectConfiguration = &openIdConnectConfiguration
+ } else {
+ registration.OpenIdConnectConfiguration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_OpenIdConnectRegistration_STATUS populates the provided destination OpenIdConnectRegistration_STATUS from our OpenIdConnectRegistration_STATUS
+func (registration *OpenIdConnectRegistration_STATUS) AssignProperties_To_OpenIdConnectRegistration_STATUS(destination *storage.OpenIdConnectRegistration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientCredential
+ if registration.ClientCredential != nil {
+ var clientCredential storage.OpenIdConnectClientCredential_STATUS
+ err := registration.ClientCredential.AssignProperties_To_OpenIdConnectClientCredential_STATUS(&clientCredential)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_OpenIdConnectClientCredential_STATUS() to populate field ClientCredential")
+ }
+ destination.ClientCredential = &clientCredential
+ } else {
+ destination.ClientCredential = nil
+ }
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(registration.ClientId)
+
+ // OpenIdConnectConfiguration
+ if registration.OpenIdConnectConfiguration != nil {
+ var openIdConnectConfiguration storage.OpenIdConnectConfig_STATUS
+ err := registration.OpenIdConnectConfiguration.AssignProperties_To_OpenIdConnectConfig_STATUS(&openIdConnectConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_OpenIdConnectConfig_STATUS() to populate field OpenIdConnectConfiguration")
+ }
+ destination.OpenIdConnectConfiguration = &openIdConnectConfiguration
+ } else {
+ destination.OpenIdConnectConfiguration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the app registration for the Twitter provider.
+type TwitterRegistration struct {
+ // ConsumerKey: The OAuth 1.0a consumer key of the Twitter application used for sign-in.
+ // This setting is required for enabling Twitter Sign-In.
+ // Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in
+ ConsumerKey *string `json:"consumerKey,omitempty"`
+
+ // ConsumerSecretSettingName: The app setting name that contains the OAuth 1.0a consumer secret of the Twitter
+ // application used for sign-in.
+ ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &TwitterRegistration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (registration *TwitterRegistration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if registration == nil {
+ return nil, nil
+ }
+ result := &arm.TwitterRegistration{}
+
+ // Set property "ConsumerKey":
+ if registration.ConsumerKey != nil {
+ consumerKey := *registration.ConsumerKey
+ result.ConsumerKey = &consumerKey
+ }
+
+ // Set property "ConsumerSecretSettingName":
+ if registration.ConsumerSecretSettingName != nil {
+ consumerSecretSettingName := *registration.ConsumerSecretSettingName
+ result.ConsumerSecretSettingName = &consumerSecretSettingName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *TwitterRegistration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.TwitterRegistration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *TwitterRegistration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.TwitterRegistration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.TwitterRegistration, got %T", armInput)
+ }
+
+ // Set property "ConsumerKey":
+ if typedInput.ConsumerKey != nil {
+ consumerKey := *typedInput.ConsumerKey
+ registration.ConsumerKey = &consumerKey
+ }
+
+ // Set property "ConsumerSecretSettingName":
+ if typedInput.ConsumerSecretSettingName != nil {
+ consumerSecretSettingName := *typedInput.ConsumerSecretSettingName
+ registration.ConsumerSecretSettingName = &consumerSecretSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_TwitterRegistration populates our TwitterRegistration from the provided source TwitterRegistration
+func (registration *TwitterRegistration) AssignProperties_From_TwitterRegistration(source *storage.TwitterRegistration) error {
+
+ // ConsumerKey
+ registration.ConsumerKey = genruntime.ClonePointerToString(source.ConsumerKey)
+
+ // ConsumerSecretSettingName
+ registration.ConsumerSecretSettingName = genruntime.ClonePointerToString(source.ConsumerSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_TwitterRegistration populates the provided destination TwitterRegistration from our TwitterRegistration
+func (registration *TwitterRegistration) AssignProperties_To_TwitterRegistration(destination *storage.TwitterRegistration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ConsumerKey
+ destination.ConsumerKey = genruntime.ClonePointerToString(registration.ConsumerKey)
+
+ // ConsumerSecretSettingName
+ destination.ConsumerSecretSettingName = genruntime.ClonePointerToString(registration.ConsumerSecretSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_TwitterRegistration_STATUS populates our TwitterRegistration from the provided source TwitterRegistration_STATUS
+func (registration *TwitterRegistration) Initialize_From_TwitterRegistration_STATUS(source *TwitterRegistration_STATUS) error {
+
+ // ConsumerKey
+ registration.ConsumerKey = genruntime.ClonePointerToString(source.ConsumerKey)
+
+ // ConsumerSecretSettingName
+ registration.ConsumerSecretSettingName = genruntime.ClonePointerToString(source.ConsumerSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the app registration for the Twitter provider.
+type TwitterRegistration_STATUS struct {
+ // ConsumerKey: The OAuth 1.0a consumer key of the Twitter application used for sign-in.
+ // This setting is required for enabling Twitter Sign-In.
+ // Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in
+ ConsumerKey *string `json:"consumerKey,omitempty"`
+
+ // ConsumerSecretSettingName: The app setting name that contains the OAuth 1.0a consumer secret of the Twitter
+ // application used for sign-in.
+ ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &TwitterRegistration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (registration *TwitterRegistration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.TwitterRegistration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (registration *TwitterRegistration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.TwitterRegistration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.TwitterRegistration_STATUS, got %T", armInput)
+ }
+
+ // Set property "ConsumerKey":
+ if typedInput.ConsumerKey != nil {
+ consumerKey := *typedInput.ConsumerKey
+ registration.ConsumerKey = &consumerKey
+ }
+
+ // Set property "ConsumerSecretSettingName":
+ if typedInput.ConsumerSecretSettingName != nil {
+ consumerSecretSettingName := *typedInput.ConsumerSecretSettingName
+ registration.ConsumerSecretSettingName = &consumerSecretSettingName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_TwitterRegistration_STATUS populates our TwitterRegistration_STATUS from the provided source TwitterRegistration_STATUS
+func (registration *TwitterRegistration_STATUS) AssignProperties_From_TwitterRegistration_STATUS(source *storage.TwitterRegistration_STATUS) error {
+
+ // ConsumerKey
+ registration.ConsumerKey = genruntime.ClonePointerToString(source.ConsumerKey)
+
+ // ConsumerSecretSettingName
+ registration.ConsumerSecretSettingName = genruntime.ClonePointerToString(source.ConsumerSecretSettingName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_TwitterRegistration_STATUS populates the provided destination TwitterRegistration_STATUS from our TwitterRegistration_STATUS
+func (registration *TwitterRegistration_STATUS) AssignProperties_To_TwitterRegistration_STATUS(destination *storage.TwitterRegistration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ConsumerKey
+ destination.ConsumerKey = genruntime.ClonePointerToString(registration.ConsumerKey)
+
+ // ConsumerSecretSettingName
+ destination.ConsumerSecretSettingName = genruntime.ClonePointerToString(registration.ConsumerSecretSettingName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory default authorization policy.
+type DefaultAuthorizationPolicy struct {
+ // AllowedApplications: The configuration settings of the Azure Active Directory allowed applications.
+ AllowedApplications []string `json:"allowedApplications,omitempty"`
+
+ // AllowedPrincipals: The configuration settings of the Azure Active Directory allowed principals.
+ AllowedPrincipals *AllowedPrincipals `json:"allowedPrincipals,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &DefaultAuthorizationPolicy{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (policy *DefaultAuthorizationPolicy) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if policy == nil {
+ return nil, nil
+ }
+ result := &arm.DefaultAuthorizationPolicy{}
+
+ // Set property "AllowedApplications":
+ for _, item := range policy.AllowedApplications {
+ result.AllowedApplications = append(result.AllowedApplications, item)
+ }
+
+ // Set property "AllowedPrincipals":
+ if policy.AllowedPrincipals != nil {
+ allowedPrincipals_ARM, err := (*policy.AllowedPrincipals).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ allowedPrincipals := *allowedPrincipals_ARM.(*arm.AllowedPrincipals)
+ result.AllowedPrincipals = &allowedPrincipals
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (policy *DefaultAuthorizationPolicy) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.DefaultAuthorizationPolicy{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (policy *DefaultAuthorizationPolicy) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.DefaultAuthorizationPolicy)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.DefaultAuthorizationPolicy, got %T", armInput)
+ }
+
+ // Set property "AllowedApplications":
+ for _, item := range typedInput.AllowedApplications {
+ policy.AllowedApplications = append(policy.AllowedApplications, item)
+ }
+
+ // Set property "AllowedPrincipals":
+ if typedInput.AllowedPrincipals != nil {
+ var allowedPrincipals1 AllowedPrincipals
+ err := allowedPrincipals1.PopulateFromARM(owner, *typedInput.AllowedPrincipals)
+ if err != nil {
+ return err
+ }
+ allowedPrincipals := allowedPrincipals1
+ policy.AllowedPrincipals = &allowedPrincipals
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_DefaultAuthorizationPolicy populates our DefaultAuthorizationPolicy from the provided source DefaultAuthorizationPolicy
+func (policy *DefaultAuthorizationPolicy) AssignProperties_From_DefaultAuthorizationPolicy(source *storage.DefaultAuthorizationPolicy) error {
+
+ // AllowedApplications
+ policy.AllowedApplications = genruntime.CloneSliceOfString(source.AllowedApplications)
+
+ // AllowedPrincipals
+ if source.AllowedPrincipals != nil {
+ var allowedPrincipal AllowedPrincipals
+ err := allowedPrincipal.AssignProperties_From_AllowedPrincipals(source.AllowedPrincipals)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AllowedPrincipals() to populate field AllowedPrincipals")
+ }
+ policy.AllowedPrincipals = &allowedPrincipal
+ } else {
+ policy.AllowedPrincipals = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_DefaultAuthorizationPolicy populates the provided destination DefaultAuthorizationPolicy from our DefaultAuthorizationPolicy
+func (policy *DefaultAuthorizationPolicy) AssignProperties_To_DefaultAuthorizationPolicy(destination *storage.DefaultAuthorizationPolicy) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedApplications
+ destination.AllowedApplications = genruntime.CloneSliceOfString(policy.AllowedApplications)
+
+ // AllowedPrincipals
+ if policy.AllowedPrincipals != nil {
+ var allowedPrincipal storage.AllowedPrincipals
+ err := policy.AllowedPrincipals.AssignProperties_To_AllowedPrincipals(&allowedPrincipal)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AllowedPrincipals() to populate field AllowedPrincipals")
+ }
+ destination.AllowedPrincipals = &allowedPrincipal
+ } else {
+ destination.AllowedPrincipals = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_DefaultAuthorizationPolicy_STATUS populates our DefaultAuthorizationPolicy from the provided source DefaultAuthorizationPolicy_STATUS
+func (policy *DefaultAuthorizationPolicy) Initialize_From_DefaultAuthorizationPolicy_STATUS(source *DefaultAuthorizationPolicy_STATUS) error {
+
+ // AllowedApplications
+ policy.AllowedApplications = genruntime.CloneSliceOfString(source.AllowedApplications)
+
+ // AllowedPrincipals
+ if source.AllowedPrincipals != nil {
+ var allowedPrincipal AllowedPrincipals
+ err := allowedPrincipal.Initialize_From_AllowedPrincipals_STATUS(source.AllowedPrincipals)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AllowedPrincipals_STATUS() to populate field AllowedPrincipals")
+ }
+ policy.AllowedPrincipals = &allowedPrincipal
+ } else {
+ policy.AllowedPrincipals = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory default authorization policy.
+type DefaultAuthorizationPolicy_STATUS struct {
+ // AllowedApplications: The configuration settings of the Azure Active Directory allowed applications.
+ AllowedApplications []string `json:"allowedApplications,omitempty"`
+
+ // AllowedPrincipals: The configuration settings of the Azure Active Directory allowed principals.
+ AllowedPrincipals *AllowedPrincipals_STATUS `json:"allowedPrincipals,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &DefaultAuthorizationPolicy_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (policy *DefaultAuthorizationPolicy_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.DefaultAuthorizationPolicy_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (policy *DefaultAuthorizationPolicy_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.DefaultAuthorizationPolicy_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.DefaultAuthorizationPolicy_STATUS, got %T", armInput)
+ }
+
+ // Set property "AllowedApplications":
+ for _, item := range typedInput.AllowedApplications {
+ policy.AllowedApplications = append(policy.AllowedApplications, item)
+ }
+
+ // Set property "AllowedPrincipals":
+ if typedInput.AllowedPrincipals != nil {
+ var allowedPrincipals1 AllowedPrincipals_STATUS
+ err := allowedPrincipals1.PopulateFromARM(owner, *typedInput.AllowedPrincipals)
+ if err != nil {
+ return err
+ }
+ allowedPrincipals := allowedPrincipals1
+ policy.AllowedPrincipals = &allowedPrincipals
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_DefaultAuthorizationPolicy_STATUS populates our DefaultAuthorizationPolicy_STATUS from the provided source DefaultAuthorizationPolicy_STATUS
+func (policy *DefaultAuthorizationPolicy_STATUS) AssignProperties_From_DefaultAuthorizationPolicy_STATUS(source *storage.DefaultAuthorizationPolicy_STATUS) error {
+
+ // AllowedApplications
+ policy.AllowedApplications = genruntime.CloneSliceOfString(source.AllowedApplications)
+
+ // AllowedPrincipals
+ if source.AllowedPrincipals != nil {
+ var allowedPrincipal AllowedPrincipals_STATUS
+ err := allowedPrincipal.AssignProperties_From_AllowedPrincipals_STATUS(source.AllowedPrincipals)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AllowedPrincipals_STATUS() to populate field AllowedPrincipals")
+ }
+ policy.AllowedPrincipals = &allowedPrincipal
+ } else {
+ policy.AllowedPrincipals = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_DefaultAuthorizationPolicy_STATUS populates the provided destination DefaultAuthorizationPolicy_STATUS from our DefaultAuthorizationPolicy_STATUS
+func (policy *DefaultAuthorizationPolicy_STATUS) AssignProperties_To_DefaultAuthorizationPolicy_STATUS(destination *storage.DefaultAuthorizationPolicy_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedApplications
+ destination.AllowedApplications = genruntime.CloneSliceOfString(policy.AllowedApplications)
+
+ // AllowedPrincipals
+ if policy.AllowedPrincipals != nil {
+ var allowedPrincipal storage.AllowedPrincipals_STATUS
+ err := policy.AllowedPrincipals.AssignProperties_To_AllowedPrincipals_STATUS(&allowedPrincipal)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AllowedPrincipals_STATUS() to populate field AllowedPrincipals")
+ }
+ destination.AllowedPrincipals = &allowedPrincipal
+ } else {
+ destination.AllowedPrincipals = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the checks that should be made while validating the JWT Claims.
+type JwtClaimChecks struct {
+ // AllowedClientApplications: The list of the allowed client applications.
+ AllowedClientApplications []string `json:"allowedClientApplications,omitempty"`
+
+ // AllowedGroups: The list of the allowed groups.
+ AllowedGroups []string `json:"allowedGroups,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &JwtClaimChecks{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (checks *JwtClaimChecks) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if checks == nil {
+ return nil, nil
+ }
+ result := &arm.JwtClaimChecks{}
+
+ // Set property "AllowedClientApplications":
+ for _, item := range checks.AllowedClientApplications {
+ result.AllowedClientApplications = append(result.AllowedClientApplications, item)
+ }
+
+ // Set property "AllowedGroups":
+ for _, item := range checks.AllowedGroups {
+ result.AllowedGroups = append(result.AllowedGroups, item)
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (checks *JwtClaimChecks) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JwtClaimChecks{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (checks *JwtClaimChecks) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JwtClaimChecks)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JwtClaimChecks, got %T", armInput)
+ }
+
+ // Set property "AllowedClientApplications":
+ for _, item := range typedInput.AllowedClientApplications {
+ checks.AllowedClientApplications = append(checks.AllowedClientApplications, item)
+ }
+
+ // Set property "AllowedGroups":
+ for _, item := range typedInput.AllowedGroups {
+ checks.AllowedGroups = append(checks.AllowedGroups, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JwtClaimChecks populates our JwtClaimChecks from the provided source JwtClaimChecks
+func (checks *JwtClaimChecks) AssignProperties_From_JwtClaimChecks(source *storage.JwtClaimChecks) error {
+
+ // AllowedClientApplications
+ checks.AllowedClientApplications = genruntime.CloneSliceOfString(source.AllowedClientApplications)
+
+ // AllowedGroups
+ checks.AllowedGroups = genruntime.CloneSliceOfString(source.AllowedGroups)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JwtClaimChecks populates the provided destination JwtClaimChecks from our JwtClaimChecks
+func (checks *JwtClaimChecks) AssignProperties_To_JwtClaimChecks(destination *storage.JwtClaimChecks) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedClientApplications
+ destination.AllowedClientApplications = genruntime.CloneSliceOfString(checks.AllowedClientApplications)
+
+ // AllowedGroups
+ destination.AllowedGroups = genruntime.CloneSliceOfString(checks.AllowedGroups)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_JwtClaimChecks_STATUS populates our JwtClaimChecks from the provided source JwtClaimChecks_STATUS
+func (checks *JwtClaimChecks) Initialize_From_JwtClaimChecks_STATUS(source *JwtClaimChecks_STATUS) error {
+
+ // AllowedClientApplications
+ checks.AllowedClientApplications = genruntime.CloneSliceOfString(source.AllowedClientApplications)
+
+ // AllowedGroups
+ checks.AllowedGroups = genruntime.CloneSliceOfString(source.AllowedGroups)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the checks that should be made while validating the JWT Claims.
+type JwtClaimChecks_STATUS struct {
+ // AllowedClientApplications: The list of the allowed client applications.
+ AllowedClientApplications []string `json:"allowedClientApplications,omitempty"`
+
+ // AllowedGroups: The list of the allowed groups.
+ AllowedGroups []string `json:"allowedGroups,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &JwtClaimChecks_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (checks *JwtClaimChecks_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JwtClaimChecks_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (checks *JwtClaimChecks_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JwtClaimChecks_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JwtClaimChecks_STATUS, got %T", armInput)
+ }
+
+ // Set property "AllowedClientApplications":
+ for _, item := range typedInput.AllowedClientApplications {
+ checks.AllowedClientApplications = append(checks.AllowedClientApplications, item)
+ }
+
+ // Set property "AllowedGroups":
+ for _, item := range typedInput.AllowedGroups {
+ checks.AllowedGroups = append(checks.AllowedGroups, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JwtClaimChecks_STATUS populates our JwtClaimChecks_STATUS from the provided source JwtClaimChecks_STATUS
+func (checks *JwtClaimChecks_STATUS) AssignProperties_From_JwtClaimChecks_STATUS(source *storage.JwtClaimChecks_STATUS) error {
+
+ // AllowedClientApplications
+ checks.AllowedClientApplications = genruntime.CloneSliceOfString(source.AllowedClientApplications)
+
+ // AllowedGroups
+ checks.AllowedGroups = genruntime.CloneSliceOfString(source.AllowedGroups)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JwtClaimChecks_STATUS populates the provided destination JwtClaimChecks_STATUS from our JwtClaimChecks_STATUS
+func (checks *JwtClaimChecks_STATUS) AssignProperties_To_JwtClaimChecks_STATUS(destination *storage.JwtClaimChecks_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowedClientApplications
+ destination.AllowedClientApplications = genruntime.CloneSliceOfString(checks.AllowedClientApplications)
+
+ // AllowedGroups
+ destination.AllowedGroups = genruntime.CloneSliceOfString(checks.AllowedGroups)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The authentication client credentials of the custom Open ID Connect provider.
+type OpenIdConnectClientCredential struct {
+ // ClientSecretSettingName: The app setting that contains the client secret for the custom Open ID Connect provider.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+
+ // Method: The method that should be used to authenticate the user.
+ Method *OpenIdConnectClientCredential_Method `json:"method,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &OpenIdConnectClientCredential{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (credential *OpenIdConnectClientCredential) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if credential == nil {
+ return nil, nil
+ }
+ result := &arm.OpenIdConnectClientCredential{}
+
+ // Set property "ClientSecretSettingName":
+ if credential.ClientSecretSettingName != nil {
+ clientSecretSettingName := *credential.ClientSecretSettingName
+ result.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // Set property "Method":
+ if credential.Method != nil {
+ var temp string
+ temp = string(*credential.Method)
+ method := arm.OpenIdConnectClientCredential_Method(temp)
+ result.Method = &method
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (credential *OpenIdConnectClientCredential) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.OpenIdConnectClientCredential{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (credential *OpenIdConnectClientCredential) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.OpenIdConnectClientCredential)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.OpenIdConnectClientCredential, got %T", armInput)
+ }
+
+ // Set property "ClientSecretSettingName":
+ if typedInput.ClientSecretSettingName != nil {
+ clientSecretSettingName := *typedInput.ClientSecretSettingName
+ credential.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // Set property "Method":
+ if typedInput.Method != nil {
+ var temp string
+ temp = string(*typedInput.Method)
+ method := OpenIdConnectClientCredential_Method(temp)
+ credential.Method = &method
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_OpenIdConnectClientCredential populates our OpenIdConnectClientCredential from the provided source OpenIdConnectClientCredential
+func (credential *OpenIdConnectClientCredential) AssignProperties_From_OpenIdConnectClientCredential(source *storage.OpenIdConnectClientCredential) error {
+
+ // ClientSecretSettingName
+ credential.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // Method
+ if source.Method != nil {
+ method := *source.Method
+ methodTemp := genruntime.ToEnum(method, openIdConnectClientCredential_Method_Values)
+ credential.Method = &methodTemp
+ } else {
+ credential.Method = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_OpenIdConnectClientCredential populates the provided destination OpenIdConnectClientCredential from our OpenIdConnectClientCredential
+func (credential *OpenIdConnectClientCredential) AssignProperties_To_OpenIdConnectClientCredential(destination *storage.OpenIdConnectClientCredential) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientSecretSettingName
+ destination.ClientSecretSettingName = genruntime.ClonePointerToString(credential.ClientSecretSettingName)
+
+ // Method
+ if credential.Method != nil {
+ method := string(*credential.Method)
+ destination.Method = &method
+ } else {
+ destination.Method = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_OpenIdConnectClientCredential_STATUS populates our OpenIdConnectClientCredential from the provided source OpenIdConnectClientCredential_STATUS
+func (credential *OpenIdConnectClientCredential) Initialize_From_OpenIdConnectClientCredential_STATUS(source *OpenIdConnectClientCredential_STATUS) error {
+
+ // ClientSecretSettingName
+ credential.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // Method
+ if source.Method != nil {
+ method := genruntime.ToEnum(string(*source.Method), openIdConnectClientCredential_Method_Values)
+ credential.Method = &method
+ } else {
+ credential.Method = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The authentication client credentials of the custom Open ID Connect provider.
+type OpenIdConnectClientCredential_STATUS struct {
+ // ClientSecretSettingName: The app setting that contains the client secret for the custom Open ID Connect provider.
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+
+ // Method: The method that should be used to authenticate the user.
+ Method *OpenIdConnectClientCredential_Method_STATUS `json:"method,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &OpenIdConnectClientCredential_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (credential *OpenIdConnectClientCredential_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.OpenIdConnectClientCredential_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (credential *OpenIdConnectClientCredential_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.OpenIdConnectClientCredential_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.OpenIdConnectClientCredential_STATUS, got %T", armInput)
+ }
+
+ // Set property "ClientSecretSettingName":
+ if typedInput.ClientSecretSettingName != nil {
+ clientSecretSettingName := *typedInput.ClientSecretSettingName
+ credential.ClientSecretSettingName = &clientSecretSettingName
+ }
+
+ // Set property "Method":
+ if typedInput.Method != nil {
+ var temp string
+ temp = string(*typedInput.Method)
+ method := OpenIdConnectClientCredential_Method_STATUS(temp)
+ credential.Method = &method
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_OpenIdConnectClientCredential_STATUS populates our OpenIdConnectClientCredential_STATUS from the provided source OpenIdConnectClientCredential_STATUS
+func (credential *OpenIdConnectClientCredential_STATUS) AssignProperties_From_OpenIdConnectClientCredential_STATUS(source *storage.OpenIdConnectClientCredential_STATUS) error {
+
+ // ClientSecretSettingName
+ credential.ClientSecretSettingName = genruntime.ClonePointerToString(source.ClientSecretSettingName)
+
+ // Method
+ if source.Method != nil {
+ method := *source.Method
+ methodTemp := genruntime.ToEnum(method, openIdConnectClientCredential_Method_STATUS_Values)
+ credential.Method = &methodTemp
+ } else {
+ credential.Method = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_OpenIdConnectClientCredential_STATUS populates the provided destination OpenIdConnectClientCredential_STATUS from our OpenIdConnectClientCredential_STATUS
+func (credential *OpenIdConnectClientCredential_STATUS) AssignProperties_To_OpenIdConnectClientCredential_STATUS(destination *storage.OpenIdConnectClientCredential_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientSecretSettingName
+ destination.ClientSecretSettingName = genruntime.ClonePointerToString(credential.ClientSecretSettingName)
+
+ // Method
+ if credential.Method != nil {
+ method := string(*credential.Method)
+ destination.Method = &method
+ } else {
+ destination.Method = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the endpoints used for the custom Open ID Connect provider.
+type OpenIdConnectConfig struct {
+ // AuthorizationEndpoint: The endpoint to be used to make an authorization request.
+ AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty"`
+
+ // CertificationUri: The endpoint that provides the keys necessary to validate the token.
+ CertificationUri *string `json:"certificationUri,omitempty"`
+
+ // Issuer: The endpoint that issues the token.
+ Issuer *string `json:"issuer,omitempty"`
+
+ // TokenEndpoint: The endpoint to be used to request a token.
+ TokenEndpoint *string `json:"tokenEndpoint,omitempty"`
+
+ // WellKnownOpenIdConfiguration: The endpoint that contains all the configuration endpoints for the provider.
+ WellKnownOpenIdConfiguration *string `json:"wellKnownOpenIdConfiguration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &OpenIdConnectConfig{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (config *OpenIdConnectConfig) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if config == nil {
+ return nil, nil
+ }
+ result := &arm.OpenIdConnectConfig{}
+
+ // Set property "AuthorizationEndpoint":
+ if config.AuthorizationEndpoint != nil {
+ authorizationEndpoint := *config.AuthorizationEndpoint
+ result.AuthorizationEndpoint = &authorizationEndpoint
+ }
+
+ // Set property "CertificationUri":
+ if config.CertificationUri != nil {
+ certificationUri := *config.CertificationUri
+ result.CertificationUri = &certificationUri
+ }
+
+ // Set property "Issuer":
+ if config.Issuer != nil {
+ issuer := *config.Issuer
+ result.Issuer = &issuer
+ }
+
+ // Set property "TokenEndpoint":
+ if config.TokenEndpoint != nil {
+ tokenEndpoint := *config.TokenEndpoint
+ result.TokenEndpoint = &tokenEndpoint
+ }
+
+ // Set property "WellKnownOpenIdConfiguration":
+ if config.WellKnownOpenIdConfiguration != nil {
+ wellKnownOpenIdConfiguration := *config.WellKnownOpenIdConfiguration
+ result.WellKnownOpenIdConfiguration = &wellKnownOpenIdConfiguration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *OpenIdConnectConfig) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.OpenIdConnectConfig{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *OpenIdConnectConfig) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.OpenIdConnectConfig)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.OpenIdConnectConfig, got %T", armInput)
+ }
+
+ // Set property "AuthorizationEndpoint":
+ if typedInput.AuthorizationEndpoint != nil {
+ authorizationEndpoint := *typedInput.AuthorizationEndpoint
+ config.AuthorizationEndpoint = &authorizationEndpoint
+ }
+
+ // Set property "CertificationUri":
+ if typedInput.CertificationUri != nil {
+ certificationUri := *typedInput.CertificationUri
+ config.CertificationUri = &certificationUri
+ }
+
+ // Set property "Issuer":
+ if typedInput.Issuer != nil {
+ issuer := *typedInput.Issuer
+ config.Issuer = &issuer
+ }
+
+ // Set property "TokenEndpoint":
+ if typedInput.TokenEndpoint != nil {
+ tokenEndpoint := *typedInput.TokenEndpoint
+ config.TokenEndpoint = &tokenEndpoint
+ }
+
+ // Set property "WellKnownOpenIdConfiguration":
+ if typedInput.WellKnownOpenIdConfiguration != nil {
+ wellKnownOpenIdConfiguration := *typedInput.WellKnownOpenIdConfiguration
+ config.WellKnownOpenIdConfiguration = &wellKnownOpenIdConfiguration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_OpenIdConnectConfig populates our OpenIdConnectConfig from the provided source OpenIdConnectConfig
+func (config *OpenIdConnectConfig) AssignProperties_From_OpenIdConnectConfig(source *storage.OpenIdConnectConfig) error {
+
+ // AuthorizationEndpoint
+ config.AuthorizationEndpoint = genruntime.ClonePointerToString(source.AuthorizationEndpoint)
+
+ // CertificationUri
+ config.CertificationUri = genruntime.ClonePointerToString(source.CertificationUri)
+
+ // Issuer
+ config.Issuer = genruntime.ClonePointerToString(source.Issuer)
+
+ // TokenEndpoint
+ config.TokenEndpoint = genruntime.ClonePointerToString(source.TokenEndpoint)
+
+ // WellKnownOpenIdConfiguration
+ config.WellKnownOpenIdConfiguration = genruntime.ClonePointerToString(source.WellKnownOpenIdConfiguration)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_OpenIdConnectConfig populates the provided destination OpenIdConnectConfig from our OpenIdConnectConfig
+func (config *OpenIdConnectConfig) AssignProperties_To_OpenIdConnectConfig(destination *storage.OpenIdConnectConfig) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AuthorizationEndpoint
+ destination.AuthorizationEndpoint = genruntime.ClonePointerToString(config.AuthorizationEndpoint)
+
+ // CertificationUri
+ destination.CertificationUri = genruntime.ClonePointerToString(config.CertificationUri)
+
+ // Issuer
+ destination.Issuer = genruntime.ClonePointerToString(config.Issuer)
+
+ // TokenEndpoint
+ destination.TokenEndpoint = genruntime.ClonePointerToString(config.TokenEndpoint)
+
+ // WellKnownOpenIdConfiguration
+ destination.WellKnownOpenIdConfiguration = genruntime.ClonePointerToString(config.WellKnownOpenIdConfiguration)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_OpenIdConnectConfig_STATUS populates our OpenIdConnectConfig from the provided source OpenIdConnectConfig_STATUS
+func (config *OpenIdConnectConfig) Initialize_From_OpenIdConnectConfig_STATUS(source *OpenIdConnectConfig_STATUS) error {
+
+ // AuthorizationEndpoint
+ config.AuthorizationEndpoint = genruntime.ClonePointerToString(source.AuthorizationEndpoint)
+
+ // CertificationUri
+ config.CertificationUri = genruntime.ClonePointerToString(source.CertificationUri)
+
+ // Issuer
+ config.Issuer = genruntime.ClonePointerToString(source.Issuer)
+
+ // TokenEndpoint
+ config.TokenEndpoint = genruntime.ClonePointerToString(source.TokenEndpoint)
+
+ // WellKnownOpenIdConfiguration
+ config.WellKnownOpenIdConfiguration = genruntime.ClonePointerToString(source.WellKnownOpenIdConfiguration)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the endpoints used for the custom Open ID Connect provider.
+type OpenIdConnectConfig_STATUS struct {
+ // AuthorizationEndpoint: The endpoint to be used to make an authorization request.
+ AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty"`
+
+ // CertificationUri: The endpoint that provides the keys necessary to validate the token.
+ CertificationUri *string `json:"certificationUri,omitempty"`
+
+ // Issuer: The endpoint that issues the token.
+ Issuer *string `json:"issuer,omitempty"`
+
+ // TokenEndpoint: The endpoint to be used to request a token.
+ TokenEndpoint *string `json:"tokenEndpoint,omitempty"`
+
+ // WellKnownOpenIdConfiguration: The endpoint that contains all the configuration endpoints for the provider.
+ WellKnownOpenIdConfiguration *string `json:"wellKnownOpenIdConfiguration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &OpenIdConnectConfig_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *OpenIdConnectConfig_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.OpenIdConnectConfig_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *OpenIdConnectConfig_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.OpenIdConnectConfig_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.OpenIdConnectConfig_STATUS, got %T", armInput)
+ }
+
+ // Set property "AuthorizationEndpoint":
+ if typedInput.AuthorizationEndpoint != nil {
+ authorizationEndpoint := *typedInput.AuthorizationEndpoint
+ config.AuthorizationEndpoint = &authorizationEndpoint
+ }
+
+ // Set property "CertificationUri":
+ if typedInput.CertificationUri != nil {
+ certificationUri := *typedInput.CertificationUri
+ config.CertificationUri = &certificationUri
+ }
+
+ // Set property "Issuer":
+ if typedInput.Issuer != nil {
+ issuer := *typedInput.Issuer
+ config.Issuer = &issuer
+ }
+
+ // Set property "TokenEndpoint":
+ if typedInput.TokenEndpoint != nil {
+ tokenEndpoint := *typedInput.TokenEndpoint
+ config.TokenEndpoint = &tokenEndpoint
+ }
+
+ // Set property "WellKnownOpenIdConfiguration":
+ if typedInput.WellKnownOpenIdConfiguration != nil {
+ wellKnownOpenIdConfiguration := *typedInput.WellKnownOpenIdConfiguration
+ config.WellKnownOpenIdConfiguration = &wellKnownOpenIdConfiguration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_OpenIdConnectConfig_STATUS populates our OpenIdConnectConfig_STATUS from the provided source OpenIdConnectConfig_STATUS
+func (config *OpenIdConnectConfig_STATUS) AssignProperties_From_OpenIdConnectConfig_STATUS(source *storage.OpenIdConnectConfig_STATUS) error {
+
+ // AuthorizationEndpoint
+ config.AuthorizationEndpoint = genruntime.ClonePointerToString(source.AuthorizationEndpoint)
+
+ // CertificationUri
+ config.CertificationUri = genruntime.ClonePointerToString(source.CertificationUri)
+
+ // Issuer
+ config.Issuer = genruntime.ClonePointerToString(source.Issuer)
+
+ // TokenEndpoint
+ config.TokenEndpoint = genruntime.ClonePointerToString(source.TokenEndpoint)
+
+ // WellKnownOpenIdConfiguration
+ config.WellKnownOpenIdConfiguration = genruntime.ClonePointerToString(source.WellKnownOpenIdConfiguration)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_OpenIdConnectConfig_STATUS populates the provided destination OpenIdConnectConfig_STATUS from our OpenIdConnectConfig_STATUS
+func (config *OpenIdConnectConfig_STATUS) AssignProperties_To_OpenIdConnectConfig_STATUS(destination *storage.OpenIdConnectConfig_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AuthorizationEndpoint
+ destination.AuthorizationEndpoint = genruntime.ClonePointerToString(config.AuthorizationEndpoint)
+
+ // CertificationUri
+ destination.CertificationUri = genruntime.ClonePointerToString(config.CertificationUri)
+
+ // Issuer
+ destination.Issuer = genruntime.ClonePointerToString(config.Issuer)
+
+ // TokenEndpoint
+ destination.TokenEndpoint = genruntime.ClonePointerToString(config.TokenEndpoint)
+
+ // WellKnownOpenIdConfiguration
+ destination.WellKnownOpenIdConfiguration = genruntime.ClonePointerToString(config.WellKnownOpenIdConfiguration)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory allowed principals.
+type AllowedPrincipals struct {
+ // Groups: The list of the allowed groups.
+ Groups []string `json:"groups,omitempty"`
+
+ // Identities: The list of the allowed identities.
+ Identities []string `json:"identities,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AllowedPrincipals{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (principals *AllowedPrincipals) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if principals == nil {
+ return nil, nil
+ }
+ result := &arm.AllowedPrincipals{}
+
+ // Set property "Groups":
+ for _, item := range principals.Groups {
+ result.Groups = append(result.Groups, item)
+ }
+
+ // Set property "Identities":
+ for _, item := range principals.Identities {
+ result.Identities = append(result.Identities, item)
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (principals *AllowedPrincipals) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AllowedPrincipals{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (principals *AllowedPrincipals) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AllowedPrincipals)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AllowedPrincipals, got %T", armInput)
+ }
+
+ // Set property "Groups":
+ for _, item := range typedInput.Groups {
+ principals.Groups = append(principals.Groups, item)
+ }
+
+ // Set property "Identities":
+ for _, item := range typedInput.Identities {
+ principals.Identities = append(principals.Identities, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AllowedPrincipals populates our AllowedPrincipals from the provided source AllowedPrincipals
+func (principals *AllowedPrincipals) AssignProperties_From_AllowedPrincipals(source *storage.AllowedPrincipals) error {
+
+ // Groups
+ principals.Groups = genruntime.CloneSliceOfString(source.Groups)
+
+ // Identities
+ principals.Identities = genruntime.CloneSliceOfString(source.Identities)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AllowedPrincipals populates the provided destination AllowedPrincipals from our AllowedPrincipals
+func (principals *AllowedPrincipals) AssignProperties_To_AllowedPrincipals(destination *storage.AllowedPrincipals) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Groups
+ destination.Groups = genruntime.CloneSliceOfString(principals.Groups)
+
+ // Identities
+ destination.Identities = genruntime.CloneSliceOfString(principals.Identities)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AllowedPrincipals_STATUS populates our AllowedPrincipals from the provided source AllowedPrincipals_STATUS
+func (principals *AllowedPrincipals) Initialize_From_AllowedPrincipals_STATUS(source *AllowedPrincipals_STATUS) error {
+
+ // Groups
+ principals.Groups = genruntime.CloneSliceOfString(source.Groups)
+
+ // Identities
+ principals.Identities = genruntime.CloneSliceOfString(source.Identities)
+
+ // No error
+ return nil
+}
+
+// The configuration settings of the Azure Active Directory allowed principals.
+type AllowedPrincipals_STATUS struct {
+ // Groups: The list of the allowed groups.
+ Groups []string `json:"groups,omitempty"`
+
+ // Identities: The list of the allowed identities.
+ Identities []string `json:"identities,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AllowedPrincipals_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (principals *AllowedPrincipals_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AllowedPrincipals_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (principals *AllowedPrincipals_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AllowedPrincipals_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AllowedPrincipals_STATUS, got %T", armInput)
+ }
+
+ // Set property "Groups":
+ for _, item := range typedInput.Groups {
+ principals.Groups = append(principals.Groups, item)
+ }
+
+ // Set property "Identities":
+ for _, item := range typedInput.Identities {
+ principals.Identities = append(principals.Identities, item)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AllowedPrincipals_STATUS populates our AllowedPrincipals_STATUS from the provided source AllowedPrincipals_STATUS
+func (principals *AllowedPrincipals_STATUS) AssignProperties_From_AllowedPrincipals_STATUS(source *storage.AllowedPrincipals_STATUS) error {
+
+ // Groups
+ principals.Groups = genruntime.CloneSliceOfString(source.Groups)
+
+ // Identities
+ principals.Identities = genruntime.CloneSliceOfString(source.Identities)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AllowedPrincipals_STATUS populates the provided destination AllowedPrincipals_STATUS from our AllowedPrincipals_STATUS
+func (principals *AllowedPrincipals_STATUS) AssignProperties_To_AllowedPrincipals_STATUS(destination *storage.AllowedPrincipals_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Groups
+ destination.Groups = genruntime.CloneSliceOfString(principals.Groups)
+
+ // Identities
+ destination.Identities = genruntime.CloneSliceOfString(principals.Identities)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"ClientSecretPost"}
+type OpenIdConnectClientCredential_Method string
+
+const OpenIdConnectClientCredential_Method_ClientSecretPost = OpenIdConnectClientCredential_Method("ClientSecretPost")
+
+// Mapping from string to OpenIdConnectClientCredential_Method
+var openIdConnectClientCredential_Method_Values = map[string]OpenIdConnectClientCredential_Method{
+ "clientsecretpost": OpenIdConnectClientCredential_Method_ClientSecretPost,
+}
+
+type OpenIdConnectClientCredential_Method_STATUS string
+
+const OpenIdConnectClientCredential_Method_STATUS_ClientSecretPost = OpenIdConnectClientCredential_Method_STATUS("ClientSecretPost")
+
+// Mapping from string to OpenIdConnectClientCredential_Method_STATUS
+var openIdConnectClientCredential_Method_STATUS_Values = map[string]OpenIdConnectClientCredential_Method_STATUS{
+ "clientsecretpost": OpenIdConnectClientCredential_Method_STATUS_ClientSecretPost,
+}
+
+func init() {
+ SchemeBuilder.Register(&AuthConfig{}, &AuthConfigList{})
+}
diff --git a/v2/api/app/v1api20240301/auth_config_types_gen_test.go b/v2/api/app/v1api20240301/auth_config_types_gen_test.go
new file mode 100644
index 00000000000..8ade51539a8
--- /dev/null
+++ b/v2/api/app/v1api20240301/auth_config_types_gen_test.go
@@ -0,0 +1,8922 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package v1api20240301
+
+import (
+ "encoding/json"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/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_AllowedAudiencesValidation_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AllowedAudiencesValidation to AllowedAudiencesValidation via AssignProperties_To_AllowedAudiencesValidation & AssignProperties_From_AllowedAudiencesValidation returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAllowedAudiencesValidation, AllowedAudiencesValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAllowedAudiencesValidation tests if a specific instance of AllowedAudiencesValidation can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAllowedAudiencesValidation(subject AllowedAudiencesValidation) 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.AllowedAudiencesValidation
+ err := copied.AssignProperties_To_AllowedAudiencesValidation(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AllowedAudiencesValidation
+ err = actual.AssignProperties_From_AllowedAudiencesValidation(&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_AllowedAudiencesValidation_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 AllowedAudiencesValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedAudiencesValidation, AllowedAudiencesValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedAudiencesValidation runs a test to see if a specific instance of AllowedAudiencesValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedAudiencesValidation(subject AllowedAudiencesValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedAudiencesValidation
+ 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 AllowedAudiencesValidation instances for property testing - lazily instantiated by
+// AllowedAudiencesValidationGenerator()
+var allowedAudiencesValidationGenerator gopter.Gen
+
+// AllowedAudiencesValidationGenerator returns a generator of AllowedAudiencesValidation instances for property testing.
+func AllowedAudiencesValidationGenerator() gopter.Gen {
+ if allowedAudiencesValidationGenerator != nil {
+ return allowedAudiencesValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedAudiencesValidation(generators)
+ allowedAudiencesValidationGenerator = gen.Struct(reflect.TypeOf(AllowedAudiencesValidation{}), generators)
+
+ return allowedAudiencesValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedAudiencesValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedAudiencesValidation(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AllowedAudiencesValidation_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AllowedAudiencesValidation_STATUS to AllowedAudiencesValidation_STATUS via AssignProperties_To_AllowedAudiencesValidation_STATUS & AssignProperties_From_AllowedAudiencesValidation_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAllowedAudiencesValidation_STATUS, AllowedAudiencesValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAllowedAudiencesValidation_STATUS tests if a specific instance of AllowedAudiencesValidation_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAllowedAudiencesValidation_STATUS(subject AllowedAudiencesValidation_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.AllowedAudiencesValidation_STATUS
+ err := copied.AssignProperties_To_AllowedAudiencesValidation_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AllowedAudiencesValidation_STATUS
+ err = actual.AssignProperties_From_AllowedAudiencesValidation_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_AllowedAudiencesValidation_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 AllowedAudiencesValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedAudiencesValidation_STATUS, AllowedAudiencesValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedAudiencesValidation_STATUS runs a test to see if a specific instance of AllowedAudiencesValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedAudiencesValidation_STATUS(subject AllowedAudiencesValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedAudiencesValidation_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 AllowedAudiencesValidation_STATUS instances for property testing - lazily instantiated by
+// AllowedAudiencesValidation_STATUSGenerator()
+var allowedAudiencesValidation_STATUSGenerator gopter.Gen
+
+// AllowedAudiencesValidation_STATUSGenerator returns a generator of AllowedAudiencesValidation_STATUS instances for property testing.
+func AllowedAudiencesValidation_STATUSGenerator() gopter.Gen {
+ if allowedAudiencesValidation_STATUSGenerator != nil {
+ return allowedAudiencesValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS(generators)
+ allowedAudiencesValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AllowedAudiencesValidation_STATUS{}), generators)
+
+ return allowedAudiencesValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AllowedPrincipals_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AllowedPrincipals to AllowedPrincipals via AssignProperties_To_AllowedPrincipals & AssignProperties_From_AllowedPrincipals returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAllowedPrincipals, AllowedPrincipalsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAllowedPrincipals tests if a specific instance of AllowedPrincipals can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAllowedPrincipals(subject AllowedPrincipals) 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.AllowedPrincipals
+ err := copied.AssignProperties_To_AllowedPrincipals(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AllowedPrincipals
+ err = actual.AssignProperties_From_AllowedPrincipals(&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_AllowedPrincipals_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 AllowedPrincipals via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedPrincipals, AllowedPrincipalsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedPrincipals runs a test to see if a specific instance of AllowedPrincipals round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedPrincipals(subject AllowedPrincipals) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedPrincipals
+ 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 AllowedPrincipals instances for property testing - lazily instantiated by AllowedPrincipalsGenerator()
+var allowedPrincipalsGenerator gopter.Gen
+
+// AllowedPrincipalsGenerator returns a generator of AllowedPrincipals instances for property testing.
+func AllowedPrincipalsGenerator() gopter.Gen {
+ if allowedPrincipalsGenerator != nil {
+ return allowedPrincipalsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedPrincipals(generators)
+ allowedPrincipalsGenerator = gen.Struct(reflect.TypeOf(AllowedPrincipals{}), generators)
+
+ return allowedPrincipalsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedPrincipals is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedPrincipals(gens map[string]gopter.Gen) {
+ gens["Groups"] = gen.SliceOf(gen.AlphaString())
+ gens["Identities"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AllowedPrincipals_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AllowedPrincipals_STATUS to AllowedPrincipals_STATUS via AssignProperties_To_AllowedPrincipals_STATUS & AssignProperties_From_AllowedPrincipals_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAllowedPrincipals_STATUS, AllowedPrincipals_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAllowedPrincipals_STATUS tests if a specific instance of AllowedPrincipals_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAllowedPrincipals_STATUS(subject AllowedPrincipals_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.AllowedPrincipals_STATUS
+ err := copied.AssignProperties_To_AllowedPrincipals_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AllowedPrincipals_STATUS
+ err = actual.AssignProperties_From_AllowedPrincipals_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_AllowedPrincipals_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 AllowedPrincipals_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedPrincipals_STATUS, AllowedPrincipals_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedPrincipals_STATUS runs a test to see if a specific instance of AllowedPrincipals_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedPrincipals_STATUS(subject AllowedPrincipals_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedPrincipals_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 AllowedPrincipals_STATUS instances for property testing - lazily instantiated by
+// AllowedPrincipals_STATUSGenerator()
+var allowedPrincipals_STATUSGenerator gopter.Gen
+
+// AllowedPrincipals_STATUSGenerator returns a generator of AllowedPrincipals_STATUS instances for property testing.
+func AllowedPrincipals_STATUSGenerator() gopter.Gen {
+ if allowedPrincipals_STATUSGenerator != nil {
+ return allowedPrincipals_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS(generators)
+ allowedPrincipals_STATUSGenerator = gen.Struct(reflect.TypeOf(AllowedPrincipals_STATUS{}), generators)
+
+ return allowedPrincipals_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS(gens map[string]gopter.Gen) {
+ gens["Groups"] = gen.SliceOf(gen.AlphaString())
+ gens["Identities"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AppRegistration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AppRegistration to AppRegistration via AssignProperties_To_AppRegistration & AssignProperties_From_AppRegistration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAppRegistration, AppRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAppRegistration tests if a specific instance of AppRegistration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAppRegistration(subject AppRegistration) 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.AppRegistration
+ err := copied.AssignProperties_To_AppRegistration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AppRegistration
+ err = actual.AssignProperties_From_AppRegistration(&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_AppRegistration_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 AppRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppRegistration, AppRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppRegistration runs a test to see if a specific instance of AppRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppRegistration(subject AppRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppRegistration
+ 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 AppRegistration instances for property testing - lazily instantiated by AppRegistrationGenerator()
+var appRegistrationGenerator gopter.Gen
+
+// AppRegistrationGenerator returns a generator of AppRegistration instances for property testing.
+func AppRegistrationGenerator() gopter.Gen {
+ if appRegistrationGenerator != nil {
+ return appRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppRegistration(generators)
+ appRegistrationGenerator = gen.Struct(reflect.TypeOf(AppRegistration{}), generators)
+
+ return appRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppRegistration(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AppRegistration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AppRegistration_STATUS to AppRegistration_STATUS via AssignProperties_To_AppRegistration_STATUS & AssignProperties_From_AppRegistration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAppRegistration_STATUS, AppRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAppRegistration_STATUS tests if a specific instance of AppRegistration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAppRegistration_STATUS(subject AppRegistration_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.AppRegistration_STATUS
+ err := copied.AssignProperties_To_AppRegistration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AppRegistration_STATUS
+ err = actual.AssignProperties_From_AppRegistration_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_AppRegistration_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 AppRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppRegistration_STATUS, AppRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppRegistration_STATUS runs a test to see if a specific instance of AppRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppRegistration_STATUS(subject AppRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppRegistration_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 AppRegistration_STATUS instances for property testing - lazily instantiated by
+// AppRegistration_STATUSGenerator()
+var appRegistration_STATUSGenerator gopter.Gen
+
+// AppRegistration_STATUSGenerator returns a generator of AppRegistration_STATUS instances for property testing.
+func AppRegistration_STATUSGenerator() gopter.Gen {
+ if appRegistration_STATUSGenerator != nil {
+ return appRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppRegistration_STATUS(generators)
+ appRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppRegistration_STATUS{}), generators)
+
+ return appRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Apple_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Apple to Apple via AssignProperties_To_Apple & AssignProperties_From_Apple returns original",
+ prop.ForAll(RunPropertyAssignmentTestForApple, AppleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForApple tests if a specific instance of Apple can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForApple(subject Apple) 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.Apple
+ err := copied.AssignProperties_To_Apple(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Apple
+ err = actual.AssignProperties_From_Apple(&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_Apple_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 Apple via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForApple, AppleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForApple runs a test to see if a specific instance of Apple round trips to JSON and back losslessly
+func RunJSONSerializationTestForApple(subject Apple) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Apple
+ 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 Apple instances for property testing - lazily instantiated by AppleGenerator()
+var appleGenerator gopter.Gen
+
+// AppleGenerator returns a generator of Apple instances for property testing.
+// We first initialize appleGenerator 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 AppleGenerator() gopter.Gen {
+ if appleGenerator != nil {
+ return appleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple(generators)
+ appleGenerator = gen.Struct(reflect.TypeOf(Apple{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple(generators)
+ AddRelatedPropertyGeneratorsForApple(generators)
+ appleGenerator = gen.Struct(reflect.TypeOf(Apple{}), generators)
+
+ return appleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForApple is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForApple(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForApple is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForApple(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(AppleRegistrationGenerator())
+}
+
+func Test_AppleRegistration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AppleRegistration to AppleRegistration via AssignProperties_To_AppleRegistration & AssignProperties_From_AppleRegistration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAppleRegistration, AppleRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAppleRegistration tests if a specific instance of AppleRegistration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAppleRegistration(subject AppleRegistration) 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.AppleRegistration
+ err := copied.AssignProperties_To_AppleRegistration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AppleRegistration
+ err = actual.AssignProperties_From_AppleRegistration(&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_AppleRegistration_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 AppleRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppleRegistration, AppleRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppleRegistration runs a test to see if a specific instance of AppleRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppleRegistration(subject AppleRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppleRegistration
+ 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 AppleRegistration instances for property testing - lazily instantiated by AppleRegistrationGenerator()
+var appleRegistrationGenerator gopter.Gen
+
+// AppleRegistrationGenerator returns a generator of AppleRegistration instances for property testing.
+func AppleRegistrationGenerator() gopter.Gen {
+ if appleRegistrationGenerator != nil {
+ return appleRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppleRegistration(generators)
+ appleRegistrationGenerator = gen.Struct(reflect.TypeOf(AppleRegistration{}), generators)
+
+ return appleRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppleRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppleRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AppleRegistration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AppleRegistration_STATUS to AppleRegistration_STATUS via AssignProperties_To_AppleRegistration_STATUS & AssignProperties_From_AppleRegistration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAppleRegistration_STATUS, AppleRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAppleRegistration_STATUS tests if a specific instance of AppleRegistration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAppleRegistration_STATUS(subject AppleRegistration_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.AppleRegistration_STATUS
+ err := copied.AssignProperties_To_AppleRegistration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AppleRegistration_STATUS
+ err = actual.AssignProperties_From_AppleRegistration_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_AppleRegistration_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 AppleRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppleRegistration_STATUS, AppleRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppleRegistration_STATUS runs a test to see if a specific instance of AppleRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppleRegistration_STATUS(subject AppleRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppleRegistration_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 AppleRegistration_STATUS instances for property testing - lazily instantiated by
+// AppleRegistration_STATUSGenerator()
+var appleRegistration_STATUSGenerator gopter.Gen
+
+// AppleRegistration_STATUSGenerator returns a generator of AppleRegistration_STATUS instances for property testing.
+func AppleRegistration_STATUSGenerator() gopter.Gen {
+ if appleRegistration_STATUSGenerator != nil {
+ return appleRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppleRegistration_STATUS(generators)
+ appleRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppleRegistration_STATUS{}), generators)
+
+ return appleRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppleRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppleRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Apple_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Apple_STATUS to Apple_STATUS via AssignProperties_To_Apple_STATUS & AssignProperties_From_Apple_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForApple_STATUS, Apple_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForApple_STATUS tests if a specific instance of Apple_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForApple_STATUS(subject Apple_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.Apple_STATUS
+ err := copied.AssignProperties_To_Apple_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Apple_STATUS
+ err = actual.AssignProperties_From_Apple_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_Apple_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 Apple_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForApple_STATUS, Apple_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForApple_STATUS runs a test to see if a specific instance of Apple_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForApple_STATUS(subject Apple_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Apple_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 Apple_STATUS instances for property testing - lazily instantiated by Apple_STATUSGenerator()
+var apple_STATUSGenerator gopter.Gen
+
+// Apple_STATUSGenerator returns a generator of Apple_STATUS instances for property testing.
+// We first initialize apple_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 Apple_STATUSGenerator() gopter.Gen {
+ if apple_STATUSGenerator != nil {
+ return apple_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple_STATUS(generators)
+ apple_STATUSGenerator = gen.Struct(reflect.TypeOf(Apple_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple_STATUS(generators)
+ AddRelatedPropertyGeneratorsForApple_STATUS(generators)
+ apple_STATUSGenerator = gen.Struct(reflect.TypeOf(Apple_STATUS{}), generators)
+
+ return apple_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForApple_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForApple_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForApple_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForApple_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AppleRegistration_STATUSGenerator())
+}
+
+func Test_AuthConfig_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 AuthConfig to hub returns original",
+ prop.ForAll(RunResourceConversionTestForAuthConfig, AuthConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunResourceConversionTestForAuthConfig tests if a specific instance of AuthConfig round trips to the hub storage version and back losslessly
+func RunResourceConversionTestForAuthConfig(subject AuthConfig) string {
+ // Copy subject to make sure conversion doesn't modify it
+ copied := subject.DeepCopy()
+
+ // Convert to our hub version
+ var hub storage.AuthConfig
+ err := copied.ConvertTo(&hub)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Convert from our hub version
+ var actual AuthConfig
+ 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_AuthConfig_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AuthConfig to AuthConfig via AssignProperties_To_AuthConfig & AssignProperties_From_AuthConfig returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAuthConfig, AuthConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAuthConfig tests if a specific instance of AuthConfig can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAuthConfig(subject AuthConfig) 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.AuthConfig
+ err := copied.AssignProperties_To_AuthConfig(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AuthConfig
+ err = actual.AssignProperties_From_AuthConfig(&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_AuthConfig_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 AuthConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfig, AuthConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfig runs a test to see if a specific instance of AuthConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfig(subject AuthConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfig
+ 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 AuthConfig instances for property testing - lazily instantiated by AuthConfigGenerator()
+var authConfigGenerator gopter.Gen
+
+// AuthConfigGenerator returns a generator of AuthConfig instances for property testing.
+func AuthConfigGenerator() gopter.Gen {
+ if authConfigGenerator != nil {
+ return authConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForAuthConfig(generators)
+ authConfigGenerator = gen.Struct(reflect.TypeOf(AuthConfig{}), generators)
+
+ return authConfigGenerator
+}
+
+// AddRelatedPropertyGeneratorsForAuthConfig is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAuthConfig(gens map[string]gopter.Gen) {
+ gens["Spec"] = AuthConfig_SpecGenerator()
+ gens["Status"] = AuthConfig_STATUSGenerator()
+}
+
+func Test_AuthConfigOperatorSpec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AuthConfigOperatorSpec to AuthConfigOperatorSpec via AssignProperties_To_AuthConfigOperatorSpec & AssignProperties_From_AuthConfigOperatorSpec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAuthConfigOperatorSpec, AuthConfigOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAuthConfigOperatorSpec tests if a specific instance of AuthConfigOperatorSpec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAuthConfigOperatorSpec(subject AuthConfigOperatorSpec) 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.AuthConfigOperatorSpec
+ err := copied.AssignProperties_To_AuthConfigOperatorSpec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AuthConfigOperatorSpec
+ err = actual.AssignProperties_From_AuthConfigOperatorSpec(&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_AuthConfigOperatorSpec_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 AuthConfigOperatorSpec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfigOperatorSpec, AuthConfigOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfigOperatorSpec runs a test to see if a specific instance of AuthConfigOperatorSpec round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfigOperatorSpec(subject AuthConfigOperatorSpec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfigOperatorSpec
+ 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 AuthConfigOperatorSpec instances for property testing - lazily instantiated by
+// AuthConfigOperatorSpecGenerator()
+var authConfigOperatorSpecGenerator gopter.Gen
+
+// AuthConfigOperatorSpecGenerator returns a generator of AuthConfigOperatorSpec instances for property testing.
+func AuthConfigOperatorSpecGenerator() gopter.Gen {
+ if authConfigOperatorSpecGenerator != nil {
+ return authConfigOperatorSpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ authConfigOperatorSpecGenerator = gen.Struct(reflect.TypeOf(AuthConfigOperatorSpec{}), generators)
+
+ return authConfigOperatorSpecGenerator
+}
+
+func Test_AuthConfig_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AuthConfig_STATUS to AuthConfig_STATUS via AssignProperties_To_AuthConfig_STATUS & AssignProperties_From_AuthConfig_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAuthConfig_STATUS, AuthConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAuthConfig_STATUS tests if a specific instance of AuthConfig_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAuthConfig_STATUS(subject AuthConfig_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.AuthConfig_STATUS
+ err := copied.AssignProperties_To_AuthConfig_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AuthConfig_STATUS
+ err = actual.AssignProperties_From_AuthConfig_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_AuthConfig_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 AuthConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfig_STATUS, AuthConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfig_STATUS runs a test to see if a specific instance of AuthConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfig_STATUS(subject AuthConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfig_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 AuthConfig_STATUS instances for property testing - lazily instantiated by AuthConfig_STATUSGenerator()
+var authConfig_STATUSGenerator gopter.Gen
+
+// AuthConfig_STATUSGenerator returns a generator of AuthConfig_STATUS instances for property testing.
+// We first initialize authConfig_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 AuthConfig_STATUSGenerator() gopter.Gen {
+ if authConfig_STATUSGenerator != nil {
+ return authConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_STATUS(generators)
+ authConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthConfig_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAuthConfig_STATUS(generators)
+ authConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthConfig_STATUS{}), generators)
+
+ return authConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAuthConfig_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAuthConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["EncryptionSettings"] = gen.PtrOf(EncryptionSettings_STATUSGenerator())
+ gens["GlobalValidation"] = gen.PtrOf(GlobalValidation_STATUSGenerator())
+ gens["HttpSettings"] = gen.PtrOf(HttpSettings_STATUSGenerator())
+ gens["IdentityProviders"] = gen.PtrOf(IdentityProviders_STATUSGenerator())
+ gens["Login"] = gen.PtrOf(Login_STATUSGenerator())
+ gens["Platform"] = gen.PtrOf(AuthPlatform_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+}
+
+func Test_AuthConfig_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AuthConfig_Spec to AuthConfig_Spec via AssignProperties_To_AuthConfig_Spec & AssignProperties_From_AuthConfig_Spec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAuthConfig_Spec, AuthConfig_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAuthConfig_Spec tests if a specific instance of AuthConfig_Spec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAuthConfig_Spec(subject AuthConfig_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.AuthConfig_Spec
+ err := copied.AssignProperties_To_AuthConfig_Spec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AuthConfig_Spec
+ err = actual.AssignProperties_From_AuthConfig_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_AuthConfig_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 AuthConfig_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfig_Spec, AuthConfig_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfig_Spec runs a test to see if a specific instance of AuthConfig_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfig_Spec(subject AuthConfig_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfig_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 AuthConfig_Spec instances for property testing - lazily instantiated by AuthConfig_SpecGenerator()
+var authConfig_SpecGenerator gopter.Gen
+
+// AuthConfig_SpecGenerator returns a generator of AuthConfig_Spec instances for property testing.
+// We first initialize authConfig_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 AuthConfig_SpecGenerator() gopter.Gen {
+ if authConfig_SpecGenerator != nil {
+ return authConfig_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_Spec(generators)
+ authConfig_SpecGenerator = gen.Struct(reflect.TypeOf(AuthConfig_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_Spec(generators)
+ AddRelatedPropertyGeneratorsForAuthConfig_Spec(generators)
+ authConfig_SpecGenerator = gen.Struct(reflect.TypeOf(AuthConfig_Spec{}), generators)
+
+ return authConfig_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthConfig_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthConfig_Spec(gens map[string]gopter.Gen) {
+ gens["AzureName"] = gen.AlphaString()
+}
+
+// AddRelatedPropertyGeneratorsForAuthConfig_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAuthConfig_Spec(gens map[string]gopter.Gen) {
+ gens["EncryptionSettings"] = gen.PtrOf(EncryptionSettingsGenerator())
+ gens["GlobalValidation"] = gen.PtrOf(GlobalValidationGenerator())
+ gens["HttpSettings"] = gen.PtrOf(HttpSettingsGenerator())
+ gens["IdentityProviders"] = gen.PtrOf(IdentityProvidersGenerator())
+ gens["Login"] = gen.PtrOf(LoginGenerator())
+ gens["OperatorSpec"] = gen.PtrOf(AuthConfigOperatorSpecGenerator())
+ gens["Platform"] = gen.PtrOf(AuthPlatformGenerator())
+}
+
+func Test_AuthPlatform_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AuthPlatform to AuthPlatform via AssignProperties_To_AuthPlatform & AssignProperties_From_AuthPlatform returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAuthPlatform, AuthPlatformGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAuthPlatform tests if a specific instance of AuthPlatform can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAuthPlatform(subject AuthPlatform) 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.AuthPlatform
+ err := copied.AssignProperties_To_AuthPlatform(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AuthPlatform
+ err = actual.AssignProperties_From_AuthPlatform(&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_AuthPlatform_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 AuthPlatform via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthPlatform, AuthPlatformGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthPlatform runs a test to see if a specific instance of AuthPlatform round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthPlatform(subject AuthPlatform) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthPlatform
+ 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 AuthPlatform instances for property testing - lazily instantiated by AuthPlatformGenerator()
+var authPlatformGenerator gopter.Gen
+
+// AuthPlatformGenerator returns a generator of AuthPlatform instances for property testing.
+func AuthPlatformGenerator() gopter.Gen {
+ if authPlatformGenerator != nil {
+ return authPlatformGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthPlatform(generators)
+ authPlatformGenerator = gen.Struct(reflect.TypeOf(AuthPlatform{}), generators)
+
+ return authPlatformGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthPlatform is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthPlatform(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["RuntimeVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AuthPlatform_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AuthPlatform_STATUS to AuthPlatform_STATUS via AssignProperties_To_AuthPlatform_STATUS & AssignProperties_From_AuthPlatform_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAuthPlatform_STATUS, AuthPlatform_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAuthPlatform_STATUS tests if a specific instance of AuthPlatform_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAuthPlatform_STATUS(subject AuthPlatform_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.AuthPlatform_STATUS
+ err := copied.AssignProperties_To_AuthPlatform_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AuthPlatform_STATUS
+ err = actual.AssignProperties_From_AuthPlatform_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_AuthPlatform_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 AuthPlatform_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthPlatform_STATUS, AuthPlatform_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthPlatform_STATUS runs a test to see if a specific instance of AuthPlatform_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthPlatform_STATUS(subject AuthPlatform_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthPlatform_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 AuthPlatform_STATUS instances for property testing - lazily instantiated by
+// AuthPlatform_STATUSGenerator()
+var authPlatform_STATUSGenerator gopter.Gen
+
+// AuthPlatform_STATUSGenerator returns a generator of AuthPlatform_STATUS instances for property testing.
+func AuthPlatform_STATUSGenerator() gopter.Gen {
+ if authPlatform_STATUSGenerator != nil {
+ return authPlatform_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthPlatform_STATUS(generators)
+ authPlatform_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthPlatform_STATUS{}), generators)
+
+ return authPlatform_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthPlatform_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthPlatform_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["RuntimeVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectory_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureActiveDirectory to AzureActiveDirectory via AssignProperties_To_AzureActiveDirectory & AssignProperties_From_AzureActiveDirectory returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureActiveDirectory, AzureActiveDirectoryGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureActiveDirectory tests if a specific instance of AzureActiveDirectory can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureActiveDirectory(subject AzureActiveDirectory) 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.AzureActiveDirectory
+ err := copied.AssignProperties_To_AzureActiveDirectory(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureActiveDirectory
+ err = actual.AssignProperties_From_AzureActiveDirectory(&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_AzureActiveDirectory_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 AzureActiveDirectory via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectory, AzureActiveDirectoryGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectory runs a test to see if a specific instance of AzureActiveDirectory round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectory(subject AzureActiveDirectory) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectory
+ 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 AzureActiveDirectory instances for property testing - lazily instantiated by
+// AzureActiveDirectoryGenerator()
+var azureActiveDirectoryGenerator gopter.Gen
+
+// AzureActiveDirectoryGenerator returns a generator of AzureActiveDirectory instances for property testing.
+// We first initialize azureActiveDirectoryGenerator 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 AzureActiveDirectoryGenerator() gopter.Gen {
+ if azureActiveDirectoryGenerator != nil {
+ return azureActiveDirectoryGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory(generators)
+ azureActiveDirectoryGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectory(generators)
+ azureActiveDirectoryGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory{}), generators)
+
+ return azureActiveDirectoryGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectory is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectory(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["IsAutoProvisioned"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectory is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectory(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(AzureActiveDirectoryLoginGenerator())
+ gens["Registration"] = gen.PtrOf(AzureActiveDirectoryRegistrationGenerator())
+ gens["Validation"] = gen.PtrOf(AzureActiveDirectoryValidationGenerator())
+}
+
+func Test_AzureActiveDirectoryLogin_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureActiveDirectoryLogin to AzureActiveDirectoryLogin via AssignProperties_To_AzureActiveDirectoryLogin & AssignProperties_From_AzureActiveDirectoryLogin returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureActiveDirectoryLogin, AzureActiveDirectoryLoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureActiveDirectoryLogin tests if a specific instance of AzureActiveDirectoryLogin can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureActiveDirectoryLogin(subject AzureActiveDirectoryLogin) 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.AzureActiveDirectoryLogin
+ err := copied.AssignProperties_To_AzureActiveDirectoryLogin(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureActiveDirectoryLogin
+ err = actual.AssignProperties_From_AzureActiveDirectoryLogin(&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_AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryLogin, AzureActiveDirectoryLoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryLogin runs a test to see if a specific instance of AzureActiveDirectoryLogin round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryLogin(subject AzureActiveDirectoryLogin) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryLogin
+ 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 AzureActiveDirectoryLogin instances for property testing - lazily instantiated by
+// AzureActiveDirectoryLoginGenerator()
+var azureActiveDirectoryLoginGenerator gopter.Gen
+
+// AzureActiveDirectoryLoginGenerator returns a generator of AzureActiveDirectoryLogin instances for property testing.
+func AzureActiveDirectoryLoginGenerator() gopter.Gen {
+ if azureActiveDirectoryLoginGenerator != nil {
+ return azureActiveDirectoryLoginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin(generators)
+ azureActiveDirectoryLoginGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryLogin{}), generators)
+
+ return azureActiveDirectoryLoginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin(gens map[string]gopter.Gen) {
+ gens["DisableWWWAuthenticate"] = gen.PtrOf(gen.Bool())
+ gens["LoginParameters"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryLogin_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureActiveDirectoryLogin_STATUS to AzureActiveDirectoryLogin_STATUS via AssignProperties_To_AzureActiveDirectoryLogin_STATUS & AssignProperties_From_AzureActiveDirectoryLogin_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureActiveDirectoryLogin_STATUS, AzureActiveDirectoryLogin_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureActiveDirectoryLogin_STATUS tests if a specific instance of AzureActiveDirectoryLogin_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureActiveDirectoryLogin_STATUS(subject AzureActiveDirectoryLogin_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.AzureActiveDirectoryLogin_STATUS
+ err := copied.AssignProperties_To_AzureActiveDirectoryLogin_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureActiveDirectoryLogin_STATUS
+ err = actual.AssignProperties_From_AzureActiveDirectoryLogin_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_AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS, AzureActiveDirectoryLogin_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS runs a test to see if a specific instance of AzureActiveDirectoryLogin_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS(subject AzureActiveDirectoryLogin_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryLogin_STATUSGenerator()
+var azureActiveDirectoryLogin_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryLogin_STATUSGenerator returns a generator of AzureActiveDirectoryLogin_STATUS instances for property testing.
+func AzureActiveDirectoryLogin_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryLogin_STATUSGenerator != nil {
+ return azureActiveDirectoryLogin_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS(generators)
+ azureActiveDirectoryLogin_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryLogin_STATUS{}), generators)
+
+ return azureActiveDirectoryLogin_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["DisableWWWAuthenticate"] = gen.PtrOf(gen.Bool())
+ gens["LoginParameters"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryRegistration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureActiveDirectoryRegistration to AzureActiveDirectoryRegistration via AssignProperties_To_AzureActiveDirectoryRegistration & AssignProperties_From_AzureActiveDirectoryRegistration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureActiveDirectoryRegistration, AzureActiveDirectoryRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureActiveDirectoryRegistration tests if a specific instance of AzureActiveDirectoryRegistration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureActiveDirectoryRegistration(subject AzureActiveDirectoryRegistration) 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.AzureActiveDirectoryRegistration
+ err := copied.AssignProperties_To_AzureActiveDirectoryRegistration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureActiveDirectoryRegistration
+ err = actual.AssignProperties_From_AzureActiveDirectoryRegistration(&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_AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryRegistration, AzureActiveDirectoryRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryRegistration runs a test to see if a specific instance of AzureActiveDirectoryRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryRegistration(subject AzureActiveDirectoryRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryRegistration
+ 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 AzureActiveDirectoryRegistration instances for property testing - lazily instantiated by
+// AzureActiveDirectoryRegistrationGenerator()
+var azureActiveDirectoryRegistrationGenerator gopter.Gen
+
+// AzureActiveDirectoryRegistrationGenerator returns a generator of AzureActiveDirectoryRegistration instances for property testing.
+func AzureActiveDirectoryRegistrationGenerator() gopter.Gen {
+ if azureActiveDirectoryRegistrationGenerator != nil {
+ return azureActiveDirectoryRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration(generators)
+ azureActiveDirectoryRegistrationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryRegistration{}), generators)
+
+ return azureActiveDirectoryRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateIssuer"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateSubjectAlternativeName"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateThumbprint"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["OpenIdIssuer"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryRegistration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureActiveDirectoryRegistration_STATUS to AzureActiveDirectoryRegistration_STATUS via AssignProperties_To_AzureActiveDirectoryRegistration_STATUS & AssignProperties_From_AzureActiveDirectoryRegistration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureActiveDirectoryRegistration_STATUS, AzureActiveDirectoryRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureActiveDirectoryRegistration_STATUS tests if a specific instance of AzureActiveDirectoryRegistration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureActiveDirectoryRegistration_STATUS(subject AzureActiveDirectoryRegistration_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.AzureActiveDirectoryRegistration_STATUS
+ err := copied.AssignProperties_To_AzureActiveDirectoryRegistration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureActiveDirectoryRegistration_STATUS
+ err = actual.AssignProperties_From_AzureActiveDirectoryRegistration_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_AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS, AzureActiveDirectoryRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS runs a test to see if a specific instance of AzureActiveDirectoryRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS(subject AzureActiveDirectoryRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryRegistration_STATUSGenerator()
+var azureActiveDirectoryRegistration_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryRegistration_STATUSGenerator returns a generator of AzureActiveDirectoryRegistration_STATUS instances for property testing.
+func AzureActiveDirectoryRegistration_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryRegistration_STATUSGenerator != nil {
+ return azureActiveDirectoryRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS(generators)
+ azureActiveDirectoryRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryRegistration_STATUS{}), generators)
+
+ return azureActiveDirectoryRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateIssuer"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateSubjectAlternativeName"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateThumbprint"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["OpenIdIssuer"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryValidation_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureActiveDirectoryValidation to AzureActiveDirectoryValidation via AssignProperties_To_AzureActiveDirectoryValidation & AssignProperties_From_AzureActiveDirectoryValidation returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureActiveDirectoryValidation, AzureActiveDirectoryValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureActiveDirectoryValidation tests if a specific instance of AzureActiveDirectoryValidation can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureActiveDirectoryValidation(subject AzureActiveDirectoryValidation) 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.AzureActiveDirectoryValidation
+ err := copied.AssignProperties_To_AzureActiveDirectoryValidation(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureActiveDirectoryValidation
+ err = actual.AssignProperties_From_AzureActiveDirectoryValidation(&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_AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryValidation, AzureActiveDirectoryValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryValidation runs a test to see if a specific instance of AzureActiveDirectoryValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryValidation(subject AzureActiveDirectoryValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryValidation
+ 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 AzureActiveDirectoryValidation instances for property testing - lazily instantiated by
+// AzureActiveDirectoryValidationGenerator()
+var azureActiveDirectoryValidationGenerator gopter.Gen
+
+// AzureActiveDirectoryValidationGenerator returns a generator of AzureActiveDirectoryValidation instances for property testing.
+// We first initialize azureActiveDirectoryValidationGenerator 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 AzureActiveDirectoryValidationGenerator() gopter.Gen {
+ if azureActiveDirectoryValidationGenerator != nil {
+ return azureActiveDirectoryValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ azureActiveDirectoryValidationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ azureActiveDirectoryValidationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation{}), generators)
+
+ return azureActiveDirectoryValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation(gens map[string]gopter.Gen) {
+ gens["DefaultAuthorizationPolicy"] = gen.PtrOf(DefaultAuthorizationPolicyGenerator())
+ gens["JwtClaimChecks"] = gen.PtrOf(JwtClaimChecksGenerator())
+}
+
+func Test_AzureActiveDirectoryValidation_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureActiveDirectoryValidation_STATUS to AzureActiveDirectoryValidation_STATUS via AssignProperties_To_AzureActiveDirectoryValidation_STATUS & AssignProperties_From_AzureActiveDirectoryValidation_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureActiveDirectoryValidation_STATUS, AzureActiveDirectoryValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureActiveDirectoryValidation_STATUS tests if a specific instance of AzureActiveDirectoryValidation_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureActiveDirectoryValidation_STATUS(subject AzureActiveDirectoryValidation_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.AzureActiveDirectoryValidation_STATUS
+ err := copied.AssignProperties_To_AzureActiveDirectoryValidation_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureActiveDirectoryValidation_STATUS
+ err = actual.AssignProperties_From_AzureActiveDirectoryValidation_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_AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS, AzureActiveDirectoryValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS runs a test to see if a specific instance of AzureActiveDirectoryValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS(subject AzureActiveDirectoryValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryValidation_STATUSGenerator()
+var azureActiveDirectoryValidation_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryValidation_STATUSGenerator returns a generator of AzureActiveDirectoryValidation_STATUS instances for property testing.
+// We first initialize azureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryValidation_STATUSGenerator != nil {
+ return azureActiveDirectoryValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ azureActiveDirectoryValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ azureActiveDirectoryValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation_STATUS{}), generators)
+
+ return azureActiveDirectoryValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["DefaultAuthorizationPolicy"] = gen.PtrOf(DefaultAuthorizationPolicy_STATUSGenerator())
+ gens["JwtClaimChecks"] = gen.PtrOf(JwtClaimChecks_STATUSGenerator())
+}
+
+func Test_AzureActiveDirectory_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureActiveDirectory_STATUS to AzureActiveDirectory_STATUS via AssignProperties_To_AzureActiveDirectory_STATUS & AssignProperties_From_AzureActiveDirectory_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureActiveDirectory_STATUS, AzureActiveDirectory_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureActiveDirectory_STATUS tests if a specific instance of AzureActiveDirectory_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureActiveDirectory_STATUS(subject AzureActiveDirectory_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.AzureActiveDirectory_STATUS
+ err := copied.AssignProperties_To_AzureActiveDirectory_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureActiveDirectory_STATUS
+ err = actual.AssignProperties_From_AzureActiveDirectory_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_AzureActiveDirectory_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 AzureActiveDirectory_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectory_STATUS, AzureActiveDirectory_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectory_STATUS runs a test to see if a specific instance of AzureActiveDirectory_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectory_STATUS(subject AzureActiveDirectory_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectory_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 AzureActiveDirectory_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectory_STATUSGenerator()
+var azureActiveDirectory_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectory_STATUSGenerator returns a generator of AzureActiveDirectory_STATUS instances for property testing.
+// We first initialize azureActiveDirectory_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 AzureActiveDirectory_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectory_STATUSGenerator != nil {
+ return azureActiveDirectory_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ azureActiveDirectory_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ azureActiveDirectory_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory_STATUS{}), generators)
+
+ return azureActiveDirectory_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["IsAutoProvisioned"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(AzureActiveDirectoryLogin_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AzureActiveDirectoryRegistration_STATUSGenerator())
+ gens["Validation"] = gen.PtrOf(AzureActiveDirectoryValidation_STATUSGenerator())
+}
+
+func Test_AzureStaticWebApps_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureStaticWebApps to AzureStaticWebApps via AssignProperties_To_AzureStaticWebApps & AssignProperties_From_AzureStaticWebApps returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureStaticWebApps, AzureStaticWebAppsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureStaticWebApps tests if a specific instance of AzureStaticWebApps can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureStaticWebApps(subject AzureStaticWebApps) 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.AzureStaticWebApps
+ err := copied.AssignProperties_To_AzureStaticWebApps(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureStaticWebApps
+ err = actual.AssignProperties_From_AzureStaticWebApps(&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_AzureStaticWebApps_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 AzureStaticWebApps via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebApps, AzureStaticWebAppsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebApps runs a test to see if a specific instance of AzureStaticWebApps round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebApps(subject AzureStaticWebApps) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebApps
+ 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 AzureStaticWebApps instances for property testing - lazily instantiated by AzureStaticWebAppsGenerator()
+var azureStaticWebAppsGenerator gopter.Gen
+
+// AzureStaticWebAppsGenerator returns a generator of AzureStaticWebApps instances for property testing.
+// We first initialize azureStaticWebAppsGenerator 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 AzureStaticWebAppsGenerator() gopter.Gen {
+ if azureStaticWebAppsGenerator != nil {
+ return azureStaticWebAppsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps(generators)
+ azureStaticWebAppsGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps(generators)
+ AddRelatedPropertyGeneratorsForAzureStaticWebApps(generators)
+ azureStaticWebAppsGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps{}), generators)
+
+ return azureStaticWebAppsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebApps is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebApps(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureStaticWebApps is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureStaticWebApps(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(AzureStaticWebAppsRegistrationGenerator())
+}
+
+func Test_AzureStaticWebAppsRegistration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureStaticWebAppsRegistration to AzureStaticWebAppsRegistration via AssignProperties_To_AzureStaticWebAppsRegistration & AssignProperties_From_AzureStaticWebAppsRegistration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureStaticWebAppsRegistration, AzureStaticWebAppsRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureStaticWebAppsRegistration tests if a specific instance of AzureStaticWebAppsRegistration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureStaticWebAppsRegistration(subject AzureStaticWebAppsRegistration) 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.AzureStaticWebAppsRegistration
+ err := copied.AssignProperties_To_AzureStaticWebAppsRegistration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureStaticWebAppsRegistration
+ err = actual.AssignProperties_From_AzureStaticWebAppsRegistration(&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_AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebAppsRegistration, AzureStaticWebAppsRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebAppsRegistration runs a test to see if a specific instance of AzureStaticWebAppsRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebAppsRegistration(subject AzureStaticWebAppsRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebAppsRegistration
+ 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 AzureStaticWebAppsRegistration instances for property testing - lazily instantiated by
+// AzureStaticWebAppsRegistrationGenerator()
+var azureStaticWebAppsRegistrationGenerator gopter.Gen
+
+// AzureStaticWebAppsRegistrationGenerator returns a generator of AzureStaticWebAppsRegistration instances for property testing.
+func AzureStaticWebAppsRegistrationGenerator() gopter.Gen {
+ if azureStaticWebAppsRegistrationGenerator != nil {
+ return azureStaticWebAppsRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration(generators)
+ azureStaticWebAppsRegistrationGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebAppsRegistration{}), generators)
+
+ return azureStaticWebAppsRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureStaticWebAppsRegistration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureStaticWebAppsRegistration_STATUS to AzureStaticWebAppsRegistration_STATUS via AssignProperties_To_AzureStaticWebAppsRegistration_STATUS & AssignProperties_From_AzureStaticWebAppsRegistration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureStaticWebAppsRegistration_STATUS, AzureStaticWebAppsRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureStaticWebAppsRegistration_STATUS tests if a specific instance of AzureStaticWebAppsRegistration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureStaticWebAppsRegistration_STATUS(subject AzureStaticWebAppsRegistration_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.AzureStaticWebAppsRegistration_STATUS
+ err := copied.AssignProperties_To_AzureStaticWebAppsRegistration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureStaticWebAppsRegistration_STATUS
+ err = actual.AssignProperties_From_AzureStaticWebAppsRegistration_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_AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS, AzureStaticWebAppsRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS runs a test to see if a specific instance of AzureStaticWebAppsRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS(subject AzureStaticWebAppsRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration_STATUS instances for property testing - lazily instantiated by
+// AzureStaticWebAppsRegistration_STATUSGenerator()
+var azureStaticWebAppsRegistration_STATUSGenerator gopter.Gen
+
+// AzureStaticWebAppsRegistration_STATUSGenerator returns a generator of AzureStaticWebAppsRegistration_STATUS instances for property testing.
+func AzureStaticWebAppsRegistration_STATUSGenerator() gopter.Gen {
+ if azureStaticWebAppsRegistration_STATUSGenerator != nil {
+ return azureStaticWebAppsRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS(generators)
+ azureStaticWebAppsRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebAppsRegistration_STATUS{}), generators)
+
+ return azureStaticWebAppsRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureStaticWebApps_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AzureStaticWebApps_STATUS to AzureStaticWebApps_STATUS via AssignProperties_To_AzureStaticWebApps_STATUS & AssignProperties_From_AzureStaticWebApps_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAzureStaticWebApps_STATUS, AzureStaticWebApps_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAzureStaticWebApps_STATUS tests if a specific instance of AzureStaticWebApps_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAzureStaticWebApps_STATUS(subject AzureStaticWebApps_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.AzureStaticWebApps_STATUS
+ err := copied.AssignProperties_To_AzureStaticWebApps_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AzureStaticWebApps_STATUS
+ err = actual.AssignProperties_From_AzureStaticWebApps_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_AzureStaticWebApps_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 AzureStaticWebApps_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebApps_STATUS, AzureStaticWebApps_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebApps_STATUS runs a test to see if a specific instance of AzureStaticWebApps_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebApps_STATUS(subject AzureStaticWebApps_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebApps_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 AzureStaticWebApps_STATUS instances for property testing - lazily instantiated by
+// AzureStaticWebApps_STATUSGenerator()
+var azureStaticWebApps_STATUSGenerator gopter.Gen
+
+// AzureStaticWebApps_STATUSGenerator returns a generator of AzureStaticWebApps_STATUS instances for property testing.
+// We first initialize azureStaticWebApps_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 AzureStaticWebApps_STATUSGenerator() gopter.Gen {
+ if azureStaticWebApps_STATUSGenerator != nil {
+ return azureStaticWebApps_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ azureStaticWebApps_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ azureStaticWebApps_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps_STATUS{}), generators)
+
+ return azureStaticWebApps_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(AzureStaticWebAppsRegistration_STATUSGenerator())
+}
+
+func Test_BlobStorageTokenStore_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from BlobStorageTokenStore to BlobStorageTokenStore via AssignProperties_To_BlobStorageTokenStore & AssignProperties_From_BlobStorageTokenStore returns original",
+ prop.ForAll(RunPropertyAssignmentTestForBlobStorageTokenStore, BlobStorageTokenStoreGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForBlobStorageTokenStore tests if a specific instance of BlobStorageTokenStore can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForBlobStorageTokenStore(subject BlobStorageTokenStore) 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.BlobStorageTokenStore
+ err := copied.AssignProperties_To_BlobStorageTokenStore(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual BlobStorageTokenStore
+ err = actual.AssignProperties_From_BlobStorageTokenStore(&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_BlobStorageTokenStore_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 BlobStorageTokenStore via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBlobStorageTokenStore, BlobStorageTokenStoreGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBlobStorageTokenStore runs a test to see if a specific instance of BlobStorageTokenStore round trips to JSON and back losslessly
+func RunJSONSerializationTestForBlobStorageTokenStore(subject BlobStorageTokenStore) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BlobStorageTokenStore
+ 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 BlobStorageTokenStore instances for property testing - lazily instantiated by
+// BlobStorageTokenStoreGenerator()
+var blobStorageTokenStoreGenerator gopter.Gen
+
+// BlobStorageTokenStoreGenerator returns a generator of BlobStorageTokenStore instances for property testing.
+func BlobStorageTokenStoreGenerator() gopter.Gen {
+ if blobStorageTokenStoreGenerator != nil {
+ return blobStorageTokenStoreGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBlobStorageTokenStore(generators)
+ blobStorageTokenStoreGenerator = gen.Struct(reflect.TypeOf(BlobStorageTokenStore{}), generators)
+
+ return blobStorageTokenStoreGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBlobStorageTokenStore is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBlobStorageTokenStore(gens map[string]gopter.Gen) {
+ gens["SasUrlSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_BlobStorageTokenStore_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from BlobStorageTokenStore_STATUS to BlobStorageTokenStore_STATUS via AssignProperties_To_BlobStorageTokenStore_STATUS & AssignProperties_From_BlobStorageTokenStore_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForBlobStorageTokenStore_STATUS, BlobStorageTokenStore_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForBlobStorageTokenStore_STATUS tests if a specific instance of BlobStorageTokenStore_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForBlobStorageTokenStore_STATUS(subject BlobStorageTokenStore_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.BlobStorageTokenStore_STATUS
+ err := copied.AssignProperties_To_BlobStorageTokenStore_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual BlobStorageTokenStore_STATUS
+ err = actual.AssignProperties_From_BlobStorageTokenStore_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_BlobStorageTokenStore_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 BlobStorageTokenStore_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBlobStorageTokenStore_STATUS, BlobStorageTokenStore_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBlobStorageTokenStore_STATUS runs a test to see if a specific instance of BlobStorageTokenStore_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForBlobStorageTokenStore_STATUS(subject BlobStorageTokenStore_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BlobStorageTokenStore_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 BlobStorageTokenStore_STATUS instances for property testing - lazily instantiated by
+// BlobStorageTokenStore_STATUSGenerator()
+var blobStorageTokenStore_STATUSGenerator gopter.Gen
+
+// BlobStorageTokenStore_STATUSGenerator returns a generator of BlobStorageTokenStore_STATUS instances for property testing.
+func BlobStorageTokenStore_STATUSGenerator() gopter.Gen {
+ if blobStorageTokenStore_STATUSGenerator != nil {
+ return blobStorageTokenStore_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS(generators)
+ blobStorageTokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(BlobStorageTokenStore_STATUS{}), generators)
+
+ return blobStorageTokenStore_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["SasUrlSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ClientRegistration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ClientRegistration to ClientRegistration via AssignProperties_To_ClientRegistration & AssignProperties_From_ClientRegistration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForClientRegistration, ClientRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForClientRegistration tests if a specific instance of ClientRegistration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForClientRegistration(subject ClientRegistration) 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.ClientRegistration
+ err := copied.AssignProperties_To_ClientRegistration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ClientRegistration
+ err = actual.AssignProperties_From_ClientRegistration(&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_ClientRegistration_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 ClientRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForClientRegistration, ClientRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForClientRegistration runs a test to see if a specific instance of ClientRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForClientRegistration(subject ClientRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ClientRegistration
+ 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 ClientRegistration instances for property testing - lazily instantiated by ClientRegistrationGenerator()
+var clientRegistrationGenerator gopter.Gen
+
+// ClientRegistrationGenerator returns a generator of ClientRegistration instances for property testing.
+func ClientRegistrationGenerator() gopter.Gen {
+ if clientRegistrationGenerator != nil {
+ return clientRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForClientRegistration(generators)
+ clientRegistrationGenerator = gen.Struct(reflect.TypeOf(ClientRegistration{}), generators)
+
+ return clientRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForClientRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForClientRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ClientRegistration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ClientRegistration_STATUS to ClientRegistration_STATUS via AssignProperties_To_ClientRegistration_STATUS & AssignProperties_From_ClientRegistration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForClientRegistration_STATUS, ClientRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForClientRegistration_STATUS tests if a specific instance of ClientRegistration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForClientRegistration_STATUS(subject ClientRegistration_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.ClientRegistration_STATUS
+ err := copied.AssignProperties_To_ClientRegistration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ClientRegistration_STATUS
+ err = actual.AssignProperties_From_ClientRegistration_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_ClientRegistration_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 ClientRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForClientRegistration_STATUS, ClientRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForClientRegistration_STATUS runs a test to see if a specific instance of ClientRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForClientRegistration_STATUS(subject ClientRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ClientRegistration_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 ClientRegistration_STATUS instances for property testing - lazily instantiated by
+// ClientRegistration_STATUSGenerator()
+var clientRegistration_STATUSGenerator gopter.Gen
+
+// ClientRegistration_STATUSGenerator returns a generator of ClientRegistration_STATUS instances for property testing.
+func ClientRegistration_STATUSGenerator() gopter.Gen {
+ if clientRegistration_STATUSGenerator != nil {
+ return clientRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForClientRegistration_STATUS(generators)
+ clientRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(ClientRegistration_STATUS{}), generators)
+
+ return clientRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForClientRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForClientRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CookieExpiration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CookieExpiration to CookieExpiration via AssignProperties_To_CookieExpiration & AssignProperties_From_CookieExpiration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCookieExpiration, CookieExpirationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCookieExpiration tests if a specific instance of CookieExpiration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCookieExpiration(subject CookieExpiration) 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.CookieExpiration
+ err := copied.AssignProperties_To_CookieExpiration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CookieExpiration
+ err = actual.AssignProperties_From_CookieExpiration(&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_CookieExpiration_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 CookieExpiration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCookieExpiration, CookieExpirationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCookieExpiration runs a test to see if a specific instance of CookieExpiration round trips to JSON and back losslessly
+func RunJSONSerializationTestForCookieExpiration(subject CookieExpiration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CookieExpiration
+ 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 CookieExpiration instances for property testing - lazily instantiated by CookieExpirationGenerator()
+var cookieExpirationGenerator gopter.Gen
+
+// CookieExpirationGenerator returns a generator of CookieExpiration instances for property testing.
+func CookieExpirationGenerator() gopter.Gen {
+ if cookieExpirationGenerator != nil {
+ return cookieExpirationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCookieExpiration(generators)
+ cookieExpirationGenerator = gen.Struct(reflect.TypeOf(CookieExpiration{}), generators)
+
+ return cookieExpirationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCookieExpiration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCookieExpiration(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.OneConstOf(CookieExpiration_Convention_FixedTime, CookieExpiration_Convention_IdentityProviderDerived))
+ gens["TimeToExpiration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CookieExpiration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CookieExpiration_STATUS to CookieExpiration_STATUS via AssignProperties_To_CookieExpiration_STATUS & AssignProperties_From_CookieExpiration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCookieExpiration_STATUS, CookieExpiration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCookieExpiration_STATUS tests if a specific instance of CookieExpiration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCookieExpiration_STATUS(subject CookieExpiration_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.CookieExpiration_STATUS
+ err := copied.AssignProperties_To_CookieExpiration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CookieExpiration_STATUS
+ err = actual.AssignProperties_From_CookieExpiration_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_CookieExpiration_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 CookieExpiration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCookieExpiration_STATUS, CookieExpiration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCookieExpiration_STATUS runs a test to see if a specific instance of CookieExpiration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCookieExpiration_STATUS(subject CookieExpiration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CookieExpiration_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 CookieExpiration_STATUS instances for property testing - lazily instantiated by
+// CookieExpiration_STATUSGenerator()
+var cookieExpiration_STATUSGenerator gopter.Gen
+
+// CookieExpiration_STATUSGenerator returns a generator of CookieExpiration_STATUS instances for property testing.
+func CookieExpiration_STATUSGenerator() gopter.Gen {
+ if cookieExpiration_STATUSGenerator != nil {
+ return cookieExpiration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCookieExpiration_STATUS(generators)
+ cookieExpiration_STATUSGenerator = gen.Struct(reflect.TypeOf(CookieExpiration_STATUS{}), generators)
+
+ return cookieExpiration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCookieExpiration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCookieExpiration_STATUS(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.OneConstOf(CookieExpiration_Convention_STATUS_FixedTime, CookieExpiration_Convention_STATUS_IdentityProviderDerived))
+ gens["TimeToExpiration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomOpenIdConnectProvider_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CustomOpenIdConnectProvider to CustomOpenIdConnectProvider via AssignProperties_To_CustomOpenIdConnectProvider & AssignProperties_From_CustomOpenIdConnectProvider returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCustomOpenIdConnectProvider, CustomOpenIdConnectProviderGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCustomOpenIdConnectProvider tests if a specific instance of CustomOpenIdConnectProvider can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCustomOpenIdConnectProvider(subject CustomOpenIdConnectProvider) 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.CustomOpenIdConnectProvider
+ err := copied.AssignProperties_To_CustomOpenIdConnectProvider(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CustomOpenIdConnectProvider
+ err = actual.AssignProperties_From_CustomOpenIdConnectProvider(&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_CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomOpenIdConnectProvider, CustomOpenIdConnectProviderGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomOpenIdConnectProvider runs a test to see if a specific instance of CustomOpenIdConnectProvider round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomOpenIdConnectProvider(subject CustomOpenIdConnectProvider) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomOpenIdConnectProvider
+ 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 CustomOpenIdConnectProvider instances for property testing - lazily instantiated by
+// CustomOpenIdConnectProviderGenerator()
+var customOpenIdConnectProviderGenerator gopter.Gen
+
+// CustomOpenIdConnectProviderGenerator returns a generator of CustomOpenIdConnectProvider instances for property testing.
+// We first initialize customOpenIdConnectProviderGenerator 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 CustomOpenIdConnectProviderGenerator() gopter.Gen {
+ if customOpenIdConnectProviderGenerator != nil {
+ return customOpenIdConnectProviderGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ customOpenIdConnectProviderGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ customOpenIdConnectProviderGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider{}), generators)
+
+ return customOpenIdConnectProviderGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(OpenIdConnectLoginGenerator())
+ gens["Registration"] = gen.PtrOf(OpenIdConnectRegistrationGenerator())
+}
+
+func Test_CustomOpenIdConnectProvider_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CustomOpenIdConnectProvider_STATUS to CustomOpenIdConnectProvider_STATUS via AssignProperties_To_CustomOpenIdConnectProvider_STATUS & AssignProperties_From_CustomOpenIdConnectProvider_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCustomOpenIdConnectProvider_STATUS, CustomOpenIdConnectProvider_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCustomOpenIdConnectProvider_STATUS tests if a specific instance of CustomOpenIdConnectProvider_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCustomOpenIdConnectProvider_STATUS(subject CustomOpenIdConnectProvider_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.CustomOpenIdConnectProvider_STATUS
+ err := copied.AssignProperties_To_CustomOpenIdConnectProvider_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CustomOpenIdConnectProvider_STATUS
+ err = actual.AssignProperties_From_CustomOpenIdConnectProvider_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_CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS, CustomOpenIdConnectProvider_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS runs a test to see if a specific instance of CustomOpenIdConnectProvider_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS(subject CustomOpenIdConnectProvider_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUS instances for property testing - lazily instantiated by
+// CustomOpenIdConnectProvider_STATUSGenerator()
+var customOpenIdConnectProvider_STATUSGenerator gopter.Gen
+
+// CustomOpenIdConnectProvider_STATUSGenerator returns a generator of CustomOpenIdConnectProvider_STATUS instances for property testing.
+// We first initialize customOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUSGenerator() gopter.Gen {
+ if customOpenIdConnectProvider_STATUSGenerator != nil {
+ return customOpenIdConnectProvider_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ customOpenIdConnectProvider_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ customOpenIdConnectProvider_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider_STATUS{}), generators)
+
+ return customOpenIdConnectProvider_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(OpenIdConnectLogin_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(OpenIdConnectRegistration_STATUSGenerator())
+}
+
+func Test_DefaultAuthorizationPolicy_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from DefaultAuthorizationPolicy to DefaultAuthorizationPolicy via AssignProperties_To_DefaultAuthorizationPolicy & AssignProperties_From_DefaultAuthorizationPolicy returns original",
+ prop.ForAll(RunPropertyAssignmentTestForDefaultAuthorizationPolicy, DefaultAuthorizationPolicyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForDefaultAuthorizationPolicy tests if a specific instance of DefaultAuthorizationPolicy can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForDefaultAuthorizationPolicy(subject DefaultAuthorizationPolicy) 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.DefaultAuthorizationPolicy
+ err := copied.AssignProperties_To_DefaultAuthorizationPolicy(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual DefaultAuthorizationPolicy
+ err = actual.AssignProperties_From_DefaultAuthorizationPolicy(&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_DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDefaultAuthorizationPolicy, DefaultAuthorizationPolicyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDefaultAuthorizationPolicy runs a test to see if a specific instance of DefaultAuthorizationPolicy round trips to JSON and back losslessly
+func RunJSONSerializationTestForDefaultAuthorizationPolicy(subject DefaultAuthorizationPolicy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DefaultAuthorizationPolicy
+ 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 DefaultAuthorizationPolicy instances for property testing - lazily instantiated by
+// DefaultAuthorizationPolicyGenerator()
+var defaultAuthorizationPolicyGenerator gopter.Gen
+
+// DefaultAuthorizationPolicyGenerator returns a generator of DefaultAuthorizationPolicy instances for property testing.
+// We first initialize defaultAuthorizationPolicyGenerator 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 DefaultAuthorizationPolicyGenerator() gopter.Gen {
+ if defaultAuthorizationPolicyGenerator != nil {
+ return defaultAuthorizationPolicyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ defaultAuthorizationPolicyGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ defaultAuthorizationPolicyGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy{}), generators)
+
+ return defaultAuthorizationPolicyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(gens map[string]gopter.Gen) {
+ gens["AllowedApplications"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy(gens map[string]gopter.Gen) {
+ gens["AllowedPrincipals"] = gen.PtrOf(AllowedPrincipalsGenerator())
+}
+
+func Test_DefaultAuthorizationPolicy_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from DefaultAuthorizationPolicy_STATUS to DefaultAuthorizationPolicy_STATUS via AssignProperties_To_DefaultAuthorizationPolicy_STATUS & AssignProperties_From_DefaultAuthorizationPolicy_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForDefaultAuthorizationPolicy_STATUS, DefaultAuthorizationPolicy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForDefaultAuthorizationPolicy_STATUS tests if a specific instance of DefaultAuthorizationPolicy_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForDefaultAuthorizationPolicy_STATUS(subject DefaultAuthorizationPolicy_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.DefaultAuthorizationPolicy_STATUS
+ err := copied.AssignProperties_To_DefaultAuthorizationPolicy_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual DefaultAuthorizationPolicy_STATUS
+ err = actual.AssignProperties_From_DefaultAuthorizationPolicy_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_DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS, DefaultAuthorizationPolicy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS runs a test to see if a specific instance of DefaultAuthorizationPolicy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS(subject DefaultAuthorizationPolicy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUS instances for property testing - lazily instantiated by
+// DefaultAuthorizationPolicy_STATUSGenerator()
+var defaultAuthorizationPolicy_STATUSGenerator gopter.Gen
+
+// DefaultAuthorizationPolicy_STATUSGenerator returns a generator of DefaultAuthorizationPolicy_STATUS instances for property testing.
+// We first initialize defaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUSGenerator() gopter.Gen {
+ if defaultAuthorizationPolicy_STATUSGenerator != nil {
+ return defaultAuthorizationPolicy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ defaultAuthorizationPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ defaultAuthorizationPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy_STATUS{}), generators)
+
+ return defaultAuthorizationPolicy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedApplications"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedPrincipals"] = gen.PtrOf(AllowedPrincipals_STATUSGenerator())
+}
+
+func Test_EncryptionSettings_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from EncryptionSettings to EncryptionSettings via AssignProperties_To_EncryptionSettings & AssignProperties_From_EncryptionSettings returns original",
+ prop.ForAll(RunPropertyAssignmentTestForEncryptionSettings, EncryptionSettingsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForEncryptionSettings tests if a specific instance of EncryptionSettings can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForEncryptionSettings(subject EncryptionSettings) 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.EncryptionSettings
+ err := copied.AssignProperties_To_EncryptionSettings(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual EncryptionSettings
+ err = actual.AssignProperties_From_EncryptionSettings(&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_EncryptionSettings_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 EncryptionSettings via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEncryptionSettings, EncryptionSettingsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEncryptionSettings runs a test to see if a specific instance of EncryptionSettings round trips to JSON and back losslessly
+func RunJSONSerializationTestForEncryptionSettings(subject EncryptionSettings) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EncryptionSettings
+ 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 EncryptionSettings instances for property testing - lazily instantiated by EncryptionSettingsGenerator()
+var encryptionSettingsGenerator gopter.Gen
+
+// EncryptionSettingsGenerator returns a generator of EncryptionSettings instances for property testing.
+func EncryptionSettingsGenerator() gopter.Gen {
+ if encryptionSettingsGenerator != nil {
+ return encryptionSettingsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEncryptionSettings(generators)
+ encryptionSettingsGenerator = gen.Struct(reflect.TypeOf(EncryptionSettings{}), generators)
+
+ return encryptionSettingsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEncryptionSettings is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEncryptionSettings(gens map[string]gopter.Gen) {
+ gens["ContainerAppAuthEncryptionSecretName"] = gen.PtrOf(gen.AlphaString())
+ gens["ContainerAppAuthSigningSecretName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_EncryptionSettings_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from EncryptionSettings_STATUS to EncryptionSettings_STATUS via AssignProperties_To_EncryptionSettings_STATUS & AssignProperties_From_EncryptionSettings_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForEncryptionSettings_STATUS, EncryptionSettings_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForEncryptionSettings_STATUS tests if a specific instance of EncryptionSettings_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForEncryptionSettings_STATUS(subject EncryptionSettings_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.EncryptionSettings_STATUS
+ err := copied.AssignProperties_To_EncryptionSettings_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual EncryptionSettings_STATUS
+ err = actual.AssignProperties_From_EncryptionSettings_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_EncryptionSettings_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 EncryptionSettings_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEncryptionSettings_STATUS, EncryptionSettings_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEncryptionSettings_STATUS runs a test to see if a specific instance of EncryptionSettings_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForEncryptionSettings_STATUS(subject EncryptionSettings_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EncryptionSettings_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 EncryptionSettings_STATUS instances for property testing - lazily instantiated by
+// EncryptionSettings_STATUSGenerator()
+var encryptionSettings_STATUSGenerator gopter.Gen
+
+// EncryptionSettings_STATUSGenerator returns a generator of EncryptionSettings_STATUS instances for property testing.
+func EncryptionSettings_STATUSGenerator() gopter.Gen {
+ if encryptionSettings_STATUSGenerator != nil {
+ return encryptionSettings_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS(generators)
+ encryptionSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(EncryptionSettings_STATUS{}), generators)
+
+ return encryptionSettings_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["ContainerAppAuthEncryptionSecretName"] = gen.PtrOf(gen.AlphaString())
+ gens["ContainerAppAuthSigningSecretName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Facebook_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Facebook to Facebook via AssignProperties_To_Facebook & AssignProperties_From_Facebook returns original",
+ prop.ForAll(RunPropertyAssignmentTestForFacebook, FacebookGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForFacebook tests if a specific instance of Facebook can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForFacebook(subject Facebook) 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.Facebook
+ err := copied.AssignProperties_To_Facebook(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Facebook
+ err = actual.AssignProperties_From_Facebook(&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_Facebook_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 Facebook via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForFacebook, FacebookGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForFacebook runs a test to see if a specific instance of Facebook round trips to JSON and back losslessly
+func RunJSONSerializationTestForFacebook(subject Facebook) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Facebook
+ 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 Facebook instances for property testing - lazily instantiated by FacebookGenerator()
+var facebookGenerator gopter.Gen
+
+// FacebookGenerator returns a generator of Facebook instances for property testing.
+// We first initialize facebookGenerator 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 FacebookGenerator() gopter.Gen {
+ if facebookGenerator != nil {
+ return facebookGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook(generators)
+ facebookGenerator = gen.Struct(reflect.TypeOf(Facebook{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook(generators)
+ AddRelatedPropertyGeneratorsForFacebook(generators)
+ facebookGenerator = gen.Struct(reflect.TypeOf(Facebook{}), generators)
+
+ return facebookGenerator
+}
+
+// AddIndependentPropertyGeneratorsForFacebook is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForFacebook(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["GraphApiVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForFacebook is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForFacebook(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(AppRegistrationGenerator())
+}
+
+func Test_Facebook_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Facebook_STATUS to Facebook_STATUS via AssignProperties_To_Facebook_STATUS & AssignProperties_From_Facebook_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForFacebook_STATUS, Facebook_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForFacebook_STATUS tests if a specific instance of Facebook_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForFacebook_STATUS(subject Facebook_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.Facebook_STATUS
+ err := copied.AssignProperties_To_Facebook_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Facebook_STATUS
+ err = actual.AssignProperties_From_Facebook_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_Facebook_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 Facebook_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForFacebook_STATUS, Facebook_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForFacebook_STATUS runs a test to see if a specific instance of Facebook_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForFacebook_STATUS(subject Facebook_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Facebook_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 Facebook_STATUS instances for property testing - lazily instantiated by Facebook_STATUSGenerator()
+var facebook_STATUSGenerator gopter.Gen
+
+// Facebook_STATUSGenerator returns a generator of Facebook_STATUS instances for property testing.
+// We first initialize facebook_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 Facebook_STATUSGenerator() gopter.Gen {
+ if facebook_STATUSGenerator != nil {
+ return facebook_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook_STATUS(generators)
+ facebook_STATUSGenerator = gen.Struct(reflect.TypeOf(Facebook_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook_STATUS(generators)
+ AddRelatedPropertyGeneratorsForFacebook_STATUS(generators)
+ facebook_STATUSGenerator = gen.Struct(reflect.TypeOf(Facebook_STATUS{}), generators)
+
+ return facebook_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForFacebook_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForFacebook_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["GraphApiVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForFacebook_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForFacebook_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AppRegistration_STATUSGenerator())
+}
+
+func Test_ForwardProxy_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ForwardProxy to ForwardProxy via AssignProperties_To_ForwardProxy & AssignProperties_From_ForwardProxy returns original",
+ prop.ForAll(RunPropertyAssignmentTestForForwardProxy, ForwardProxyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForForwardProxy tests if a specific instance of ForwardProxy can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForForwardProxy(subject ForwardProxy) 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.ForwardProxy
+ err := copied.AssignProperties_To_ForwardProxy(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ForwardProxy
+ err = actual.AssignProperties_From_ForwardProxy(&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_ForwardProxy_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 ForwardProxy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForForwardProxy, ForwardProxyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForForwardProxy runs a test to see if a specific instance of ForwardProxy round trips to JSON and back losslessly
+func RunJSONSerializationTestForForwardProxy(subject ForwardProxy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ForwardProxy
+ 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 ForwardProxy instances for property testing - lazily instantiated by ForwardProxyGenerator()
+var forwardProxyGenerator gopter.Gen
+
+// ForwardProxyGenerator returns a generator of ForwardProxy instances for property testing.
+func ForwardProxyGenerator() gopter.Gen {
+ if forwardProxyGenerator != nil {
+ return forwardProxyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForForwardProxy(generators)
+ forwardProxyGenerator = gen.Struct(reflect.TypeOf(ForwardProxy{}), generators)
+
+ return forwardProxyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForForwardProxy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForForwardProxy(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.OneConstOf(ForwardProxy_Convention_Custom, ForwardProxy_Convention_NoProxy, ForwardProxy_Convention_Standard))
+ gens["CustomHostHeaderName"] = gen.PtrOf(gen.AlphaString())
+ gens["CustomProtoHeaderName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ForwardProxy_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ForwardProxy_STATUS to ForwardProxy_STATUS via AssignProperties_To_ForwardProxy_STATUS & AssignProperties_From_ForwardProxy_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForForwardProxy_STATUS, ForwardProxy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForForwardProxy_STATUS tests if a specific instance of ForwardProxy_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForForwardProxy_STATUS(subject ForwardProxy_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.ForwardProxy_STATUS
+ err := copied.AssignProperties_To_ForwardProxy_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ForwardProxy_STATUS
+ err = actual.AssignProperties_From_ForwardProxy_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_ForwardProxy_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 ForwardProxy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForForwardProxy_STATUS, ForwardProxy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForForwardProxy_STATUS runs a test to see if a specific instance of ForwardProxy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForForwardProxy_STATUS(subject ForwardProxy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ForwardProxy_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 ForwardProxy_STATUS instances for property testing - lazily instantiated by
+// ForwardProxy_STATUSGenerator()
+var forwardProxy_STATUSGenerator gopter.Gen
+
+// ForwardProxy_STATUSGenerator returns a generator of ForwardProxy_STATUS instances for property testing.
+func ForwardProxy_STATUSGenerator() gopter.Gen {
+ if forwardProxy_STATUSGenerator != nil {
+ return forwardProxy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForForwardProxy_STATUS(generators)
+ forwardProxy_STATUSGenerator = gen.Struct(reflect.TypeOf(ForwardProxy_STATUS{}), generators)
+
+ return forwardProxy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForForwardProxy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForForwardProxy_STATUS(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.OneConstOf(ForwardProxy_Convention_STATUS_Custom, ForwardProxy_Convention_STATUS_NoProxy, ForwardProxy_Convention_STATUS_Standard))
+ gens["CustomHostHeaderName"] = gen.PtrOf(gen.AlphaString())
+ gens["CustomProtoHeaderName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_GitHub_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from GitHub to GitHub via AssignProperties_To_GitHub & AssignProperties_From_GitHub returns original",
+ prop.ForAll(RunPropertyAssignmentTestForGitHub, GitHubGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForGitHub tests if a specific instance of GitHub can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForGitHub(subject GitHub) 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.GitHub
+ err := copied.AssignProperties_To_GitHub(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual GitHub
+ err = actual.AssignProperties_From_GitHub(&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_GitHub_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 GitHub via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGitHub, GitHubGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGitHub runs a test to see if a specific instance of GitHub round trips to JSON and back losslessly
+func RunJSONSerializationTestForGitHub(subject GitHub) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GitHub
+ 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 GitHub instances for property testing - lazily instantiated by GitHubGenerator()
+var gitHubGenerator gopter.Gen
+
+// GitHubGenerator returns a generator of GitHub instances for property testing.
+// We first initialize gitHubGenerator 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 GitHubGenerator() gopter.Gen {
+ if gitHubGenerator != nil {
+ return gitHubGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub(generators)
+ gitHubGenerator = gen.Struct(reflect.TypeOf(GitHub{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub(generators)
+ AddRelatedPropertyGeneratorsForGitHub(generators)
+ gitHubGenerator = gen.Struct(reflect.TypeOf(GitHub{}), generators)
+
+ return gitHubGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGitHub is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGitHub(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGitHub is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGitHub(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistrationGenerator())
+}
+
+func Test_GitHub_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from GitHub_STATUS to GitHub_STATUS via AssignProperties_To_GitHub_STATUS & AssignProperties_From_GitHub_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForGitHub_STATUS, GitHub_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForGitHub_STATUS tests if a specific instance of GitHub_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForGitHub_STATUS(subject GitHub_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.GitHub_STATUS
+ err := copied.AssignProperties_To_GitHub_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual GitHub_STATUS
+ err = actual.AssignProperties_From_GitHub_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_GitHub_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 GitHub_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGitHub_STATUS, GitHub_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGitHub_STATUS runs a test to see if a specific instance of GitHub_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGitHub_STATUS(subject GitHub_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GitHub_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 GitHub_STATUS instances for property testing - lazily instantiated by GitHub_STATUSGenerator()
+var gitHub_STATUSGenerator gopter.Gen
+
+// GitHub_STATUSGenerator returns a generator of GitHub_STATUS instances for property testing.
+// We first initialize gitHub_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 GitHub_STATUSGenerator() gopter.Gen {
+ if gitHub_STATUSGenerator != nil {
+ return gitHub_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub_STATUS(generators)
+ gitHub_STATUSGenerator = gen.Struct(reflect.TypeOf(GitHub_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub_STATUS(generators)
+ AddRelatedPropertyGeneratorsForGitHub_STATUS(generators)
+ gitHub_STATUSGenerator = gen.Struct(reflect.TypeOf(GitHub_STATUS{}), generators)
+
+ return gitHub_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGitHub_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGitHub_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGitHub_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGitHub_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistration_STATUSGenerator())
+}
+
+func Test_GlobalValidation_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from GlobalValidation to GlobalValidation via AssignProperties_To_GlobalValidation & AssignProperties_From_GlobalValidation returns original",
+ prop.ForAll(RunPropertyAssignmentTestForGlobalValidation, GlobalValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForGlobalValidation tests if a specific instance of GlobalValidation can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForGlobalValidation(subject GlobalValidation) 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.GlobalValidation
+ err := copied.AssignProperties_To_GlobalValidation(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual GlobalValidation
+ err = actual.AssignProperties_From_GlobalValidation(&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_GlobalValidation_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 GlobalValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGlobalValidation, GlobalValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGlobalValidation runs a test to see if a specific instance of GlobalValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForGlobalValidation(subject GlobalValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GlobalValidation
+ 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 GlobalValidation instances for property testing - lazily instantiated by GlobalValidationGenerator()
+var globalValidationGenerator gopter.Gen
+
+// GlobalValidationGenerator returns a generator of GlobalValidation instances for property testing.
+func GlobalValidationGenerator() gopter.Gen {
+ if globalValidationGenerator != nil {
+ return globalValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGlobalValidation(generators)
+ globalValidationGenerator = gen.Struct(reflect.TypeOf(GlobalValidation{}), generators)
+
+ return globalValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGlobalValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGlobalValidation(gens map[string]gopter.Gen) {
+ gens["ExcludedPaths"] = gen.SliceOf(gen.AlphaString())
+ gens["RedirectToProvider"] = gen.PtrOf(gen.AlphaString())
+ gens["UnauthenticatedClientAction"] = gen.PtrOf(gen.OneConstOf(
+ GlobalValidation_UnauthenticatedClientAction_AllowAnonymous,
+ GlobalValidation_UnauthenticatedClientAction_RedirectToLoginPage,
+ GlobalValidation_UnauthenticatedClientAction_Return401,
+ GlobalValidation_UnauthenticatedClientAction_Return403))
+}
+
+func Test_GlobalValidation_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from GlobalValidation_STATUS to GlobalValidation_STATUS via AssignProperties_To_GlobalValidation_STATUS & AssignProperties_From_GlobalValidation_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForGlobalValidation_STATUS, GlobalValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForGlobalValidation_STATUS tests if a specific instance of GlobalValidation_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForGlobalValidation_STATUS(subject GlobalValidation_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.GlobalValidation_STATUS
+ err := copied.AssignProperties_To_GlobalValidation_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual GlobalValidation_STATUS
+ err = actual.AssignProperties_From_GlobalValidation_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_GlobalValidation_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 GlobalValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGlobalValidation_STATUS, GlobalValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGlobalValidation_STATUS runs a test to see if a specific instance of GlobalValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGlobalValidation_STATUS(subject GlobalValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GlobalValidation_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 GlobalValidation_STATUS instances for property testing - lazily instantiated by
+// GlobalValidation_STATUSGenerator()
+var globalValidation_STATUSGenerator gopter.Gen
+
+// GlobalValidation_STATUSGenerator returns a generator of GlobalValidation_STATUS instances for property testing.
+func GlobalValidation_STATUSGenerator() gopter.Gen {
+ if globalValidation_STATUSGenerator != nil {
+ return globalValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGlobalValidation_STATUS(generators)
+ globalValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(GlobalValidation_STATUS{}), generators)
+
+ return globalValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGlobalValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGlobalValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["ExcludedPaths"] = gen.SliceOf(gen.AlphaString())
+ gens["RedirectToProvider"] = gen.PtrOf(gen.AlphaString())
+ gens["UnauthenticatedClientAction"] = gen.PtrOf(gen.OneConstOf(
+ GlobalValidation_UnauthenticatedClientAction_STATUS_AllowAnonymous,
+ GlobalValidation_UnauthenticatedClientAction_STATUS_RedirectToLoginPage,
+ GlobalValidation_UnauthenticatedClientAction_STATUS_Return401,
+ GlobalValidation_UnauthenticatedClientAction_STATUS_Return403))
+}
+
+func Test_Google_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Google to Google via AssignProperties_To_Google & AssignProperties_From_Google returns original",
+ prop.ForAll(RunPropertyAssignmentTestForGoogle, GoogleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForGoogle tests if a specific instance of Google can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForGoogle(subject Google) 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.Google
+ err := copied.AssignProperties_To_Google(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Google
+ err = actual.AssignProperties_From_Google(&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_Google_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 Google via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGoogle, GoogleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGoogle runs a test to see if a specific instance of Google round trips to JSON and back losslessly
+func RunJSONSerializationTestForGoogle(subject Google) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Google
+ 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 Google instances for property testing - lazily instantiated by GoogleGenerator()
+var googleGenerator gopter.Gen
+
+// GoogleGenerator returns a generator of Google instances for property testing.
+// We first initialize googleGenerator 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 GoogleGenerator() gopter.Gen {
+ if googleGenerator != nil {
+ return googleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle(generators)
+ googleGenerator = gen.Struct(reflect.TypeOf(Google{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle(generators)
+ AddRelatedPropertyGeneratorsForGoogle(generators)
+ googleGenerator = gen.Struct(reflect.TypeOf(Google{}), generators)
+
+ return googleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGoogle is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGoogle(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGoogle is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGoogle(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistrationGenerator())
+ gens["Validation"] = gen.PtrOf(AllowedAudiencesValidationGenerator())
+}
+
+func Test_Google_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Google_STATUS to Google_STATUS via AssignProperties_To_Google_STATUS & AssignProperties_From_Google_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForGoogle_STATUS, Google_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForGoogle_STATUS tests if a specific instance of Google_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForGoogle_STATUS(subject Google_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.Google_STATUS
+ err := copied.AssignProperties_To_Google_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Google_STATUS
+ err = actual.AssignProperties_From_Google_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_Google_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 Google_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGoogle_STATUS, Google_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGoogle_STATUS runs a test to see if a specific instance of Google_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGoogle_STATUS(subject Google_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Google_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 Google_STATUS instances for property testing - lazily instantiated by Google_STATUSGenerator()
+var google_STATUSGenerator gopter.Gen
+
+// Google_STATUSGenerator returns a generator of Google_STATUS instances for property testing.
+// We first initialize google_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 Google_STATUSGenerator() gopter.Gen {
+ if google_STATUSGenerator != nil {
+ return google_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle_STATUS(generators)
+ google_STATUSGenerator = gen.Struct(reflect.TypeOf(Google_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle_STATUS(generators)
+ AddRelatedPropertyGeneratorsForGoogle_STATUS(generators)
+ google_STATUSGenerator = gen.Struct(reflect.TypeOf(Google_STATUS{}), generators)
+
+ return google_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGoogle_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGoogle_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGoogle_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGoogle_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistration_STATUSGenerator())
+ gens["Validation"] = gen.PtrOf(AllowedAudiencesValidation_STATUSGenerator())
+}
+
+func Test_HttpSettings_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from HttpSettings to HttpSettings via AssignProperties_To_HttpSettings & AssignProperties_From_HttpSettings returns original",
+ prop.ForAll(RunPropertyAssignmentTestForHttpSettings, HttpSettingsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForHttpSettings tests if a specific instance of HttpSettings can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForHttpSettings(subject HttpSettings) 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.HttpSettings
+ err := copied.AssignProperties_To_HttpSettings(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual HttpSettings
+ err = actual.AssignProperties_From_HttpSettings(&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_HttpSettings_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 HttpSettings via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettings, HttpSettingsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettings runs a test to see if a specific instance of HttpSettings round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettings(subject HttpSettings) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettings
+ 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 HttpSettings instances for property testing - lazily instantiated by HttpSettingsGenerator()
+var httpSettingsGenerator gopter.Gen
+
+// HttpSettingsGenerator returns a generator of HttpSettings instances for property testing.
+// We first initialize httpSettingsGenerator 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 HttpSettingsGenerator() gopter.Gen {
+ if httpSettingsGenerator != nil {
+ return httpSettingsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings(generators)
+ httpSettingsGenerator = gen.Struct(reflect.TypeOf(HttpSettings{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings(generators)
+ AddRelatedPropertyGeneratorsForHttpSettings(generators)
+ httpSettingsGenerator = gen.Struct(reflect.TypeOf(HttpSettings{}), generators)
+
+ return httpSettingsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettings is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettings(gens map[string]gopter.Gen) {
+ gens["RequireHttps"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForHttpSettings is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpSettings(gens map[string]gopter.Gen) {
+ gens["ForwardProxy"] = gen.PtrOf(ForwardProxyGenerator())
+ gens["Routes"] = gen.PtrOf(HttpSettingsRoutesGenerator())
+}
+
+func Test_HttpSettingsRoutes_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from HttpSettingsRoutes to HttpSettingsRoutes via AssignProperties_To_HttpSettingsRoutes & AssignProperties_From_HttpSettingsRoutes returns original",
+ prop.ForAll(RunPropertyAssignmentTestForHttpSettingsRoutes, HttpSettingsRoutesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForHttpSettingsRoutes tests if a specific instance of HttpSettingsRoutes can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForHttpSettingsRoutes(subject HttpSettingsRoutes) 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.HttpSettingsRoutes
+ err := copied.AssignProperties_To_HttpSettingsRoutes(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual HttpSettingsRoutes
+ err = actual.AssignProperties_From_HttpSettingsRoutes(&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_HttpSettingsRoutes_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 HttpSettingsRoutes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettingsRoutes, HttpSettingsRoutesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettingsRoutes runs a test to see if a specific instance of HttpSettingsRoutes round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettingsRoutes(subject HttpSettingsRoutes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettingsRoutes
+ 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 HttpSettingsRoutes instances for property testing - lazily instantiated by HttpSettingsRoutesGenerator()
+var httpSettingsRoutesGenerator gopter.Gen
+
+// HttpSettingsRoutesGenerator returns a generator of HttpSettingsRoutes instances for property testing.
+func HttpSettingsRoutesGenerator() gopter.Gen {
+ if httpSettingsRoutesGenerator != nil {
+ return httpSettingsRoutesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettingsRoutes(generators)
+ httpSettingsRoutesGenerator = gen.Struct(reflect.TypeOf(HttpSettingsRoutes{}), generators)
+
+ return httpSettingsRoutesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettingsRoutes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettingsRoutes(gens map[string]gopter.Gen) {
+ gens["ApiPrefix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_HttpSettingsRoutes_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from HttpSettingsRoutes_STATUS to HttpSettingsRoutes_STATUS via AssignProperties_To_HttpSettingsRoutes_STATUS & AssignProperties_From_HttpSettingsRoutes_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForHttpSettingsRoutes_STATUS, HttpSettingsRoutes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForHttpSettingsRoutes_STATUS tests if a specific instance of HttpSettingsRoutes_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForHttpSettingsRoutes_STATUS(subject HttpSettingsRoutes_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.HttpSettingsRoutes_STATUS
+ err := copied.AssignProperties_To_HttpSettingsRoutes_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual HttpSettingsRoutes_STATUS
+ err = actual.AssignProperties_From_HttpSettingsRoutes_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_HttpSettingsRoutes_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 HttpSettingsRoutes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettingsRoutes_STATUS, HttpSettingsRoutes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettingsRoutes_STATUS runs a test to see if a specific instance of HttpSettingsRoutes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettingsRoutes_STATUS(subject HttpSettingsRoutes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettingsRoutes_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 HttpSettingsRoutes_STATUS instances for property testing - lazily instantiated by
+// HttpSettingsRoutes_STATUSGenerator()
+var httpSettingsRoutes_STATUSGenerator gopter.Gen
+
+// HttpSettingsRoutes_STATUSGenerator returns a generator of HttpSettingsRoutes_STATUS instances for property testing.
+func HttpSettingsRoutes_STATUSGenerator() gopter.Gen {
+ if httpSettingsRoutes_STATUSGenerator != nil {
+ return httpSettingsRoutes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS(generators)
+ httpSettingsRoutes_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettingsRoutes_STATUS{}), generators)
+
+ return httpSettingsRoutes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS(gens map[string]gopter.Gen) {
+ gens["ApiPrefix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_HttpSettings_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from HttpSettings_STATUS to HttpSettings_STATUS via AssignProperties_To_HttpSettings_STATUS & AssignProperties_From_HttpSettings_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForHttpSettings_STATUS, HttpSettings_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForHttpSettings_STATUS tests if a specific instance of HttpSettings_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForHttpSettings_STATUS(subject HttpSettings_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.HttpSettings_STATUS
+ err := copied.AssignProperties_To_HttpSettings_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual HttpSettings_STATUS
+ err = actual.AssignProperties_From_HttpSettings_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_HttpSettings_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 HttpSettings_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettings_STATUS, HttpSettings_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettings_STATUS runs a test to see if a specific instance of HttpSettings_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettings_STATUS(subject HttpSettings_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettings_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 HttpSettings_STATUS instances for property testing - lazily instantiated by
+// HttpSettings_STATUSGenerator()
+var httpSettings_STATUSGenerator gopter.Gen
+
+// HttpSettings_STATUSGenerator returns a generator of HttpSettings_STATUS instances for property testing.
+// We first initialize httpSettings_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 HttpSettings_STATUSGenerator() gopter.Gen {
+ if httpSettings_STATUSGenerator != nil {
+ return httpSettings_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings_STATUS(generators)
+ httpSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettings_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings_STATUS(generators)
+ AddRelatedPropertyGeneratorsForHttpSettings_STATUS(generators)
+ httpSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettings_STATUS{}), generators)
+
+ return httpSettings_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettings_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["RequireHttps"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForHttpSettings_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["ForwardProxy"] = gen.PtrOf(ForwardProxy_STATUSGenerator())
+ gens["Routes"] = gen.PtrOf(HttpSettingsRoutes_STATUSGenerator())
+}
+
+func Test_IdentityProviders_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from IdentityProviders to IdentityProviders via AssignProperties_To_IdentityProviders & AssignProperties_From_IdentityProviders returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIdentityProviders, IdentityProvidersGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIdentityProviders tests if a specific instance of IdentityProviders can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIdentityProviders(subject IdentityProviders) 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.IdentityProviders
+ err := copied.AssignProperties_To_IdentityProviders(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual IdentityProviders
+ err = actual.AssignProperties_From_IdentityProviders(&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_IdentityProviders_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 IdentityProviders via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIdentityProviders, IdentityProvidersGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIdentityProviders runs a test to see if a specific instance of IdentityProviders round trips to JSON and back losslessly
+func RunJSONSerializationTestForIdentityProviders(subject IdentityProviders) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IdentityProviders
+ 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 IdentityProviders instances for property testing - lazily instantiated by IdentityProvidersGenerator()
+var identityProvidersGenerator gopter.Gen
+
+// IdentityProvidersGenerator returns a generator of IdentityProviders instances for property testing.
+func IdentityProvidersGenerator() gopter.Gen {
+ if identityProvidersGenerator != nil {
+ return identityProvidersGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForIdentityProviders(generators)
+ identityProvidersGenerator = gen.Struct(reflect.TypeOf(IdentityProviders{}), generators)
+
+ return identityProvidersGenerator
+}
+
+// AddRelatedPropertyGeneratorsForIdentityProviders is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIdentityProviders(gens map[string]gopter.Gen) {
+ gens["Apple"] = gen.PtrOf(AppleGenerator())
+ gens["AzureActiveDirectory"] = gen.PtrOf(AzureActiveDirectoryGenerator())
+ gens["AzureStaticWebApps"] = gen.PtrOf(AzureStaticWebAppsGenerator())
+ gens["CustomOpenIdConnectProviders"] = gen.MapOf(
+ gen.AlphaString(),
+ CustomOpenIdConnectProviderGenerator())
+ gens["Facebook"] = gen.PtrOf(FacebookGenerator())
+ gens["GitHub"] = gen.PtrOf(GitHubGenerator())
+ gens["Google"] = gen.PtrOf(GoogleGenerator())
+ gens["Twitter"] = gen.PtrOf(TwitterGenerator())
+}
+
+func Test_IdentityProviders_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from IdentityProviders_STATUS to IdentityProviders_STATUS via AssignProperties_To_IdentityProviders_STATUS & AssignProperties_From_IdentityProviders_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIdentityProviders_STATUS, IdentityProviders_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIdentityProviders_STATUS tests if a specific instance of IdentityProviders_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIdentityProviders_STATUS(subject IdentityProviders_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.IdentityProviders_STATUS
+ err := copied.AssignProperties_To_IdentityProviders_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual IdentityProviders_STATUS
+ err = actual.AssignProperties_From_IdentityProviders_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_IdentityProviders_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 IdentityProviders_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIdentityProviders_STATUS, IdentityProviders_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIdentityProviders_STATUS runs a test to see if a specific instance of IdentityProviders_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIdentityProviders_STATUS(subject IdentityProviders_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IdentityProviders_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 IdentityProviders_STATUS instances for property testing - lazily instantiated by
+// IdentityProviders_STATUSGenerator()
+var identityProviders_STATUSGenerator gopter.Gen
+
+// IdentityProviders_STATUSGenerator returns a generator of IdentityProviders_STATUS instances for property testing.
+func IdentityProviders_STATUSGenerator() gopter.Gen {
+ if identityProviders_STATUSGenerator != nil {
+ return identityProviders_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForIdentityProviders_STATUS(generators)
+ identityProviders_STATUSGenerator = gen.Struct(reflect.TypeOf(IdentityProviders_STATUS{}), generators)
+
+ return identityProviders_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForIdentityProviders_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIdentityProviders_STATUS(gens map[string]gopter.Gen) {
+ gens["Apple"] = gen.PtrOf(Apple_STATUSGenerator())
+ gens["AzureActiveDirectory"] = gen.PtrOf(AzureActiveDirectory_STATUSGenerator())
+ gens["AzureStaticWebApps"] = gen.PtrOf(AzureStaticWebApps_STATUSGenerator())
+ gens["CustomOpenIdConnectProviders"] = gen.MapOf(
+ gen.AlphaString(),
+ CustomOpenIdConnectProvider_STATUSGenerator())
+ gens["Facebook"] = gen.PtrOf(Facebook_STATUSGenerator())
+ gens["GitHub"] = gen.PtrOf(GitHub_STATUSGenerator())
+ gens["Google"] = gen.PtrOf(Google_STATUSGenerator())
+ gens["Twitter"] = gen.PtrOf(Twitter_STATUSGenerator())
+}
+
+func Test_JwtClaimChecks_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JwtClaimChecks to JwtClaimChecks via AssignProperties_To_JwtClaimChecks & AssignProperties_From_JwtClaimChecks returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJwtClaimChecks, JwtClaimChecksGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJwtClaimChecks tests if a specific instance of JwtClaimChecks can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJwtClaimChecks(subject JwtClaimChecks) 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.JwtClaimChecks
+ err := copied.AssignProperties_To_JwtClaimChecks(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JwtClaimChecks
+ err = actual.AssignProperties_From_JwtClaimChecks(&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_JwtClaimChecks_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 JwtClaimChecks via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJwtClaimChecks, JwtClaimChecksGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJwtClaimChecks runs a test to see if a specific instance of JwtClaimChecks round trips to JSON and back losslessly
+func RunJSONSerializationTestForJwtClaimChecks(subject JwtClaimChecks) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JwtClaimChecks
+ 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 JwtClaimChecks instances for property testing - lazily instantiated by JwtClaimChecksGenerator()
+var jwtClaimChecksGenerator gopter.Gen
+
+// JwtClaimChecksGenerator returns a generator of JwtClaimChecks instances for property testing.
+func JwtClaimChecksGenerator() gopter.Gen {
+ if jwtClaimChecksGenerator != nil {
+ return jwtClaimChecksGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJwtClaimChecks(generators)
+ jwtClaimChecksGenerator = gen.Struct(reflect.TypeOf(JwtClaimChecks{}), generators)
+
+ return jwtClaimChecksGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJwtClaimChecks is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJwtClaimChecks(gens map[string]gopter.Gen) {
+ gens["AllowedClientApplications"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedGroups"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_JwtClaimChecks_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JwtClaimChecks_STATUS to JwtClaimChecks_STATUS via AssignProperties_To_JwtClaimChecks_STATUS & AssignProperties_From_JwtClaimChecks_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJwtClaimChecks_STATUS, JwtClaimChecks_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJwtClaimChecks_STATUS tests if a specific instance of JwtClaimChecks_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJwtClaimChecks_STATUS(subject JwtClaimChecks_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.JwtClaimChecks_STATUS
+ err := copied.AssignProperties_To_JwtClaimChecks_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JwtClaimChecks_STATUS
+ err = actual.AssignProperties_From_JwtClaimChecks_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_JwtClaimChecks_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 JwtClaimChecks_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJwtClaimChecks_STATUS, JwtClaimChecks_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJwtClaimChecks_STATUS runs a test to see if a specific instance of JwtClaimChecks_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJwtClaimChecks_STATUS(subject JwtClaimChecks_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JwtClaimChecks_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 JwtClaimChecks_STATUS instances for property testing - lazily instantiated by
+// JwtClaimChecks_STATUSGenerator()
+var jwtClaimChecks_STATUSGenerator gopter.Gen
+
+// JwtClaimChecks_STATUSGenerator returns a generator of JwtClaimChecks_STATUS instances for property testing.
+func JwtClaimChecks_STATUSGenerator() gopter.Gen {
+ if jwtClaimChecks_STATUSGenerator != nil {
+ return jwtClaimChecks_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS(generators)
+ jwtClaimChecks_STATUSGenerator = gen.Struct(reflect.TypeOf(JwtClaimChecks_STATUS{}), generators)
+
+ return jwtClaimChecks_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedClientApplications"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedGroups"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_Login_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Login to Login via AssignProperties_To_Login & AssignProperties_From_Login returns original",
+ prop.ForAll(RunPropertyAssignmentTestForLogin, LoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForLogin tests if a specific instance of Login can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForLogin(subject Login) 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.Login
+ err := copied.AssignProperties_To_Login(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Login
+ err = actual.AssignProperties_From_Login(&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_Login_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 Login via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogin, LoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogin runs a test to see if a specific instance of Login round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogin(subject Login) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Login
+ 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 Login instances for property testing - lazily instantiated by LoginGenerator()
+var loginGenerator gopter.Gen
+
+// LoginGenerator returns a generator of Login instances for property testing.
+// We first initialize loginGenerator 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 LoginGenerator() gopter.Gen {
+ if loginGenerator != nil {
+ return loginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin(generators)
+ loginGenerator = gen.Struct(reflect.TypeOf(Login{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin(generators)
+ AddRelatedPropertyGeneratorsForLogin(generators)
+ loginGenerator = gen.Struct(reflect.TypeOf(Login{}), generators)
+
+ return loginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogin(gens map[string]gopter.Gen) {
+ gens["AllowedExternalRedirectUrls"] = gen.SliceOf(gen.AlphaString())
+ gens["PreserveUrlFragmentsForLogins"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForLogin is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForLogin(gens map[string]gopter.Gen) {
+ gens["CookieExpiration"] = gen.PtrOf(CookieExpirationGenerator())
+ gens["Nonce"] = gen.PtrOf(NonceGenerator())
+ gens["Routes"] = gen.PtrOf(LoginRoutesGenerator())
+ gens["TokenStore"] = gen.PtrOf(TokenStoreGenerator())
+}
+
+func Test_LoginRoutes_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from LoginRoutes to LoginRoutes via AssignProperties_To_LoginRoutes & AssignProperties_From_LoginRoutes returns original",
+ prop.ForAll(RunPropertyAssignmentTestForLoginRoutes, LoginRoutesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForLoginRoutes tests if a specific instance of LoginRoutes can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForLoginRoutes(subject LoginRoutes) 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.LoginRoutes
+ err := copied.AssignProperties_To_LoginRoutes(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual LoginRoutes
+ err = actual.AssignProperties_From_LoginRoutes(&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_LoginRoutes_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 LoginRoutes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginRoutes, LoginRoutesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginRoutes runs a test to see if a specific instance of LoginRoutes round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginRoutes(subject LoginRoutes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginRoutes
+ 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 LoginRoutes instances for property testing - lazily instantiated by LoginRoutesGenerator()
+var loginRoutesGenerator gopter.Gen
+
+// LoginRoutesGenerator returns a generator of LoginRoutes instances for property testing.
+func LoginRoutesGenerator() gopter.Gen {
+ if loginRoutesGenerator != nil {
+ return loginRoutesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginRoutes(generators)
+ loginRoutesGenerator = gen.Struct(reflect.TypeOf(LoginRoutes{}), generators)
+
+ return loginRoutesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginRoutes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginRoutes(gens map[string]gopter.Gen) {
+ gens["LogoutEndpoint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LoginRoutes_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from LoginRoutes_STATUS to LoginRoutes_STATUS via AssignProperties_To_LoginRoutes_STATUS & AssignProperties_From_LoginRoutes_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForLoginRoutes_STATUS, LoginRoutes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForLoginRoutes_STATUS tests if a specific instance of LoginRoutes_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForLoginRoutes_STATUS(subject LoginRoutes_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.LoginRoutes_STATUS
+ err := copied.AssignProperties_To_LoginRoutes_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual LoginRoutes_STATUS
+ err = actual.AssignProperties_From_LoginRoutes_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_LoginRoutes_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 LoginRoutes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginRoutes_STATUS, LoginRoutes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginRoutes_STATUS runs a test to see if a specific instance of LoginRoutes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginRoutes_STATUS(subject LoginRoutes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginRoutes_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 LoginRoutes_STATUS instances for property testing - lazily instantiated by LoginRoutes_STATUSGenerator()
+var loginRoutes_STATUSGenerator gopter.Gen
+
+// LoginRoutes_STATUSGenerator returns a generator of LoginRoutes_STATUS instances for property testing.
+func LoginRoutes_STATUSGenerator() gopter.Gen {
+ if loginRoutes_STATUSGenerator != nil {
+ return loginRoutes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginRoutes_STATUS(generators)
+ loginRoutes_STATUSGenerator = gen.Struct(reflect.TypeOf(LoginRoutes_STATUS{}), generators)
+
+ return loginRoutes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginRoutes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginRoutes_STATUS(gens map[string]gopter.Gen) {
+ gens["LogoutEndpoint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LoginScopes_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from LoginScopes to LoginScopes via AssignProperties_To_LoginScopes & AssignProperties_From_LoginScopes returns original",
+ prop.ForAll(RunPropertyAssignmentTestForLoginScopes, LoginScopesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForLoginScopes tests if a specific instance of LoginScopes can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForLoginScopes(subject LoginScopes) 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.LoginScopes
+ err := copied.AssignProperties_To_LoginScopes(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual LoginScopes
+ err = actual.AssignProperties_From_LoginScopes(&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_LoginScopes_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 LoginScopes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginScopes, LoginScopesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginScopes runs a test to see if a specific instance of LoginScopes round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginScopes(subject LoginScopes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginScopes
+ 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 LoginScopes instances for property testing - lazily instantiated by LoginScopesGenerator()
+var loginScopesGenerator gopter.Gen
+
+// LoginScopesGenerator returns a generator of LoginScopes instances for property testing.
+func LoginScopesGenerator() gopter.Gen {
+ if loginScopesGenerator != nil {
+ return loginScopesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginScopes(generators)
+ loginScopesGenerator = gen.Struct(reflect.TypeOf(LoginScopes{}), generators)
+
+ return loginScopesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginScopes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginScopes(gens map[string]gopter.Gen) {
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_LoginScopes_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from LoginScopes_STATUS to LoginScopes_STATUS via AssignProperties_To_LoginScopes_STATUS & AssignProperties_From_LoginScopes_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForLoginScopes_STATUS, LoginScopes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForLoginScopes_STATUS tests if a specific instance of LoginScopes_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForLoginScopes_STATUS(subject LoginScopes_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.LoginScopes_STATUS
+ err := copied.AssignProperties_To_LoginScopes_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual LoginScopes_STATUS
+ err = actual.AssignProperties_From_LoginScopes_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_LoginScopes_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 LoginScopes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginScopes_STATUS, LoginScopes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginScopes_STATUS runs a test to see if a specific instance of LoginScopes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginScopes_STATUS(subject LoginScopes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginScopes_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 LoginScopes_STATUS instances for property testing - lazily instantiated by LoginScopes_STATUSGenerator()
+var loginScopes_STATUSGenerator gopter.Gen
+
+// LoginScopes_STATUSGenerator returns a generator of LoginScopes_STATUS instances for property testing.
+func LoginScopes_STATUSGenerator() gopter.Gen {
+ if loginScopes_STATUSGenerator != nil {
+ return loginScopes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginScopes_STATUS(generators)
+ loginScopes_STATUSGenerator = gen.Struct(reflect.TypeOf(LoginScopes_STATUS{}), generators)
+
+ return loginScopes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginScopes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginScopes_STATUS(gens map[string]gopter.Gen) {
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_Login_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Login_STATUS to Login_STATUS via AssignProperties_To_Login_STATUS & AssignProperties_From_Login_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForLogin_STATUS, Login_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForLogin_STATUS tests if a specific instance of Login_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForLogin_STATUS(subject Login_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.Login_STATUS
+ err := copied.AssignProperties_To_Login_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Login_STATUS
+ err = actual.AssignProperties_From_Login_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_Login_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 Login_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogin_STATUS, Login_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogin_STATUS runs a test to see if a specific instance of Login_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogin_STATUS(subject Login_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Login_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 Login_STATUS instances for property testing - lazily instantiated by Login_STATUSGenerator()
+var login_STATUSGenerator gopter.Gen
+
+// Login_STATUSGenerator returns a generator of Login_STATUS instances for property testing.
+// We first initialize login_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 Login_STATUSGenerator() gopter.Gen {
+ if login_STATUSGenerator != nil {
+ return login_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin_STATUS(generators)
+ login_STATUSGenerator = gen.Struct(reflect.TypeOf(Login_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin_STATUS(generators)
+ AddRelatedPropertyGeneratorsForLogin_STATUS(generators)
+ login_STATUSGenerator = gen.Struct(reflect.TypeOf(Login_STATUS{}), generators)
+
+ return login_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedExternalRedirectUrls"] = gen.SliceOf(gen.AlphaString())
+ gens["PreserveUrlFragmentsForLogins"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForLogin_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["CookieExpiration"] = gen.PtrOf(CookieExpiration_STATUSGenerator())
+ gens["Nonce"] = gen.PtrOf(Nonce_STATUSGenerator())
+ gens["Routes"] = gen.PtrOf(LoginRoutes_STATUSGenerator())
+ gens["TokenStore"] = gen.PtrOf(TokenStore_STATUSGenerator())
+}
+
+func Test_Nonce_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Nonce to Nonce via AssignProperties_To_Nonce & AssignProperties_From_Nonce returns original",
+ prop.ForAll(RunPropertyAssignmentTestForNonce, NonceGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForNonce tests if a specific instance of Nonce can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForNonce(subject Nonce) 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.Nonce
+ err := copied.AssignProperties_To_Nonce(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Nonce
+ err = actual.AssignProperties_From_Nonce(&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_Nonce_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 Nonce via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForNonce, NonceGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForNonce runs a test to see if a specific instance of Nonce round trips to JSON and back losslessly
+func RunJSONSerializationTestForNonce(subject Nonce) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Nonce
+ 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 Nonce instances for property testing - lazily instantiated by NonceGenerator()
+var nonceGenerator gopter.Gen
+
+// NonceGenerator returns a generator of Nonce instances for property testing.
+func NonceGenerator() gopter.Gen {
+ if nonceGenerator != nil {
+ return nonceGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForNonce(generators)
+ nonceGenerator = gen.Struct(reflect.TypeOf(Nonce{}), generators)
+
+ return nonceGenerator
+}
+
+// AddIndependentPropertyGeneratorsForNonce is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForNonce(gens map[string]gopter.Gen) {
+ gens["NonceExpirationInterval"] = gen.PtrOf(gen.AlphaString())
+ gens["ValidateNonce"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_Nonce_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Nonce_STATUS to Nonce_STATUS via AssignProperties_To_Nonce_STATUS & AssignProperties_From_Nonce_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForNonce_STATUS, Nonce_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForNonce_STATUS tests if a specific instance of Nonce_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForNonce_STATUS(subject Nonce_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.Nonce_STATUS
+ err := copied.AssignProperties_To_Nonce_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Nonce_STATUS
+ err = actual.AssignProperties_From_Nonce_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_Nonce_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 Nonce_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForNonce_STATUS, Nonce_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForNonce_STATUS runs a test to see if a specific instance of Nonce_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForNonce_STATUS(subject Nonce_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Nonce_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 Nonce_STATUS instances for property testing - lazily instantiated by Nonce_STATUSGenerator()
+var nonce_STATUSGenerator gopter.Gen
+
+// Nonce_STATUSGenerator returns a generator of Nonce_STATUS instances for property testing.
+func Nonce_STATUSGenerator() gopter.Gen {
+ if nonce_STATUSGenerator != nil {
+ return nonce_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForNonce_STATUS(generators)
+ nonce_STATUSGenerator = gen.Struct(reflect.TypeOf(Nonce_STATUS{}), generators)
+
+ return nonce_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForNonce_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForNonce_STATUS(gens map[string]gopter.Gen) {
+ gens["NonceExpirationInterval"] = gen.PtrOf(gen.AlphaString())
+ gens["ValidateNonce"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_OpenIdConnectClientCredential_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from OpenIdConnectClientCredential to OpenIdConnectClientCredential via AssignProperties_To_OpenIdConnectClientCredential & AssignProperties_From_OpenIdConnectClientCredential returns original",
+ prop.ForAll(RunPropertyAssignmentTestForOpenIdConnectClientCredential, OpenIdConnectClientCredentialGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForOpenIdConnectClientCredential tests if a specific instance of OpenIdConnectClientCredential can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForOpenIdConnectClientCredential(subject OpenIdConnectClientCredential) 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.OpenIdConnectClientCredential
+ err := copied.AssignProperties_To_OpenIdConnectClientCredential(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual OpenIdConnectClientCredential
+ err = actual.AssignProperties_From_OpenIdConnectClientCredential(&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_OpenIdConnectClientCredential_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 OpenIdConnectClientCredential via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectClientCredential, OpenIdConnectClientCredentialGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectClientCredential runs a test to see if a specific instance of OpenIdConnectClientCredential round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectClientCredential(subject OpenIdConnectClientCredential) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectClientCredential
+ 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 OpenIdConnectClientCredential instances for property testing - lazily instantiated by
+// OpenIdConnectClientCredentialGenerator()
+var openIdConnectClientCredentialGenerator gopter.Gen
+
+// OpenIdConnectClientCredentialGenerator returns a generator of OpenIdConnectClientCredential instances for property testing.
+func OpenIdConnectClientCredentialGenerator() gopter.Gen {
+ if openIdConnectClientCredentialGenerator != nil {
+ return openIdConnectClientCredentialGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential(generators)
+ openIdConnectClientCredentialGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectClientCredential{}), generators)
+
+ return openIdConnectClientCredentialGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential(gens map[string]gopter.Gen) {
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["Method"] = gen.PtrOf(gen.OneConstOf(OpenIdConnectClientCredential_Method_ClientSecretPost))
+}
+
+func Test_OpenIdConnectClientCredential_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from OpenIdConnectClientCredential_STATUS to OpenIdConnectClientCredential_STATUS via AssignProperties_To_OpenIdConnectClientCredential_STATUS & AssignProperties_From_OpenIdConnectClientCredential_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForOpenIdConnectClientCredential_STATUS, OpenIdConnectClientCredential_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForOpenIdConnectClientCredential_STATUS tests if a specific instance of OpenIdConnectClientCredential_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForOpenIdConnectClientCredential_STATUS(subject OpenIdConnectClientCredential_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.OpenIdConnectClientCredential_STATUS
+ err := copied.AssignProperties_To_OpenIdConnectClientCredential_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual OpenIdConnectClientCredential_STATUS
+ err = actual.AssignProperties_From_OpenIdConnectClientCredential_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_OpenIdConnectClientCredential_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 OpenIdConnectClientCredential_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS, OpenIdConnectClientCredential_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS runs a test to see if a specific instance of OpenIdConnectClientCredential_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS(subject OpenIdConnectClientCredential_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectClientCredential_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 OpenIdConnectClientCredential_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectClientCredential_STATUSGenerator()
+var openIdConnectClientCredential_STATUSGenerator gopter.Gen
+
+// OpenIdConnectClientCredential_STATUSGenerator returns a generator of OpenIdConnectClientCredential_STATUS instances for property testing.
+func OpenIdConnectClientCredential_STATUSGenerator() gopter.Gen {
+ if openIdConnectClientCredential_STATUSGenerator != nil {
+ return openIdConnectClientCredential_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS(generators)
+ openIdConnectClientCredential_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectClientCredential_STATUS{}), generators)
+
+ return openIdConnectClientCredential_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["Method"] = gen.PtrOf(gen.OneConstOf(OpenIdConnectClientCredential_Method_STATUS_ClientSecretPost))
+}
+
+func Test_OpenIdConnectConfig_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from OpenIdConnectConfig to OpenIdConnectConfig via AssignProperties_To_OpenIdConnectConfig & AssignProperties_From_OpenIdConnectConfig returns original",
+ prop.ForAll(RunPropertyAssignmentTestForOpenIdConnectConfig, OpenIdConnectConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForOpenIdConnectConfig tests if a specific instance of OpenIdConnectConfig can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForOpenIdConnectConfig(subject OpenIdConnectConfig) 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.OpenIdConnectConfig
+ err := copied.AssignProperties_To_OpenIdConnectConfig(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual OpenIdConnectConfig
+ err = actual.AssignProperties_From_OpenIdConnectConfig(&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_OpenIdConnectConfig_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 OpenIdConnectConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectConfig, OpenIdConnectConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectConfig runs a test to see if a specific instance of OpenIdConnectConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectConfig(subject OpenIdConnectConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectConfig
+ 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 OpenIdConnectConfig instances for property testing - lazily instantiated by
+// OpenIdConnectConfigGenerator()
+var openIdConnectConfigGenerator gopter.Gen
+
+// OpenIdConnectConfigGenerator returns a generator of OpenIdConnectConfig instances for property testing.
+func OpenIdConnectConfigGenerator() gopter.Gen {
+ if openIdConnectConfigGenerator != nil {
+ return openIdConnectConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectConfig(generators)
+ openIdConnectConfigGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectConfig{}), generators)
+
+ return openIdConnectConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectConfig(gens map[string]gopter.Gen) {
+ gens["AuthorizationEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["CertificationUri"] = gen.PtrOf(gen.AlphaString())
+ gens["Issuer"] = gen.PtrOf(gen.AlphaString())
+ gens["TokenEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["WellKnownOpenIdConfiguration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectConfig_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from OpenIdConnectConfig_STATUS to OpenIdConnectConfig_STATUS via AssignProperties_To_OpenIdConnectConfig_STATUS & AssignProperties_From_OpenIdConnectConfig_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForOpenIdConnectConfig_STATUS, OpenIdConnectConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForOpenIdConnectConfig_STATUS tests if a specific instance of OpenIdConnectConfig_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForOpenIdConnectConfig_STATUS(subject OpenIdConnectConfig_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.OpenIdConnectConfig_STATUS
+ err := copied.AssignProperties_To_OpenIdConnectConfig_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual OpenIdConnectConfig_STATUS
+ err = actual.AssignProperties_From_OpenIdConnectConfig_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_OpenIdConnectConfig_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 OpenIdConnectConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectConfig_STATUS, OpenIdConnectConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectConfig_STATUS runs a test to see if a specific instance of OpenIdConnectConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectConfig_STATUS(subject OpenIdConnectConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectConfig_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 OpenIdConnectConfig_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectConfig_STATUSGenerator()
+var openIdConnectConfig_STATUSGenerator gopter.Gen
+
+// OpenIdConnectConfig_STATUSGenerator returns a generator of OpenIdConnectConfig_STATUS instances for property testing.
+func OpenIdConnectConfig_STATUSGenerator() gopter.Gen {
+ if openIdConnectConfig_STATUSGenerator != nil {
+ return openIdConnectConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS(generators)
+ openIdConnectConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectConfig_STATUS{}), generators)
+
+ return openIdConnectConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["AuthorizationEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["CertificationUri"] = gen.PtrOf(gen.AlphaString())
+ gens["Issuer"] = gen.PtrOf(gen.AlphaString())
+ gens["TokenEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["WellKnownOpenIdConfiguration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectLogin_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from OpenIdConnectLogin to OpenIdConnectLogin via AssignProperties_To_OpenIdConnectLogin & AssignProperties_From_OpenIdConnectLogin returns original",
+ prop.ForAll(RunPropertyAssignmentTestForOpenIdConnectLogin, OpenIdConnectLoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForOpenIdConnectLogin tests if a specific instance of OpenIdConnectLogin can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForOpenIdConnectLogin(subject OpenIdConnectLogin) 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.OpenIdConnectLogin
+ err := copied.AssignProperties_To_OpenIdConnectLogin(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual OpenIdConnectLogin
+ err = actual.AssignProperties_From_OpenIdConnectLogin(&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_OpenIdConnectLogin_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 OpenIdConnectLogin via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectLogin, OpenIdConnectLoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectLogin runs a test to see if a specific instance of OpenIdConnectLogin round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectLogin(subject OpenIdConnectLogin) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectLogin
+ 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 OpenIdConnectLogin instances for property testing - lazily instantiated by OpenIdConnectLoginGenerator()
+var openIdConnectLoginGenerator gopter.Gen
+
+// OpenIdConnectLoginGenerator returns a generator of OpenIdConnectLogin instances for property testing.
+func OpenIdConnectLoginGenerator() gopter.Gen {
+ if openIdConnectLoginGenerator != nil {
+ return openIdConnectLoginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectLogin(generators)
+ openIdConnectLoginGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectLogin{}), generators)
+
+ return openIdConnectLoginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectLogin(gens map[string]gopter.Gen) {
+ gens["NameClaimType"] = gen.PtrOf(gen.AlphaString())
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectLogin_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from OpenIdConnectLogin_STATUS to OpenIdConnectLogin_STATUS via AssignProperties_To_OpenIdConnectLogin_STATUS & AssignProperties_From_OpenIdConnectLogin_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForOpenIdConnectLogin_STATUS, OpenIdConnectLogin_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForOpenIdConnectLogin_STATUS tests if a specific instance of OpenIdConnectLogin_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForOpenIdConnectLogin_STATUS(subject OpenIdConnectLogin_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.OpenIdConnectLogin_STATUS
+ err := copied.AssignProperties_To_OpenIdConnectLogin_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual OpenIdConnectLogin_STATUS
+ err = actual.AssignProperties_From_OpenIdConnectLogin_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_OpenIdConnectLogin_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 OpenIdConnectLogin_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectLogin_STATUS, OpenIdConnectLogin_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectLogin_STATUS runs a test to see if a specific instance of OpenIdConnectLogin_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectLogin_STATUS(subject OpenIdConnectLogin_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectLogin_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 OpenIdConnectLogin_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectLogin_STATUSGenerator()
+var openIdConnectLogin_STATUSGenerator gopter.Gen
+
+// OpenIdConnectLogin_STATUSGenerator returns a generator of OpenIdConnectLogin_STATUS instances for property testing.
+func OpenIdConnectLogin_STATUSGenerator() gopter.Gen {
+ if openIdConnectLogin_STATUSGenerator != nil {
+ return openIdConnectLogin_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS(generators)
+ openIdConnectLogin_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectLogin_STATUS{}), generators)
+
+ return openIdConnectLogin_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["NameClaimType"] = gen.PtrOf(gen.AlphaString())
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectRegistration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from OpenIdConnectRegistration to OpenIdConnectRegistration via AssignProperties_To_OpenIdConnectRegistration & AssignProperties_From_OpenIdConnectRegistration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForOpenIdConnectRegistration, OpenIdConnectRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForOpenIdConnectRegistration tests if a specific instance of OpenIdConnectRegistration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForOpenIdConnectRegistration(subject OpenIdConnectRegistration) 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.OpenIdConnectRegistration
+ err := copied.AssignProperties_To_OpenIdConnectRegistration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual OpenIdConnectRegistration
+ err = actual.AssignProperties_From_OpenIdConnectRegistration(&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_OpenIdConnectRegistration_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 OpenIdConnectRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectRegistration, OpenIdConnectRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectRegistration runs a test to see if a specific instance of OpenIdConnectRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectRegistration(subject OpenIdConnectRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectRegistration
+ 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 OpenIdConnectRegistration instances for property testing - lazily instantiated by
+// OpenIdConnectRegistrationGenerator()
+var openIdConnectRegistrationGenerator gopter.Gen
+
+// OpenIdConnectRegistrationGenerator returns a generator of OpenIdConnectRegistration instances for property testing.
+// We first initialize openIdConnectRegistrationGenerator 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 OpenIdConnectRegistrationGenerator() gopter.Gen {
+ if openIdConnectRegistrationGenerator != nil {
+ return openIdConnectRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ openIdConnectRegistrationGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ AddRelatedPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ openIdConnectRegistrationGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration{}), generators)
+
+ return openIdConnectRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForOpenIdConnectRegistration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForOpenIdConnectRegistration(gens map[string]gopter.Gen) {
+ gens["ClientCredential"] = gen.PtrOf(OpenIdConnectClientCredentialGenerator())
+ gens["OpenIdConnectConfiguration"] = gen.PtrOf(OpenIdConnectConfigGenerator())
+}
+
+func Test_OpenIdConnectRegistration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from OpenIdConnectRegistration_STATUS to OpenIdConnectRegistration_STATUS via AssignProperties_To_OpenIdConnectRegistration_STATUS & AssignProperties_From_OpenIdConnectRegistration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForOpenIdConnectRegistration_STATUS, OpenIdConnectRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForOpenIdConnectRegistration_STATUS tests if a specific instance of OpenIdConnectRegistration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForOpenIdConnectRegistration_STATUS(subject OpenIdConnectRegistration_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.OpenIdConnectRegistration_STATUS
+ err := copied.AssignProperties_To_OpenIdConnectRegistration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual OpenIdConnectRegistration_STATUS
+ err = actual.AssignProperties_From_OpenIdConnectRegistration_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_OpenIdConnectRegistration_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 OpenIdConnectRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectRegistration_STATUS, OpenIdConnectRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectRegistration_STATUS runs a test to see if a specific instance of OpenIdConnectRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectRegistration_STATUS(subject OpenIdConnectRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectRegistration_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 OpenIdConnectRegistration_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectRegistration_STATUSGenerator()
+var openIdConnectRegistration_STATUSGenerator gopter.Gen
+
+// OpenIdConnectRegistration_STATUSGenerator returns a generator of OpenIdConnectRegistration_STATUS instances for property testing.
+// We first initialize openIdConnectRegistration_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 OpenIdConnectRegistration_STATUSGenerator() gopter.Gen {
+ if openIdConnectRegistration_STATUSGenerator != nil {
+ return openIdConnectRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ openIdConnectRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ openIdConnectRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration_STATUS{}), generators)
+
+ return openIdConnectRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientCredential"] = gen.PtrOf(OpenIdConnectClientCredential_STATUSGenerator())
+ gens["OpenIdConnectConfiguration"] = gen.PtrOf(OpenIdConnectConfig_STATUSGenerator())
+}
+
+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_TokenStore_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from TokenStore to TokenStore via AssignProperties_To_TokenStore & AssignProperties_From_TokenStore returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTokenStore, TokenStoreGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTokenStore tests if a specific instance of TokenStore can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTokenStore(subject TokenStore) 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.TokenStore
+ err := copied.AssignProperties_To_TokenStore(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual TokenStore
+ err = actual.AssignProperties_From_TokenStore(&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_TokenStore_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 TokenStore via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTokenStore, TokenStoreGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTokenStore runs a test to see if a specific instance of TokenStore round trips to JSON and back losslessly
+func RunJSONSerializationTestForTokenStore(subject TokenStore) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TokenStore
+ 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 TokenStore instances for property testing - lazily instantiated by TokenStoreGenerator()
+var tokenStoreGenerator gopter.Gen
+
+// TokenStoreGenerator returns a generator of TokenStore instances for property testing.
+// We first initialize tokenStoreGenerator 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 TokenStoreGenerator() gopter.Gen {
+ if tokenStoreGenerator != nil {
+ return tokenStoreGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore(generators)
+ tokenStoreGenerator = gen.Struct(reflect.TypeOf(TokenStore{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore(generators)
+ AddRelatedPropertyGeneratorsForTokenStore(generators)
+ tokenStoreGenerator = gen.Struct(reflect.TypeOf(TokenStore{}), generators)
+
+ return tokenStoreGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTokenStore is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTokenStore(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["TokenRefreshExtensionHours"] = gen.PtrOf(gen.Float64())
+}
+
+// AddRelatedPropertyGeneratorsForTokenStore is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTokenStore(gens map[string]gopter.Gen) {
+ gens["AzureBlobStorage"] = gen.PtrOf(BlobStorageTokenStoreGenerator())
+}
+
+func Test_TokenStore_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from TokenStore_STATUS to TokenStore_STATUS via AssignProperties_To_TokenStore_STATUS & AssignProperties_From_TokenStore_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTokenStore_STATUS, TokenStore_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTokenStore_STATUS tests if a specific instance of TokenStore_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTokenStore_STATUS(subject TokenStore_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.TokenStore_STATUS
+ err := copied.AssignProperties_To_TokenStore_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual TokenStore_STATUS
+ err = actual.AssignProperties_From_TokenStore_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_TokenStore_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 TokenStore_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTokenStore_STATUS, TokenStore_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTokenStore_STATUS runs a test to see if a specific instance of TokenStore_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTokenStore_STATUS(subject TokenStore_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TokenStore_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 TokenStore_STATUS instances for property testing - lazily instantiated by TokenStore_STATUSGenerator()
+var tokenStore_STATUSGenerator gopter.Gen
+
+// TokenStore_STATUSGenerator returns a generator of TokenStore_STATUS instances for property testing.
+// We first initialize tokenStore_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 TokenStore_STATUSGenerator() gopter.Gen {
+ if tokenStore_STATUSGenerator != nil {
+ return tokenStore_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore_STATUS(generators)
+ tokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(TokenStore_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTokenStore_STATUS(generators)
+ tokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(TokenStore_STATUS{}), generators)
+
+ return tokenStore_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTokenStore_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["TokenRefreshExtensionHours"] = gen.PtrOf(gen.Float64())
+}
+
+// AddRelatedPropertyGeneratorsForTokenStore_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["AzureBlobStorage"] = gen.PtrOf(BlobStorageTokenStore_STATUSGenerator())
+}
+
+func Test_Twitter_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Twitter to Twitter via AssignProperties_To_Twitter & AssignProperties_From_Twitter returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTwitter, TwitterGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTwitter tests if a specific instance of Twitter can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTwitter(subject Twitter) 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.Twitter
+ err := copied.AssignProperties_To_Twitter(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Twitter
+ err = actual.AssignProperties_From_Twitter(&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_Twitter_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 Twitter via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitter, TwitterGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitter runs a test to see if a specific instance of Twitter round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitter(subject Twitter) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Twitter
+ 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 Twitter instances for property testing - lazily instantiated by TwitterGenerator()
+var twitterGenerator gopter.Gen
+
+// TwitterGenerator returns a generator of Twitter instances for property testing.
+// We first initialize twitterGenerator 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 TwitterGenerator() gopter.Gen {
+ if twitterGenerator != nil {
+ return twitterGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter(generators)
+ twitterGenerator = gen.Struct(reflect.TypeOf(Twitter{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter(generators)
+ AddRelatedPropertyGeneratorsForTwitter(generators)
+ twitterGenerator = gen.Struct(reflect.TypeOf(Twitter{}), generators)
+
+ return twitterGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitter is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitter(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForTwitter is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTwitter(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(TwitterRegistrationGenerator())
+}
+
+func Test_TwitterRegistration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from TwitterRegistration to TwitterRegistration via AssignProperties_To_TwitterRegistration & AssignProperties_From_TwitterRegistration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTwitterRegistration, TwitterRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTwitterRegistration tests if a specific instance of TwitterRegistration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTwitterRegistration(subject TwitterRegistration) 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.TwitterRegistration
+ err := copied.AssignProperties_To_TwitterRegistration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual TwitterRegistration
+ err = actual.AssignProperties_From_TwitterRegistration(&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_TwitterRegistration_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 TwitterRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitterRegistration, TwitterRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitterRegistration runs a test to see if a specific instance of TwitterRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitterRegistration(subject TwitterRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TwitterRegistration
+ 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 TwitterRegistration instances for property testing - lazily instantiated by
+// TwitterRegistrationGenerator()
+var twitterRegistrationGenerator gopter.Gen
+
+// TwitterRegistrationGenerator returns a generator of TwitterRegistration instances for property testing.
+func TwitterRegistrationGenerator() gopter.Gen {
+ if twitterRegistrationGenerator != nil {
+ return twitterRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitterRegistration(generators)
+ twitterRegistrationGenerator = gen.Struct(reflect.TypeOf(TwitterRegistration{}), generators)
+
+ return twitterRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitterRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitterRegistration(gens map[string]gopter.Gen) {
+ gens["ConsumerKey"] = gen.PtrOf(gen.AlphaString())
+ gens["ConsumerSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_TwitterRegistration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from TwitterRegistration_STATUS to TwitterRegistration_STATUS via AssignProperties_To_TwitterRegistration_STATUS & AssignProperties_From_TwitterRegistration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTwitterRegistration_STATUS, TwitterRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTwitterRegistration_STATUS tests if a specific instance of TwitterRegistration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTwitterRegistration_STATUS(subject TwitterRegistration_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.TwitterRegistration_STATUS
+ err := copied.AssignProperties_To_TwitterRegistration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual TwitterRegistration_STATUS
+ err = actual.AssignProperties_From_TwitterRegistration_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_TwitterRegistration_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 TwitterRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitterRegistration_STATUS, TwitterRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitterRegistration_STATUS runs a test to see if a specific instance of TwitterRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitterRegistration_STATUS(subject TwitterRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TwitterRegistration_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 TwitterRegistration_STATUS instances for property testing - lazily instantiated by
+// TwitterRegistration_STATUSGenerator()
+var twitterRegistration_STATUSGenerator gopter.Gen
+
+// TwitterRegistration_STATUSGenerator returns a generator of TwitterRegistration_STATUS instances for property testing.
+func TwitterRegistration_STATUSGenerator() gopter.Gen {
+ if twitterRegistration_STATUSGenerator != nil {
+ return twitterRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS(generators)
+ twitterRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(TwitterRegistration_STATUS{}), generators)
+
+ return twitterRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ConsumerKey"] = gen.PtrOf(gen.AlphaString())
+ gens["ConsumerSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Twitter_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Twitter_STATUS to Twitter_STATUS via AssignProperties_To_Twitter_STATUS & AssignProperties_From_Twitter_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTwitter_STATUS, Twitter_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTwitter_STATUS tests if a specific instance of Twitter_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTwitter_STATUS(subject Twitter_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.Twitter_STATUS
+ err := copied.AssignProperties_To_Twitter_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Twitter_STATUS
+ err = actual.AssignProperties_From_Twitter_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_Twitter_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 Twitter_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitter_STATUS, Twitter_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitter_STATUS runs a test to see if a specific instance of Twitter_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitter_STATUS(subject Twitter_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Twitter_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 Twitter_STATUS instances for property testing - lazily instantiated by Twitter_STATUSGenerator()
+var twitter_STATUSGenerator gopter.Gen
+
+// Twitter_STATUSGenerator returns a generator of Twitter_STATUS instances for property testing.
+// We first initialize twitter_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 Twitter_STATUSGenerator() gopter.Gen {
+ if twitter_STATUSGenerator != nil {
+ return twitter_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter_STATUS(generators)
+ twitter_STATUSGenerator = gen.Struct(reflect.TypeOf(Twitter_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTwitter_STATUS(generators)
+ twitter_STATUSGenerator = gen.Struct(reflect.TypeOf(Twitter_STATUS{}), generators)
+
+ return twitter_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitter_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitter_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForTwitter_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTwitter_STATUS(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(TwitterRegistration_STATUSGenerator())
+}
diff --git a/v2/api/app/v1api20240301/container_app_types_gen.go b/v2/api/app/v1api20240301/container_app_types_gen.go
new file mode 100644
index 00000000000..4960a1f7931
--- /dev/null
+++ b/v2/api/app/v1api20240301/container_app_types_gen.go
@@ -0,0 +1,14836 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package v1api20240301
+
+import (
+ "context"
+ "fmt"
+ arm "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/arm"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/storage"
+ "github.com/Azure/azure-service-operator/v2/internal/genericarmclient"
+ "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/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/secrets"
+ "github.com/go-logr/logr"
+ "github.com/rotisserie/eris"
+ 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/client"
+ "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: /app/resource-manager/Microsoft.App/stable/2024-03-01/ContainerApps.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}
+type ContainerApp struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty"`
+ Spec ContainerApp_Spec `json:"spec,omitempty"`
+ Status ContainerApp_STATUS `json:"status,omitempty"`
+}
+
+var _ conditions.Conditioner = &ContainerApp{}
+
+// GetConditions returns the conditions of the resource
+func (containerApp *ContainerApp) GetConditions() conditions.Conditions {
+ return containerApp.Status.Conditions
+}
+
+// SetConditions sets the conditions on the resource status
+func (containerApp *ContainerApp) SetConditions(conditions conditions.Conditions) {
+ containerApp.Status.Conditions = conditions
+}
+
+var _ conversion.Convertible = &ContainerApp{}
+
+// ConvertFrom populates our ContainerApp from the provided hub ContainerApp
+func (containerApp *ContainerApp) ConvertFrom(hub conversion.Hub) error {
+ source, ok := hub.(*storage.ContainerApp)
+ if !ok {
+ return fmt.Errorf("expected app/v1api20240301/storage/ContainerApp but received %T instead", hub)
+ }
+
+ return containerApp.AssignProperties_From_ContainerApp(source)
+}
+
+// ConvertTo populates the provided hub ContainerApp from our ContainerApp
+func (containerApp *ContainerApp) ConvertTo(hub conversion.Hub) error {
+ destination, ok := hub.(*storage.ContainerApp)
+ if !ok {
+ return fmt.Errorf("expected app/v1api20240301/storage/ContainerApp but received %T instead", hub)
+ }
+
+ return containerApp.AssignProperties_To_ContainerApp(destination)
+}
+
+// +kubebuilder:webhook:path=/mutate-app-azure-com-v1api20240301-containerapp,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=app.azure.com,resources=containerapps,verbs=create;update,versions=v1api20240301,name=default.v1api20240301.containerapps.app.azure.com,admissionReviewVersions=v1
+
+var _ admission.Defaulter = &ContainerApp{}
+
+// Default applies defaults to the ContainerApp resource
+func (containerApp *ContainerApp) Default() {
+ containerApp.defaultImpl()
+ var temp any = containerApp
+ if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok {
+ runtimeDefaulter.CustomDefault()
+ }
+}
+
+// defaultAzureName defaults the Azure name of the resource to the Kubernetes name
+func (containerApp *ContainerApp) defaultAzureName() {
+ if containerApp.Spec.AzureName == "" {
+ containerApp.Spec.AzureName = containerApp.Name
+ }
+}
+
+// defaultImpl applies the code generated defaults to the ContainerApp resource
+func (containerApp *ContainerApp) defaultImpl() { containerApp.defaultAzureName() }
+
+var _ configmaps.Exporter = &ContainerApp{}
+
+// ConfigMapDestinationExpressions returns the Spec.OperatorSpec.ConfigMapExpressions property
+func (containerApp *ContainerApp) ConfigMapDestinationExpressions() []*core.DestinationExpression {
+ if containerApp.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return containerApp.Spec.OperatorSpec.ConfigMapExpressions
+}
+
+var _ secrets.Exporter = &ContainerApp{}
+
+// SecretDestinationExpressions returns the Spec.OperatorSpec.SecretExpressions property
+func (containerApp *ContainerApp) SecretDestinationExpressions() []*core.DestinationExpression {
+ if containerApp.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return containerApp.Spec.OperatorSpec.SecretExpressions
+}
+
+var _ genruntime.ImportableResource = &ContainerApp{}
+
+// InitializeSpec initializes the spec for this resource from the given status
+func (containerApp *ContainerApp) InitializeSpec(status genruntime.ConvertibleStatus) error {
+ if s, ok := status.(*ContainerApp_STATUS); ok {
+ return containerApp.Spec.Initialize_From_ContainerApp_STATUS(s)
+ }
+
+ return fmt.Errorf("expected Status of type ContainerApp_STATUS but received %T instead", status)
+}
+
+var _ genruntime.KubernetesConfigExporter = &ContainerApp{}
+
+// ExportKubernetesConfigMaps defines a resource which can create ConfigMaps in Kubernetes.
+func (containerApp *ContainerApp) ExportKubernetesConfigMaps(_ context.Context, _ genruntime.MetaObject, _ *genericarmclient.GenericClient, _ logr.Logger) ([]client.Object, error) {
+ collector := configmaps.NewCollector(containerApp.Namespace)
+ if containerApp.Spec.OperatorSpec != nil && containerApp.Spec.OperatorSpec.ConfigMaps != nil {
+ if containerApp.Status.EventStreamEndpoint != nil {
+ collector.AddValue(containerApp.Spec.OperatorSpec.ConfigMaps.EventStreamEndpoint, *containerApp.Status.EventStreamEndpoint)
+ }
+ }
+ if containerApp.Spec.OperatorSpec != nil && containerApp.Spec.OperatorSpec.ConfigMaps != nil {
+ if containerApp.Status.LatestRevisionFqdn != nil {
+ collector.AddValue(containerApp.Spec.OperatorSpec.ConfigMaps.Fqdn, *containerApp.Status.LatestRevisionFqdn)
+ }
+ }
+ result, err := collector.Values()
+ if err != nil {
+ return nil, err
+ }
+ return configmaps.SliceToClientObjectSlice(result), nil
+}
+
+var _ genruntime.KubernetesResource = &ContainerApp{}
+
+// AzureName returns the Azure name of the resource
+func (containerApp *ContainerApp) AzureName() string {
+ return containerApp.Spec.AzureName
+}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (containerApp ContainerApp) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetResourceScope returns the scope of the resource
+func (containerApp *ContainerApp) GetResourceScope() genruntime.ResourceScope {
+ return genruntime.ResourceScopeResourceGroup
+}
+
+// GetSpec returns the specification of this resource
+func (containerApp *ContainerApp) GetSpec() genruntime.ConvertibleSpec {
+ return &containerApp.Spec
+}
+
+// GetStatus returns the status of this resource
+func (containerApp *ContainerApp) GetStatus() genruntime.ConvertibleStatus {
+ return &containerApp.Status
+}
+
+// GetSupportedOperations returns the operations supported by the resource
+func (containerApp *ContainerApp) GetSupportedOperations() []genruntime.ResourceOperation {
+ return []genruntime.ResourceOperation{
+ genruntime.ResourceOperationDelete,
+ genruntime.ResourceOperationGet,
+ genruntime.ResourceOperationPut,
+ }
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/containerApps"
+func (containerApp *ContainerApp) GetType() string {
+ return "Microsoft.App/containerApps"
+}
+
+// NewEmptyStatus returns a new empty (blank) status
+func (containerApp *ContainerApp) NewEmptyStatus() genruntime.ConvertibleStatus {
+ return &ContainerApp_STATUS{}
+}
+
+// Owner returns the ResourceReference of the owner
+func (containerApp *ContainerApp) Owner() *genruntime.ResourceReference {
+ if containerApp.Spec.Owner == nil {
+ return nil
+ }
+
+ group, kind := genruntime.LookupOwnerGroupKind(containerApp.Spec)
+ return containerApp.Spec.Owner.AsResourceReference(group, kind)
+}
+
+// SetStatus sets the status of this resource
+func (containerApp *ContainerApp) SetStatus(status genruntime.ConvertibleStatus) error {
+ // If we have exactly the right type of status, assign it
+ if st, ok := status.(*ContainerApp_STATUS); ok {
+ containerApp.Status = *st
+ return nil
+ }
+
+ // Convert status to required version
+ var st ContainerApp_STATUS
+ err := status.ConvertStatusTo(&st)
+ if err != nil {
+ return eris.Wrap(err, "failed to convert status")
+ }
+
+ containerApp.Status = st
+ return nil
+}
+
+// +kubebuilder:webhook:path=/validate-app-azure-com-v1api20240301-containerapp,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=app.azure.com,resources=containerapps,verbs=create;update,versions=v1api20240301,name=validate.v1api20240301.containerapps.app.azure.com,admissionReviewVersions=v1
+
+var _ admission.Validator = &ContainerApp{}
+
+// ValidateCreate validates the creation of the resource
+func (containerApp *ContainerApp) ValidateCreate() (admission.Warnings, error) {
+ validations := containerApp.createValidations()
+ var temp any = containerApp
+ if runtimeValidator, ok := temp.(genruntime.Validator); ok {
+ validations = append(validations, runtimeValidator.CreateValidations()...)
+ }
+ return genruntime.ValidateCreate(validations)
+}
+
+// ValidateDelete validates the deletion of the resource
+func (containerApp *ContainerApp) ValidateDelete() (admission.Warnings, error) {
+ validations := containerApp.deleteValidations()
+ var temp any = containerApp
+ if runtimeValidator, ok := temp.(genruntime.Validator); ok {
+ validations = append(validations, runtimeValidator.DeleteValidations()...)
+ }
+ return genruntime.ValidateDelete(validations)
+}
+
+// ValidateUpdate validates an update of the resource
+func (containerApp *ContainerApp) ValidateUpdate(old runtime.Object) (admission.Warnings, error) {
+ validations := containerApp.updateValidations()
+ var temp any = containerApp
+ 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 (containerApp *ContainerApp) createValidations() []func() (admission.Warnings, error) {
+ return []func() (admission.Warnings, error){containerApp.validateResourceReferences, containerApp.validateOwnerReference, containerApp.validateSecretDestinations, containerApp.validateConfigMapDestinations}
+}
+
+// deleteValidations validates the deletion of the resource
+func (containerApp *ContainerApp) deleteValidations() []func() (admission.Warnings, error) {
+ return nil
+}
+
+// updateValidations validates the update of the resource
+func (containerApp *ContainerApp) updateValidations() []func(old runtime.Object) (admission.Warnings, error) {
+ return []func(old runtime.Object) (admission.Warnings, error){
+ func(old runtime.Object) (admission.Warnings, error) {
+ return containerApp.validateResourceReferences()
+ },
+ containerApp.validateWriteOnceProperties,
+ func(old runtime.Object) (admission.Warnings, error) {
+ return containerApp.validateOwnerReference()
+ },
+ func(old runtime.Object) (admission.Warnings, error) {
+ return containerApp.validateSecretDestinations()
+ },
+ func(old runtime.Object) (admission.Warnings, error) {
+ return containerApp.validateConfigMapDestinations()
+ },
+ }
+}
+
+// validateConfigMapDestinations validates there are no colliding genruntime.ConfigMapDestinations
+func (containerApp *ContainerApp) validateConfigMapDestinations() (admission.Warnings, error) {
+ if containerApp.Spec.OperatorSpec == nil {
+ return nil, nil
+ }
+ var toValidate []*genruntime.ConfigMapDestination
+ if containerApp.Spec.OperatorSpec.ConfigMaps != nil {
+ toValidate = []*genruntime.ConfigMapDestination{
+ containerApp.Spec.OperatorSpec.ConfigMaps.EventStreamEndpoint,
+ containerApp.Spec.OperatorSpec.ConfigMaps.Fqdn,
+ }
+ }
+ return configmaps.ValidateDestinations(containerApp, toValidate, containerApp.Spec.OperatorSpec.ConfigMapExpressions)
+}
+
+// validateOwnerReference validates the owner field
+func (containerApp *ContainerApp) validateOwnerReference() (admission.Warnings, error) {
+ return genruntime.ValidateOwner(containerApp)
+}
+
+// validateResourceReferences validates all resource references
+func (containerApp *ContainerApp) validateResourceReferences() (admission.Warnings, error) {
+ refs, err := reflecthelpers.FindResourceReferences(&containerApp.Spec)
+ if err != nil {
+ return nil, err
+ }
+ return genruntime.ValidateResourceReferences(refs)
+}
+
+// validateSecretDestinations validates there are no colliding genruntime.SecretDestination's
+func (containerApp *ContainerApp) validateSecretDestinations() (admission.Warnings, error) {
+ if containerApp.Spec.OperatorSpec == nil {
+ return nil, nil
+ }
+ return secrets.ValidateDestinations(containerApp, nil, containerApp.Spec.OperatorSpec.SecretExpressions)
+}
+
+// validateWriteOnceProperties validates all WriteOnce properties
+func (containerApp *ContainerApp) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) {
+ oldObj, ok := old.(*ContainerApp)
+ if !ok {
+ return nil, nil
+ }
+
+ return genruntime.ValidateWriteOnceProperties(oldObj, containerApp)
+}
+
+// AssignProperties_From_ContainerApp populates our ContainerApp from the provided source ContainerApp
+func (containerApp *ContainerApp) AssignProperties_From_ContainerApp(source *storage.ContainerApp) error {
+
+ // ObjectMeta
+ containerApp.ObjectMeta = *source.ObjectMeta.DeepCopy()
+
+ // Spec
+ var spec ContainerApp_Spec
+ err := spec.AssignProperties_From_ContainerApp_Spec(&source.Spec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerApp_Spec() to populate field Spec")
+ }
+ containerApp.Spec = spec
+
+ // Status
+ var status ContainerApp_STATUS
+ err = status.AssignProperties_From_ContainerApp_STATUS(&source.Status)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerApp_STATUS() to populate field Status")
+ }
+ containerApp.Status = status
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerApp populates the provided destination ContainerApp from our ContainerApp
+func (containerApp *ContainerApp) AssignProperties_To_ContainerApp(destination *storage.ContainerApp) error {
+
+ // ObjectMeta
+ destination.ObjectMeta = *containerApp.ObjectMeta.DeepCopy()
+
+ // Spec
+ var spec storage.ContainerApp_Spec
+ err := containerApp.Spec.AssignProperties_To_ContainerApp_Spec(&spec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerApp_Spec() to populate field Spec")
+ }
+ destination.Spec = spec
+
+ // Status
+ var status storage.ContainerApp_STATUS
+ err = containerApp.Status.AssignProperties_To_ContainerApp_STATUS(&status)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerApp_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 (containerApp *ContainerApp) OriginalGVK() *schema.GroupVersionKind {
+ return &schema.GroupVersionKind{
+ Group: GroupVersion.Group,
+ Version: containerApp.Spec.OriginalVersion(),
+ Kind: "ContainerApp",
+ }
+}
+
+// +kubebuilder:object:root=true
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/ContainerApps.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}
+type ContainerAppList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata,omitempty"`
+ Items []ContainerApp `json:"items"`
+}
+
+type ContainerApp_Spec struct {
+ // 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"`
+
+ // Configuration: Non versioned Container App configuration properties.
+ Configuration *Configuration `json:"configuration,omitempty"`
+
+ // EnvironmentReference: Resource ID of environment.
+ EnvironmentReference *genruntime.ResourceReference `armReference:"EnvironmentId" json:"environmentReference,omitempty"`
+
+ // ExtendedLocation: The complex type of the extended location.
+ ExtendedLocation *ExtendedLocation `json:"extendedLocation,omitempty"`
+
+ // Identity: managed identities for the Container App to interact with other Azure services without maintaining any secrets
+ // or credentials in code.
+ Identity *ManagedServiceIdentity `json:"identity,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Location: The geo-location where the resource lives
+ Location *string `json:"location,omitempty"`
+
+ // ManagedByReference: The fully qualified resource ID of the resource that manages this resource. Indicates if this
+ // resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource
+ // if it is removed from the template since it is managed by another resource.
+ ManagedByReference *genruntime.ResourceReference `armReference:"ManagedBy" json:"managedByReference,omitempty"`
+
+ // ManagedEnvironmentReference: Deprecated. Resource ID of the Container App's environment.
+ ManagedEnvironmentReference *genruntime.ResourceReference `armReference:"ManagedEnvironmentId" json:"managedEnvironmentReference,omitempty"`
+
+ // OperatorSpec: The specification for configuring operator behavior. This field is interpreted by the operator and not
+ // passed directly to Azure
+ OperatorSpec *ContainerAppOperatorSpec `json:"operatorSpec,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"`
+
+ // Tags: Resource tags.
+ Tags map[string]string `json:"tags,omitempty"`
+
+ // Template: Container App versioned application definition.
+ Template *Template `json:"template,omitempty"`
+
+ // WorkloadProfileName: Workload profile name to pin for container app execution.
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ContainerApp_Spec{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (containerApp *ContainerApp_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if containerApp == nil {
+ return nil, nil
+ }
+ result := &arm.ContainerApp_Spec{}
+
+ // Set property "ExtendedLocation":
+ if containerApp.ExtendedLocation != nil {
+ extendedLocation_ARM, err := (*containerApp.ExtendedLocation).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ extendedLocation := *extendedLocation_ARM.(*arm.ExtendedLocation)
+ result.ExtendedLocation = &extendedLocation
+ }
+
+ // Set property "Identity":
+ if containerApp.Identity != nil {
+ identity_ARM, err := (*containerApp.Identity).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ identity := *identity_ARM.(*arm.ManagedServiceIdentity)
+ result.Identity = &identity
+ }
+
+ // Set property "Location":
+ if containerApp.Location != nil {
+ location := *containerApp.Location
+ result.Location = &location
+ }
+
+ // Set property "ManagedBy":
+ if containerApp.ManagedByReference != nil {
+ managedByReferenceARMID, err := resolved.ResolvedReferences.Lookup(*containerApp.ManagedByReference)
+ if err != nil {
+ return nil, err
+ }
+ managedByReference := managedByReferenceARMID
+ result.ManagedBy = &managedByReference
+ }
+
+ // Set property "Name":
+ result.Name = resolved.Name
+
+ // Set property "Properties":
+ if containerApp.Configuration != nil ||
+ containerApp.EnvironmentReference != nil ||
+ containerApp.ManagedEnvironmentReference != nil ||
+ containerApp.Template != nil ||
+ containerApp.WorkloadProfileName != nil {
+ result.Properties = &arm.ContainerApp_Properties_Spec{}
+ }
+ if containerApp.Configuration != nil {
+ configuration_ARM, err := (*containerApp.Configuration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ configuration := *configuration_ARM.(*arm.Configuration)
+ result.Properties.Configuration = &configuration
+ }
+ if containerApp.EnvironmentReference != nil {
+ environmentIdARMID, err := resolved.ResolvedReferences.Lookup(*containerApp.EnvironmentReference)
+ if err != nil {
+ return nil, err
+ }
+ environmentId := environmentIdARMID
+ result.Properties.EnvironmentId = &environmentId
+ }
+ if containerApp.ManagedEnvironmentReference != nil {
+ managedEnvironmentIdARMID, err := resolved.ResolvedReferences.Lookup(*containerApp.ManagedEnvironmentReference)
+ if err != nil {
+ return nil, err
+ }
+ managedEnvironmentId := managedEnvironmentIdARMID
+ result.Properties.ManagedEnvironmentId = &managedEnvironmentId
+ }
+ if containerApp.Template != nil {
+ template_ARM, err := (*containerApp.Template).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ template := *template_ARM.(*arm.Template)
+ result.Properties.Template = &template
+ }
+ if containerApp.WorkloadProfileName != nil {
+ workloadProfileName := *containerApp.WorkloadProfileName
+ result.Properties.WorkloadProfileName = &workloadProfileName
+ }
+
+ // Set property "Tags":
+ if containerApp.Tags != nil {
+ result.Tags = make(map[string]string, len(containerApp.Tags))
+ for key, value := range containerApp.Tags {
+ result.Tags[key] = value
+ }
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (containerApp *ContainerApp_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerApp_Spec{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (containerApp *ContainerApp_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerApp_Spec)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerApp_Spec, got %T", armInput)
+ }
+
+ // Set property "AzureName":
+ containerApp.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name))
+
+ // Set property "Configuration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Configuration != nil {
+ var configuration1 Configuration
+ err := configuration1.PopulateFromARM(owner, *typedInput.Properties.Configuration)
+ if err != nil {
+ return err
+ }
+ configuration := configuration1
+ containerApp.Configuration = &configuration
+ }
+ }
+
+ // no assignment for property "EnvironmentReference"
+
+ // Set property "ExtendedLocation":
+ if typedInput.ExtendedLocation != nil {
+ var extendedLocation1 ExtendedLocation
+ err := extendedLocation1.PopulateFromARM(owner, *typedInput.ExtendedLocation)
+ if err != nil {
+ return err
+ }
+ extendedLocation := extendedLocation1
+ containerApp.ExtendedLocation = &extendedLocation
+ }
+
+ // Set property "Identity":
+ if typedInput.Identity != nil {
+ var identity1 ManagedServiceIdentity
+ err := identity1.PopulateFromARM(owner, *typedInput.Identity)
+ if err != nil {
+ return err
+ }
+ identity := identity1
+ containerApp.Identity = &identity
+ }
+
+ // Set property "Location":
+ if typedInput.Location != nil {
+ location := *typedInput.Location
+ containerApp.Location = &location
+ }
+
+ // no assignment for property "ManagedByReference"
+
+ // no assignment for property "ManagedEnvironmentReference"
+
+ // no assignment for property "OperatorSpec"
+
+ // Set property "Owner":
+ containerApp.Owner = &genruntime.KnownResourceReference{
+ Name: owner.Name,
+ ARMID: owner.ARMID,
+ }
+
+ // Set property "Tags":
+ if typedInput.Tags != nil {
+ containerApp.Tags = make(map[string]string, len(typedInput.Tags))
+ for key, value := range typedInput.Tags {
+ containerApp.Tags[key] = value
+ }
+ }
+
+ // Set property "Template":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Template != nil {
+ var template1 Template
+ err := template1.PopulateFromARM(owner, *typedInput.Properties.Template)
+ if err != nil {
+ return err
+ }
+ template := template1
+ containerApp.Template = &template
+ }
+ }
+
+ // Set property "WorkloadProfileName":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.WorkloadProfileName != nil {
+ workloadProfileName := *typedInput.Properties.WorkloadProfileName
+ containerApp.WorkloadProfileName = &workloadProfileName
+ }
+ }
+
+ // No error
+ return nil
+}
+
+var _ genruntime.ConvertibleSpec = &ContainerApp_Spec{}
+
+// ConvertSpecFrom populates our ContainerApp_Spec from the provided source
+func (containerApp *ContainerApp_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error {
+ src, ok := source.(*storage.ContainerApp_Spec)
+ if ok {
+ // Populate our instance from source
+ return containerApp.AssignProperties_From_ContainerApp_Spec(src)
+ }
+
+ // Convert to an intermediate form
+ src = &storage.ContainerApp_Spec{}
+ err := src.ConvertSpecFrom(source)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertSpecFrom()")
+ }
+
+ // Update our instance from src
+ err = containerApp.AssignProperties_From_ContainerApp_Spec(src)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertSpecFrom()")
+ }
+
+ return nil
+}
+
+// ConvertSpecTo populates the provided destination from our ContainerApp_Spec
+func (containerApp *ContainerApp_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error {
+ dst, ok := destination.(*storage.ContainerApp_Spec)
+ if ok {
+ // Populate destination from our instance
+ return containerApp.AssignProperties_To_ContainerApp_Spec(dst)
+ }
+
+ // Convert to an intermediate form
+ dst = &storage.ContainerApp_Spec{}
+ err := containerApp.AssignProperties_To_ContainerApp_Spec(dst)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertSpecTo()")
+ }
+
+ // Update dst from our instance
+ err = dst.ConvertSpecTo(destination)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertSpecTo()")
+ }
+
+ return nil
+}
+
+// AssignProperties_From_ContainerApp_Spec populates our ContainerApp_Spec from the provided source ContainerApp_Spec
+func (containerApp *ContainerApp_Spec) AssignProperties_From_ContainerApp_Spec(source *storage.ContainerApp_Spec) error {
+
+ // AzureName
+ containerApp.AzureName = source.AzureName
+
+ // Configuration
+ if source.Configuration != nil {
+ var configuration Configuration
+ err := configuration.AssignProperties_From_Configuration(source.Configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Configuration() to populate field Configuration")
+ }
+ containerApp.Configuration = &configuration
+ } else {
+ containerApp.Configuration = nil
+ }
+
+ // EnvironmentReference
+ if source.EnvironmentReference != nil {
+ environmentReference := source.EnvironmentReference.Copy()
+ containerApp.EnvironmentReference = &environmentReference
+ } else {
+ containerApp.EnvironmentReference = nil
+ }
+
+ // ExtendedLocation
+ if source.ExtendedLocation != nil {
+ var extendedLocation ExtendedLocation
+ err := extendedLocation.AssignProperties_From_ExtendedLocation(source.ExtendedLocation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ExtendedLocation() to populate field ExtendedLocation")
+ }
+ containerApp.ExtendedLocation = &extendedLocation
+ } else {
+ containerApp.ExtendedLocation = nil
+ }
+
+ // Identity
+ if source.Identity != nil {
+ var identity ManagedServiceIdentity
+ err := identity.AssignProperties_From_ManagedServiceIdentity(source.Identity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedServiceIdentity() to populate field Identity")
+ }
+ containerApp.Identity = &identity
+ } else {
+ containerApp.Identity = nil
+ }
+
+ // Location
+ containerApp.Location = genruntime.ClonePointerToString(source.Location)
+
+ // ManagedByReference
+ if source.ManagedByReference != nil {
+ managedByReference := source.ManagedByReference.Copy()
+ containerApp.ManagedByReference = &managedByReference
+ } else {
+ containerApp.ManagedByReference = nil
+ }
+
+ // ManagedEnvironmentReference
+ if source.ManagedEnvironmentReference != nil {
+ managedEnvironmentReference := source.ManagedEnvironmentReference.Copy()
+ containerApp.ManagedEnvironmentReference = &managedEnvironmentReference
+ } else {
+ containerApp.ManagedEnvironmentReference = nil
+ }
+
+ // OperatorSpec
+ if source.OperatorSpec != nil {
+ var operatorSpec ContainerAppOperatorSpec
+ err := operatorSpec.AssignProperties_From_ContainerAppOperatorSpec(source.OperatorSpec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppOperatorSpec() to populate field OperatorSpec")
+ }
+ containerApp.OperatorSpec = &operatorSpec
+ } else {
+ containerApp.OperatorSpec = nil
+ }
+
+ // Owner
+ if source.Owner != nil {
+ owner := source.Owner.Copy()
+ containerApp.Owner = &owner
+ } else {
+ containerApp.Owner = nil
+ }
+
+ // Tags
+ containerApp.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // Template
+ if source.Template != nil {
+ var template Template
+ err := template.AssignProperties_From_Template(source.Template)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Template() to populate field Template")
+ }
+ containerApp.Template = &template
+ } else {
+ containerApp.Template = nil
+ }
+
+ // WorkloadProfileName
+ containerApp.WorkloadProfileName = genruntime.ClonePointerToString(source.WorkloadProfileName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerApp_Spec populates the provided destination ContainerApp_Spec from our ContainerApp_Spec
+func (containerApp *ContainerApp_Spec) AssignProperties_To_ContainerApp_Spec(destination *storage.ContainerApp_Spec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AzureName
+ destination.AzureName = containerApp.AzureName
+
+ // Configuration
+ if containerApp.Configuration != nil {
+ var configuration storage.Configuration
+ err := containerApp.Configuration.AssignProperties_To_Configuration(&configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Configuration() to populate field Configuration")
+ }
+ destination.Configuration = &configuration
+ } else {
+ destination.Configuration = nil
+ }
+
+ // EnvironmentReference
+ if containerApp.EnvironmentReference != nil {
+ environmentReference := containerApp.EnvironmentReference.Copy()
+ destination.EnvironmentReference = &environmentReference
+ } else {
+ destination.EnvironmentReference = nil
+ }
+
+ // ExtendedLocation
+ if containerApp.ExtendedLocation != nil {
+ var extendedLocation storage.ExtendedLocation
+ err := containerApp.ExtendedLocation.AssignProperties_To_ExtendedLocation(&extendedLocation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ExtendedLocation() to populate field ExtendedLocation")
+ }
+ destination.ExtendedLocation = &extendedLocation
+ } else {
+ destination.ExtendedLocation = nil
+ }
+
+ // Identity
+ if containerApp.Identity != nil {
+ var identity storage.ManagedServiceIdentity
+ err := containerApp.Identity.AssignProperties_To_ManagedServiceIdentity(&identity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedServiceIdentity() to populate field Identity")
+ }
+ destination.Identity = &identity
+ } else {
+ destination.Identity = nil
+ }
+
+ // Location
+ destination.Location = genruntime.ClonePointerToString(containerApp.Location)
+
+ // ManagedByReference
+ if containerApp.ManagedByReference != nil {
+ managedByReference := containerApp.ManagedByReference.Copy()
+ destination.ManagedByReference = &managedByReference
+ } else {
+ destination.ManagedByReference = nil
+ }
+
+ // ManagedEnvironmentReference
+ if containerApp.ManagedEnvironmentReference != nil {
+ managedEnvironmentReference := containerApp.ManagedEnvironmentReference.Copy()
+ destination.ManagedEnvironmentReference = &managedEnvironmentReference
+ } else {
+ destination.ManagedEnvironmentReference = nil
+ }
+
+ // OperatorSpec
+ if containerApp.OperatorSpec != nil {
+ var operatorSpec storage.ContainerAppOperatorSpec
+ err := containerApp.OperatorSpec.AssignProperties_To_ContainerAppOperatorSpec(&operatorSpec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppOperatorSpec() to populate field OperatorSpec")
+ }
+ destination.OperatorSpec = &operatorSpec
+ } else {
+ destination.OperatorSpec = nil
+ }
+
+ // OriginalVersion
+ destination.OriginalVersion = containerApp.OriginalVersion()
+
+ // Owner
+ if containerApp.Owner != nil {
+ owner := containerApp.Owner.Copy()
+ destination.Owner = &owner
+ } else {
+ destination.Owner = nil
+ }
+
+ // Tags
+ destination.Tags = genruntime.CloneMapOfStringToString(containerApp.Tags)
+
+ // Template
+ if containerApp.Template != nil {
+ var template storage.Template
+ err := containerApp.Template.AssignProperties_To_Template(&template)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Template() to populate field Template")
+ }
+ destination.Template = &template
+ } else {
+ destination.Template = nil
+ }
+
+ // WorkloadProfileName
+ destination.WorkloadProfileName = genruntime.ClonePointerToString(containerApp.WorkloadProfileName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ContainerApp_STATUS populates our ContainerApp_Spec from the provided source ContainerApp_STATUS
+func (containerApp *ContainerApp_Spec) Initialize_From_ContainerApp_STATUS(source *ContainerApp_STATUS) error {
+
+ // Configuration
+ if source.Configuration != nil {
+ var configuration Configuration
+ err := configuration.Initialize_From_Configuration_STATUS(source.Configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Configuration_STATUS() to populate field Configuration")
+ }
+ containerApp.Configuration = &configuration
+ } else {
+ containerApp.Configuration = nil
+ }
+
+ // EnvironmentReference
+ if source.EnvironmentId != nil {
+ environmentReference := genruntime.CreateResourceReferenceFromARMID(*source.EnvironmentId)
+ containerApp.EnvironmentReference = &environmentReference
+ } else {
+ containerApp.EnvironmentReference = nil
+ }
+
+ // ExtendedLocation
+ if source.ExtendedLocation != nil {
+ var extendedLocation ExtendedLocation
+ err := extendedLocation.Initialize_From_ExtendedLocation_STATUS(source.ExtendedLocation)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ExtendedLocation_STATUS() to populate field ExtendedLocation")
+ }
+ containerApp.ExtendedLocation = &extendedLocation
+ } else {
+ containerApp.ExtendedLocation = nil
+ }
+
+ // Identity
+ if source.Identity != nil {
+ var identity ManagedServiceIdentity
+ err := identity.Initialize_From_ManagedServiceIdentity_STATUS(source.Identity)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ManagedServiceIdentity_STATUS() to populate field Identity")
+ }
+ containerApp.Identity = &identity
+ } else {
+ containerApp.Identity = nil
+ }
+
+ // Location
+ containerApp.Location = genruntime.ClonePointerToString(source.Location)
+
+ // ManagedEnvironmentReference
+ if source.ManagedEnvironmentId != nil {
+ managedEnvironmentReference := genruntime.CreateResourceReferenceFromARMID(*source.ManagedEnvironmentId)
+ containerApp.ManagedEnvironmentReference = &managedEnvironmentReference
+ } else {
+ containerApp.ManagedEnvironmentReference = nil
+ }
+
+ // Tags
+ containerApp.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // Template
+ if source.Template != nil {
+ var template Template
+ err := template.Initialize_From_Template_STATUS(source.Template)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Template_STATUS() to populate field Template")
+ }
+ containerApp.Template = &template
+ } else {
+ containerApp.Template = nil
+ }
+
+ // WorkloadProfileName
+ containerApp.WorkloadProfileName = genruntime.ClonePointerToString(source.WorkloadProfileName)
+
+ // No error
+ return nil
+}
+
+// OriginalVersion returns the original API version used to create the resource.
+func (containerApp *ContainerApp_Spec) OriginalVersion() string {
+ return GroupVersion.Version
+}
+
+// SetAzureName sets the Azure name of the resource
+func (containerApp *ContainerApp_Spec) SetAzureName(azureName string) {
+ containerApp.AzureName = azureName
+}
+
+// Container App.
+type ContainerApp_STATUS struct {
+ // Conditions: The observed state of the resource
+ Conditions []conditions.Condition `json:"conditions,omitempty"`
+
+ // Configuration: Non versioned Container App configuration properties.
+ Configuration *Configuration_STATUS `json:"configuration,omitempty"`
+
+ // CustomDomainVerificationId: Id used to verify domain name ownership
+ CustomDomainVerificationId *string `json:"customDomainVerificationId,omitempty"`
+
+ // EnvironmentId: Resource ID of environment.
+ EnvironmentId *string `json:"environmentId,omitempty"`
+
+ // EventStreamEndpoint: The endpoint of the eventstream of the container app.
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+
+ // ExtendedLocation: The complex type of the extended location.
+ ExtendedLocation *ExtendedLocation_STATUS `json:"extendedLocation,omitempty"`
+
+ // Id: Fully qualified resource ID for the resource. Ex -
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ Id *string `json:"id,omitempty"`
+
+ // Identity: managed identities for the Container App to interact with other Azure services without maintaining any secrets
+ // or credentials in code.
+ Identity *ManagedServiceIdentity_STATUS `json:"identity,omitempty"`
+
+ // LatestReadyRevisionName: Name of the latest ready revision of the Container App.
+ LatestReadyRevisionName *string `json:"latestReadyRevisionName,omitempty"`
+
+ // LatestRevisionFqdn: Fully Qualified Domain Name of the latest revision of the Container App.
+ LatestRevisionFqdn *string `json:"latestRevisionFqdn,omitempty"`
+
+ // LatestRevisionName: Name of the latest revision of the Container App.
+ LatestRevisionName *string `json:"latestRevisionName,omitempty"`
+
+ // Location: The geo-location where the resource lives
+ Location *string `json:"location,omitempty"`
+
+ // ManagedBy: The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is
+ // managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is
+ // removed from the template since it is managed by another resource.
+ ManagedBy *string `json:"managedBy,omitempty"`
+
+ // ManagedEnvironmentId: Deprecated. Resource ID of the Container App's environment.
+ ManagedEnvironmentId *string `json:"managedEnvironmentId,omitempty"`
+
+ // Name: The name of the resource
+ Name *string `json:"name,omitempty"`
+
+ // OutboundIpAddresses: Outbound IP Addresses for container app.
+ OutboundIpAddresses []string `json:"outboundIpAddresses,omitempty"`
+
+ // ProvisioningState: Provisioning state of the Container App.
+ ProvisioningState *ContainerApp_Properties_ProvisioningState_STATUS `json:"provisioningState,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"`
+
+ // Template: Container App versioned application definition.
+ Template *Template_STATUS `json:"template,omitempty"`
+
+ // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
+ Type *string `json:"type,omitempty"`
+
+ // WorkloadProfileName: Workload profile name to pin for container app execution.
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+var _ genruntime.ConvertibleStatus = &ContainerApp_STATUS{}
+
+// ConvertStatusFrom populates our ContainerApp_STATUS from the provided source
+func (containerApp *ContainerApp_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error {
+ src, ok := source.(*storage.ContainerApp_STATUS)
+ if ok {
+ // Populate our instance from source
+ return containerApp.AssignProperties_From_ContainerApp_STATUS(src)
+ }
+
+ // Convert to an intermediate form
+ src = &storage.ContainerApp_STATUS{}
+ err := src.ConvertStatusFrom(source)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertStatusFrom()")
+ }
+
+ // Update our instance from src
+ err = containerApp.AssignProperties_From_ContainerApp_STATUS(src)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertStatusFrom()")
+ }
+
+ return nil
+}
+
+// ConvertStatusTo populates the provided destination from our ContainerApp_STATUS
+func (containerApp *ContainerApp_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error {
+ dst, ok := destination.(*storage.ContainerApp_STATUS)
+ if ok {
+ // Populate destination from our instance
+ return containerApp.AssignProperties_To_ContainerApp_STATUS(dst)
+ }
+
+ // Convert to an intermediate form
+ dst = &storage.ContainerApp_STATUS{}
+ err := containerApp.AssignProperties_To_ContainerApp_STATUS(dst)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertStatusTo()")
+ }
+
+ // Update dst from our instance
+ err = dst.ConvertStatusTo(destination)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertStatusTo()")
+ }
+
+ return nil
+}
+
+var _ genruntime.FromARMConverter = &ContainerApp_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (containerApp *ContainerApp_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerApp_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (containerApp *ContainerApp_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerApp_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerApp_STATUS, got %T", armInput)
+ }
+
+ // no assignment for property "Conditions"
+
+ // Set property "Configuration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Configuration != nil {
+ var configuration1 Configuration_STATUS
+ err := configuration1.PopulateFromARM(owner, *typedInput.Properties.Configuration)
+ if err != nil {
+ return err
+ }
+ configuration := configuration1
+ containerApp.Configuration = &configuration
+ }
+ }
+
+ // Set property "CustomDomainVerificationId":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.CustomDomainVerificationId != nil {
+ customDomainVerificationId := *typedInput.Properties.CustomDomainVerificationId
+ containerApp.CustomDomainVerificationId = &customDomainVerificationId
+ }
+ }
+
+ // Set property "EnvironmentId":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.EnvironmentId != nil {
+ environmentId := *typedInput.Properties.EnvironmentId
+ containerApp.EnvironmentId = &environmentId
+ }
+ }
+
+ // Set property "EventStreamEndpoint":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.EventStreamEndpoint != nil {
+ eventStreamEndpoint := *typedInput.Properties.EventStreamEndpoint
+ containerApp.EventStreamEndpoint = &eventStreamEndpoint
+ }
+ }
+
+ // Set property "ExtendedLocation":
+ if typedInput.ExtendedLocation != nil {
+ var extendedLocation1 ExtendedLocation_STATUS
+ err := extendedLocation1.PopulateFromARM(owner, *typedInput.ExtendedLocation)
+ if err != nil {
+ return err
+ }
+ extendedLocation := extendedLocation1
+ containerApp.ExtendedLocation = &extendedLocation
+ }
+
+ // Set property "Id":
+ if typedInput.Id != nil {
+ id := *typedInput.Id
+ containerApp.Id = &id
+ }
+
+ // Set property "Identity":
+ if typedInput.Identity != nil {
+ var identity1 ManagedServiceIdentity_STATUS
+ err := identity1.PopulateFromARM(owner, *typedInput.Identity)
+ if err != nil {
+ return err
+ }
+ identity := identity1
+ containerApp.Identity = &identity
+ }
+
+ // Set property "LatestReadyRevisionName":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.LatestReadyRevisionName != nil {
+ latestReadyRevisionName := *typedInput.Properties.LatestReadyRevisionName
+ containerApp.LatestReadyRevisionName = &latestReadyRevisionName
+ }
+ }
+
+ // Set property "LatestRevisionFqdn":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.LatestRevisionFqdn != nil {
+ latestRevisionFqdn := *typedInput.Properties.LatestRevisionFqdn
+ containerApp.LatestRevisionFqdn = &latestRevisionFqdn
+ }
+ }
+
+ // Set property "LatestRevisionName":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.LatestRevisionName != nil {
+ latestRevisionName := *typedInput.Properties.LatestRevisionName
+ containerApp.LatestRevisionName = &latestRevisionName
+ }
+ }
+
+ // Set property "Location":
+ if typedInput.Location != nil {
+ location := *typedInput.Location
+ containerApp.Location = &location
+ }
+
+ // Set property "ManagedBy":
+ if typedInput.ManagedBy != nil {
+ managedBy := *typedInput.ManagedBy
+ containerApp.ManagedBy = &managedBy
+ }
+
+ // Set property "ManagedEnvironmentId":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.ManagedEnvironmentId != nil {
+ managedEnvironmentId := *typedInput.Properties.ManagedEnvironmentId
+ containerApp.ManagedEnvironmentId = &managedEnvironmentId
+ }
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ containerApp.Name = &name
+ }
+
+ // Set property "OutboundIpAddresses":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ for _, item := range typedInput.Properties.OutboundIpAddresses {
+ containerApp.OutboundIpAddresses = append(containerApp.OutboundIpAddresses, item)
+ }
+ }
+
+ // Set property "ProvisioningState":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.ProvisioningState != nil {
+ var temp string
+ temp = string(*typedInput.Properties.ProvisioningState)
+ provisioningState := ContainerApp_Properties_ProvisioningState_STATUS(temp)
+ containerApp.ProvisioningState = &provisioningState
+ }
+ }
+
+ // Set property "SystemData":
+ if typedInput.SystemData != nil {
+ var systemData1 SystemData_STATUS
+ err := systemData1.PopulateFromARM(owner, *typedInput.SystemData)
+ if err != nil {
+ return err
+ }
+ systemData := systemData1
+ containerApp.SystemData = &systemData
+ }
+
+ // Set property "Tags":
+ if typedInput.Tags != nil {
+ containerApp.Tags = make(map[string]string, len(typedInput.Tags))
+ for key, value := range typedInput.Tags {
+ containerApp.Tags[key] = value
+ }
+ }
+
+ // Set property "Template":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Template != nil {
+ var template1 Template_STATUS
+ err := template1.PopulateFromARM(owner, *typedInput.Properties.Template)
+ if err != nil {
+ return err
+ }
+ template := template1
+ containerApp.Template = &template
+ }
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ containerApp.Type = &typeVar
+ }
+
+ // Set property "WorkloadProfileName":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.WorkloadProfileName != nil {
+ workloadProfileName := *typedInput.Properties.WorkloadProfileName
+ containerApp.WorkloadProfileName = &workloadProfileName
+ }
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerApp_STATUS populates our ContainerApp_STATUS from the provided source ContainerApp_STATUS
+func (containerApp *ContainerApp_STATUS) AssignProperties_From_ContainerApp_STATUS(source *storage.ContainerApp_STATUS) error {
+
+ // Conditions
+ containerApp.Conditions = genruntime.CloneSliceOfCondition(source.Conditions)
+
+ // Configuration
+ if source.Configuration != nil {
+ var configuration Configuration_STATUS
+ err := configuration.AssignProperties_From_Configuration_STATUS(source.Configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Configuration_STATUS() to populate field Configuration")
+ }
+ containerApp.Configuration = &configuration
+ } else {
+ containerApp.Configuration = nil
+ }
+
+ // CustomDomainVerificationId
+ containerApp.CustomDomainVerificationId = genruntime.ClonePointerToString(source.CustomDomainVerificationId)
+
+ // EnvironmentId
+ containerApp.EnvironmentId = genruntime.ClonePointerToString(source.EnvironmentId)
+
+ // EventStreamEndpoint
+ containerApp.EventStreamEndpoint = genruntime.ClonePointerToString(source.EventStreamEndpoint)
+
+ // ExtendedLocation
+ if source.ExtendedLocation != nil {
+ var extendedLocation ExtendedLocation_STATUS
+ err := extendedLocation.AssignProperties_From_ExtendedLocation_STATUS(source.ExtendedLocation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ExtendedLocation_STATUS() to populate field ExtendedLocation")
+ }
+ containerApp.ExtendedLocation = &extendedLocation
+ } else {
+ containerApp.ExtendedLocation = nil
+ }
+
+ // Id
+ containerApp.Id = genruntime.ClonePointerToString(source.Id)
+
+ // Identity
+ if source.Identity != nil {
+ var identity ManagedServiceIdentity_STATUS
+ err := identity.AssignProperties_From_ManagedServiceIdentity_STATUS(source.Identity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedServiceIdentity_STATUS() to populate field Identity")
+ }
+ containerApp.Identity = &identity
+ } else {
+ containerApp.Identity = nil
+ }
+
+ // LatestReadyRevisionName
+ containerApp.LatestReadyRevisionName = genruntime.ClonePointerToString(source.LatestReadyRevisionName)
+
+ // LatestRevisionFqdn
+ containerApp.LatestRevisionFqdn = genruntime.ClonePointerToString(source.LatestRevisionFqdn)
+
+ // LatestRevisionName
+ containerApp.LatestRevisionName = genruntime.ClonePointerToString(source.LatestRevisionName)
+
+ // Location
+ containerApp.Location = genruntime.ClonePointerToString(source.Location)
+
+ // ManagedBy
+ containerApp.ManagedBy = genruntime.ClonePointerToString(source.ManagedBy)
+
+ // ManagedEnvironmentId
+ containerApp.ManagedEnvironmentId = genruntime.ClonePointerToString(source.ManagedEnvironmentId)
+
+ // Name
+ containerApp.Name = genruntime.ClonePointerToString(source.Name)
+
+ // OutboundIpAddresses
+ containerApp.OutboundIpAddresses = genruntime.CloneSliceOfString(source.OutboundIpAddresses)
+
+ // ProvisioningState
+ if source.ProvisioningState != nil {
+ provisioningState := *source.ProvisioningState
+ provisioningStateTemp := genruntime.ToEnum(provisioningState, containerApp_Properties_ProvisioningState_STATUS_Values)
+ containerApp.ProvisioningState = &provisioningStateTemp
+ } else {
+ containerApp.ProvisioningState = nil
+ }
+
+ // SystemData
+ if source.SystemData != nil {
+ var systemDatum SystemData_STATUS
+ err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData")
+ }
+ containerApp.SystemData = &systemDatum
+ } else {
+ containerApp.SystemData = nil
+ }
+
+ // Tags
+ containerApp.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // Template
+ if source.Template != nil {
+ var template Template_STATUS
+ err := template.AssignProperties_From_Template_STATUS(source.Template)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Template_STATUS() to populate field Template")
+ }
+ containerApp.Template = &template
+ } else {
+ containerApp.Template = nil
+ }
+
+ // Type
+ containerApp.Type = genruntime.ClonePointerToString(source.Type)
+
+ // WorkloadProfileName
+ containerApp.WorkloadProfileName = genruntime.ClonePointerToString(source.WorkloadProfileName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerApp_STATUS populates the provided destination ContainerApp_STATUS from our ContainerApp_STATUS
+func (containerApp *ContainerApp_STATUS) AssignProperties_To_ContainerApp_STATUS(destination *storage.ContainerApp_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Conditions
+ destination.Conditions = genruntime.CloneSliceOfCondition(containerApp.Conditions)
+
+ // Configuration
+ if containerApp.Configuration != nil {
+ var configuration storage.Configuration_STATUS
+ err := containerApp.Configuration.AssignProperties_To_Configuration_STATUS(&configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Configuration_STATUS() to populate field Configuration")
+ }
+ destination.Configuration = &configuration
+ } else {
+ destination.Configuration = nil
+ }
+
+ // CustomDomainVerificationId
+ destination.CustomDomainVerificationId = genruntime.ClonePointerToString(containerApp.CustomDomainVerificationId)
+
+ // EnvironmentId
+ destination.EnvironmentId = genruntime.ClonePointerToString(containerApp.EnvironmentId)
+
+ // EventStreamEndpoint
+ destination.EventStreamEndpoint = genruntime.ClonePointerToString(containerApp.EventStreamEndpoint)
+
+ // ExtendedLocation
+ if containerApp.ExtendedLocation != nil {
+ var extendedLocation storage.ExtendedLocation_STATUS
+ err := containerApp.ExtendedLocation.AssignProperties_To_ExtendedLocation_STATUS(&extendedLocation)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ExtendedLocation_STATUS() to populate field ExtendedLocation")
+ }
+ destination.ExtendedLocation = &extendedLocation
+ } else {
+ destination.ExtendedLocation = nil
+ }
+
+ // Id
+ destination.Id = genruntime.ClonePointerToString(containerApp.Id)
+
+ // Identity
+ if containerApp.Identity != nil {
+ var identity storage.ManagedServiceIdentity_STATUS
+ err := containerApp.Identity.AssignProperties_To_ManagedServiceIdentity_STATUS(&identity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedServiceIdentity_STATUS() to populate field Identity")
+ }
+ destination.Identity = &identity
+ } else {
+ destination.Identity = nil
+ }
+
+ // LatestReadyRevisionName
+ destination.LatestReadyRevisionName = genruntime.ClonePointerToString(containerApp.LatestReadyRevisionName)
+
+ // LatestRevisionFqdn
+ destination.LatestRevisionFqdn = genruntime.ClonePointerToString(containerApp.LatestRevisionFqdn)
+
+ // LatestRevisionName
+ destination.LatestRevisionName = genruntime.ClonePointerToString(containerApp.LatestRevisionName)
+
+ // Location
+ destination.Location = genruntime.ClonePointerToString(containerApp.Location)
+
+ // ManagedBy
+ destination.ManagedBy = genruntime.ClonePointerToString(containerApp.ManagedBy)
+
+ // ManagedEnvironmentId
+ destination.ManagedEnvironmentId = genruntime.ClonePointerToString(containerApp.ManagedEnvironmentId)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(containerApp.Name)
+
+ // OutboundIpAddresses
+ destination.OutboundIpAddresses = genruntime.CloneSliceOfString(containerApp.OutboundIpAddresses)
+
+ // ProvisioningState
+ if containerApp.ProvisioningState != nil {
+ provisioningState := string(*containerApp.ProvisioningState)
+ destination.ProvisioningState = &provisioningState
+ } else {
+ destination.ProvisioningState = nil
+ }
+
+ // SystemData
+ if containerApp.SystemData != nil {
+ var systemDatum storage.SystemData_STATUS
+ err := containerApp.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData")
+ }
+ destination.SystemData = &systemDatum
+ } else {
+ destination.SystemData = nil
+ }
+
+ // Tags
+ destination.Tags = genruntime.CloneMapOfStringToString(containerApp.Tags)
+
+ // Template
+ if containerApp.Template != nil {
+ var template storage.Template_STATUS
+ err := containerApp.Template.AssignProperties_To_Template_STATUS(&template)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Template_STATUS() to populate field Template")
+ }
+ destination.Template = &template
+ } else {
+ destination.Template = nil
+ }
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(containerApp.Type)
+
+ // WorkloadProfileName
+ destination.WorkloadProfileName = genruntime.ClonePointerToString(containerApp.WorkloadProfileName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Non versioned Container App configuration properties that define the mutable settings of a Container app
+type Configuration struct {
+ // ActiveRevisionsMode: ActiveRevisionsMode controls how active revisions are handled for the Container app:
+ // - Multiple: multiple revisions can be active.
- Single: Only one revision can be active at a time.
+ // Revision weights can not be used in this mode. If no value if provided, this is the default.
+ ActiveRevisionsMode *Configuration_ActiveRevisionsMode `json:"activeRevisionsMode,omitempty"`
+
+ // Dapr: Dapr configuration for the Container App.
+ Dapr *Dapr `json:"dapr,omitempty"`
+
+ // Ingress: Ingress configurations.
+ Ingress *Ingress `json:"ingress,omitempty"`
+
+ // MaxInactiveRevisions: Optional. Max inactive revisions a Container App can have.
+ MaxInactiveRevisions *int `json:"maxInactiveRevisions,omitempty"`
+
+ // Registries: Collection of private container registry credentials for containers used by the Container app
+ Registries []RegistryCredentials `json:"registries,omitempty"`
+
+ // Secrets: Collection of secrets used by a Container app
+ Secrets []Secret `json:"secrets,omitempty"`
+
+ // Service: Container App to be a dev Container App Service
+ Service *Service `json:"service,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Configuration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (configuration *Configuration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if configuration == nil {
+ return nil, nil
+ }
+ result := &arm.Configuration{}
+
+ // Set property "ActiveRevisionsMode":
+ if configuration.ActiveRevisionsMode != nil {
+ var temp string
+ temp = string(*configuration.ActiveRevisionsMode)
+ activeRevisionsMode := arm.Configuration_ActiveRevisionsMode(temp)
+ result.ActiveRevisionsMode = &activeRevisionsMode
+ }
+
+ // Set property "Dapr":
+ if configuration.Dapr != nil {
+ dapr_ARM, err := (*configuration.Dapr).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ dapr := *dapr_ARM.(*arm.Dapr)
+ result.Dapr = &dapr
+ }
+
+ // Set property "Ingress":
+ if configuration.Ingress != nil {
+ ingress_ARM, err := (*configuration.Ingress).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ ingress := *ingress_ARM.(*arm.Ingress)
+ result.Ingress = &ingress
+ }
+
+ // Set property "MaxInactiveRevisions":
+ if configuration.MaxInactiveRevisions != nil {
+ maxInactiveRevisions := *configuration.MaxInactiveRevisions
+ result.MaxInactiveRevisions = &maxInactiveRevisions
+ }
+
+ // Set property "Registries":
+ for _, item := range configuration.Registries {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Registries = append(result.Registries, *item_ARM.(*arm.RegistryCredentials))
+ }
+
+ // Set property "Secrets":
+ for _, item := range configuration.Secrets {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Secrets = append(result.Secrets, *item_ARM.(*arm.Secret))
+ }
+
+ // Set property "Service":
+ if configuration.Service != nil {
+ service_ARM, err := (*configuration.Service).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ service := *service_ARM.(*arm.Service)
+ result.Service = &service
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *Configuration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Configuration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *Configuration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Configuration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Configuration, got %T", armInput)
+ }
+
+ // Set property "ActiveRevisionsMode":
+ if typedInput.ActiveRevisionsMode != nil {
+ var temp string
+ temp = string(*typedInput.ActiveRevisionsMode)
+ activeRevisionsMode := Configuration_ActiveRevisionsMode(temp)
+ configuration.ActiveRevisionsMode = &activeRevisionsMode
+ }
+
+ // Set property "Dapr":
+ if typedInput.Dapr != nil {
+ var dapr1 Dapr
+ err := dapr1.PopulateFromARM(owner, *typedInput.Dapr)
+ if err != nil {
+ return err
+ }
+ dapr := dapr1
+ configuration.Dapr = &dapr
+ }
+
+ // Set property "Ingress":
+ if typedInput.Ingress != nil {
+ var ingress1 Ingress
+ err := ingress1.PopulateFromARM(owner, *typedInput.Ingress)
+ if err != nil {
+ return err
+ }
+ ingress := ingress1
+ configuration.Ingress = &ingress
+ }
+
+ // Set property "MaxInactiveRevisions":
+ if typedInput.MaxInactiveRevisions != nil {
+ maxInactiveRevisions := *typedInput.MaxInactiveRevisions
+ configuration.MaxInactiveRevisions = &maxInactiveRevisions
+ }
+
+ // Set property "Registries":
+ for _, item := range typedInput.Registries {
+ var item1 RegistryCredentials
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ configuration.Registries = append(configuration.Registries, item1)
+ }
+
+ // Set property "Secrets":
+ for _, item := range typedInput.Secrets {
+ var item1 Secret
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ configuration.Secrets = append(configuration.Secrets, item1)
+ }
+
+ // Set property "Service":
+ if typedInput.Service != nil {
+ var service1 Service
+ err := service1.PopulateFromARM(owner, *typedInput.Service)
+ if err != nil {
+ return err
+ }
+ service := service1
+ configuration.Service = &service
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Configuration populates our Configuration from the provided source Configuration
+func (configuration *Configuration) AssignProperties_From_Configuration(source *storage.Configuration) error {
+
+ // ActiveRevisionsMode
+ if source.ActiveRevisionsMode != nil {
+ activeRevisionsMode := *source.ActiveRevisionsMode
+ activeRevisionsModeTemp := genruntime.ToEnum(activeRevisionsMode, configuration_ActiveRevisionsMode_Values)
+ configuration.ActiveRevisionsMode = &activeRevisionsModeTemp
+ } else {
+ configuration.ActiveRevisionsMode = nil
+ }
+
+ // Dapr
+ if source.Dapr != nil {
+ var dapr Dapr
+ err := dapr.AssignProperties_From_Dapr(source.Dapr)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Dapr() to populate field Dapr")
+ }
+ configuration.Dapr = &dapr
+ } else {
+ configuration.Dapr = nil
+ }
+
+ // Ingress
+ if source.Ingress != nil {
+ var ingress Ingress
+ err := ingress.AssignProperties_From_Ingress(source.Ingress)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Ingress() to populate field Ingress")
+ }
+ configuration.Ingress = &ingress
+ } else {
+ configuration.Ingress = nil
+ }
+
+ // MaxInactiveRevisions
+ configuration.MaxInactiveRevisions = genruntime.ClonePointerToInt(source.MaxInactiveRevisions)
+
+ // Registries
+ if source.Registries != nil {
+ registryList := make([]RegistryCredentials, len(source.Registries))
+ for registryIndex, registryItem := range source.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry RegistryCredentials
+ err := registry.AssignProperties_From_RegistryCredentials(®istryItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_RegistryCredentials() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ configuration.Registries = registryList
+ } else {
+ configuration.Registries = nil
+ }
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]Secret, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret Secret
+ err := secret.AssignProperties_From_Secret(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Secret() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ configuration.Secrets = secretList
+ } else {
+ configuration.Secrets = nil
+ }
+
+ // Service
+ if source.Service != nil {
+ var service Service
+ err := service.AssignProperties_From_Service(source.Service)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Service() to populate field Service")
+ }
+ configuration.Service = &service
+ } else {
+ configuration.Service = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Configuration populates the provided destination Configuration from our Configuration
+func (configuration *Configuration) AssignProperties_To_Configuration(destination *storage.Configuration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ActiveRevisionsMode
+ if configuration.ActiveRevisionsMode != nil {
+ activeRevisionsMode := string(*configuration.ActiveRevisionsMode)
+ destination.ActiveRevisionsMode = &activeRevisionsMode
+ } else {
+ destination.ActiveRevisionsMode = nil
+ }
+
+ // Dapr
+ if configuration.Dapr != nil {
+ var dapr storage.Dapr
+ err := configuration.Dapr.AssignProperties_To_Dapr(&dapr)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Dapr() to populate field Dapr")
+ }
+ destination.Dapr = &dapr
+ } else {
+ destination.Dapr = nil
+ }
+
+ // Ingress
+ if configuration.Ingress != nil {
+ var ingress storage.Ingress
+ err := configuration.Ingress.AssignProperties_To_Ingress(&ingress)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Ingress() to populate field Ingress")
+ }
+ destination.Ingress = &ingress
+ } else {
+ destination.Ingress = nil
+ }
+
+ // MaxInactiveRevisions
+ destination.MaxInactiveRevisions = genruntime.ClonePointerToInt(configuration.MaxInactiveRevisions)
+
+ // Registries
+ if configuration.Registries != nil {
+ registryList := make([]storage.RegistryCredentials, len(configuration.Registries))
+ for registryIndex, registryItem := range configuration.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry storage.RegistryCredentials
+ err := registryItem.AssignProperties_To_RegistryCredentials(®istry)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_RegistryCredentials() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ destination.Registries = registryList
+ } else {
+ destination.Registries = nil
+ }
+
+ // Secrets
+ if configuration.Secrets != nil {
+ secretList := make([]storage.Secret, len(configuration.Secrets))
+ for secretIndex, secretItem := range configuration.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret storage.Secret
+ err := secretItem.AssignProperties_To_Secret(&secret)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Secret() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ destination.Secrets = secretList
+ } else {
+ destination.Secrets = nil
+ }
+
+ // Service
+ if configuration.Service != nil {
+ var service storage.Service
+ err := configuration.Service.AssignProperties_To_Service(&service)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Service() to populate field Service")
+ }
+ destination.Service = &service
+ } else {
+ destination.Service = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Configuration_STATUS populates our Configuration from the provided source Configuration_STATUS
+func (configuration *Configuration) Initialize_From_Configuration_STATUS(source *Configuration_STATUS) error {
+
+ // ActiveRevisionsMode
+ if source.ActiveRevisionsMode != nil {
+ activeRevisionsMode := genruntime.ToEnum(string(*source.ActiveRevisionsMode), configuration_ActiveRevisionsMode_Values)
+ configuration.ActiveRevisionsMode = &activeRevisionsMode
+ } else {
+ configuration.ActiveRevisionsMode = nil
+ }
+
+ // Dapr
+ if source.Dapr != nil {
+ var dapr Dapr
+ err := dapr.Initialize_From_Dapr_STATUS(source.Dapr)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Dapr_STATUS() to populate field Dapr")
+ }
+ configuration.Dapr = &dapr
+ } else {
+ configuration.Dapr = nil
+ }
+
+ // Ingress
+ if source.Ingress != nil {
+ var ingress Ingress
+ err := ingress.Initialize_From_Ingress_STATUS(source.Ingress)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Ingress_STATUS() to populate field Ingress")
+ }
+ configuration.Ingress = &ingress
+ } else {
+ configuration.Ingress = nil
+ }
+
+ // MaxInactiveRevisions
+ configuration.MaxInactiveRevisions = genruntime.ClonePointerToInt(source.MaxInactiveRevisions)
+
+ // Registries
+ if source.Registries != nil {
+ registryList := make([]RegistryCredentials, len(source.Registries))
+ for registryIndex, registryItem := range source.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry RegistryCredentials
+ err := registry.Initialize_From_RegistryCredentials_STATUS(®istryItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_RegistryCredentials_STATUS() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ configuration.Registries = registryList
+ } else {
+ configuration.Registries = nil
+ }
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]Secret, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret Secret
+ err := secret.Initialize_From_Secret_STATUS(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Secret_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ configuration.Secrets = secretList
+ } else {
+ configuration.Secrets = nil
+ }
+
+ // Service
+ if source.Service != nil {
+ var service Service
+ err := service.Initialize_From_Service_STATUS(source.Service)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Service_STATUS() to populate field Service")
+ }
+ configuration.Service = &service
+ } else {
+ configuration.Service = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Non versioned Container App configuration properties that define the mutable settings of a Container app
+type Configuration_STATUS struct {
+ // ActiveRevisionsMode: ActiveRevisionsMode controls how active revisions are handled for the Container app:
+ // - Multiple: multiple revisions can be active.
- Single: Only one revision can be active at a time.
+ // Revision weights can not be used in this mode. If no value if provided, this is the default.
+ ActiveRevisionsMode *Configuration_ActiveRevisionsMode_STATUS `json:"activeRevisionsMode,omitempty"`
+
+ // Dapr: Dapr configuration for the Container App.
+ Dapr *Dapr_STATUS `json:"dapr,omitempty"`
+
+ // Ingress: Ingress configurations.
+ Ingress *Ingress_STATUS `json:"ingress,omitempty"`
+
+ // MaxInactiveRevisions: Optional. Max inactive revisions a Container App can have.
+ MaxInactiveRevisions *int `json:"maxInactiveRevisions,omitempty"`
+
+ // Registries: Collection of private container registry credentials for containers used by the Container app
+ Registries []RegistryCredentials_STATUS `json:"registries,omitempty"`
+
+ // Secrets: Collection of secrets used by a Container app
+ Secrets []Secret_STATUS `json:"secrets,omitempty"`
+
+ // Service: Container App to be a dev Container App Service
+ Service *Service_STATUS `json:"service,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Configuration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *Configuration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Configuration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *Configuration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Configuration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Configuration_STATUS, got %T", armInput)
+ }
+
+ // Set property "ActiveRevisionsMode":
+ if typedInput.ActiveRevisionsMode != nil {
+ var temp string
+ temp = string(*typedInput.ActiveRevisionsMode)
+ activeRevisionsMode := Configuration_ActiveRevisionsMode_STATUS(temp)
+ configuration.ActiveRevisionsMode = &activeRevisionsMode
+ }
+
+ // Set property "Dapr":
+ if typedInput.Dapr != nil {
+ var dapr1 Dapr_STATUS
+ err := dapr1.PopulateFromARM(owner, *typedInput.Dapr)
+ if err != nil {
+ return err
+ }
+ dapr := dapr1
+ configuration.Dapr = &dapr
+ }
+
+ // Set property "Ingress":
+ if typedInput.Ingress != nil {
+ var ingress1 Ingress_STATUS
+ err := ingress1.PopulateFromARM(owner, *typedInput.Ingress)
+ if err != nil {
+ return err
+ }
+ ingress := ingress1
+ configuration.Ingress = &ingress
+ }
+
+ // Set property "MaxInactiveRevisions":
+ if typedInput.MaxInactiveRevisions != nil {
+ maxInactiveRevisions := *typedInput.MaxInactiveRevisions
+ configuration.MaxInactiveRevisions = &maxInactiveRevisions
+ }
+
+ // Set property "Registries":
+ for _, item := range typedInput.Registries {
+ var item1 RegistryCredentials_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ configuration.Registries = append(configuration.Registries, item1)
+ }
+
+ // Set property "Secrets":
+ for _, item := range typedInput.Secrets {
+ var item1 Secret_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ configuration.Secrets = append(configuration.Secrets, item1)
+ }
+
+ // Set property "Service":
+ if typedInput.Service != nil {
+ var service1 Service_STATUS
+ err := service1.PopulateFromARM(owner, *typedInput.Service)
+ if err != nil {
+ return err
+ }
+ service := service1
+ configuration.Service = &service
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Configuration_STATUS populates our Configuration_STATUS from the provided source Configuration_STATUS
+func (configuration *Configuration_STATUS) AssignProperties_From_Configuration_STATUS(source *storage.Configuration_STATUS) error {
+
+ // ActiveRevisionsMode
+ if source.ActiveRevisionsMode != nil {
+ activeRevisionsMode := *source.ActiveRevisionsMode
+ activeRevisionsModeTemp := genruntime.ToEnum(activeRevisionsMode, configuration_ActiveRevisionsMode_STATUS_Values)
+ configuration.ActiveRevisionsMode = &activeRevisionsModeTemp
+ } else {
+ configuration.ActiveRevisionsMode = nil
+ }
+
+ // Dapr
+ if source.Dapr != nil {
+ var dapr Dapr_STATUS
+ err := dapr.AssignProperties_From_Dapr_STATUS(source.Dapr)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Dapr_STATUS() to populate field Dapr")
+ }
+ configuration.Dapr = &dapr
+ } else {
+ configuration.Dapr = nil
+ }
+
+ // Ingress
+ if source.Ingress != nil {
+ var ingress Ingress_STATUS
+ err := ingress.AssignProperties_From_Ingress_STATUS(source.Ingress)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Ingress_STATUS() to populate field Ingress")
+ }
+ configuration.Ingress = &ingress
+ } else {
+ configuration.Ingress = nil
+ }
+
+ // MaxInactiveRevisions
+ configuration.MaxInactiveRevisions = genruntime.ClonePointerToInt(source.MaxInactiveRevisions)
+
+ // Registries
+ if source.Registries != nil {
+ registryList := make([]RegistryCredentials_STATUS, len(source.Registries))
+ for registryIndex, registryItem := range source.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry RegistryCredentials_STATUS
+ err := registry.AssignProperties_From_RegistryCredentials_STATUS(®istryItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_RegistryCredentials_STATUS() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ configuration.Registries = registryList
+ } else {
+ configuration.Registries = nil
+ }
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]Secret_STATUS, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret Secret_STATUS
+ err := secret.AssignProperties_From_Secret_STATUS(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Secret_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ configuration.Secrets = secretList
+ } else {
+ configuration.Secrets = nil
+ }
+
+ // Service
+ if source.Service != nil {
+ var service Service_STATUS
+ err := service.AssignProperties_From_Service_STATUS(source.Service)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Service_STATUS() to populate field Service")
+ }
+ configuration.Service = &service
+ } else {
+ configuration.Service = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Configuration_STATUS populates the provided destination Configuration_STATUS from our Configuration_STATUS
+func (configuration *Configuration_STATUS) AssignProperties_To_Configuration_STATUS(destination *storage.Configuration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ActiveRevisionsMode
+ if configuration.ActiveRevisionsMode != nil {
+ activeRevisionsMode := string(*configuration.ActiveRevisionsMode)
+ destination.ActiveRevisionsMode = &activeRevisionsMode
+ } else {
+ destination.ActiveRevisionsMode = nil
+ }
+
+ // Dapr
+ if configuration.Dapr != nil {
+ var dapr storage.Dapr_STATUS
+ err := configuration.Dapr.AssignProperties_To_Dapr_STATUS(&dapr)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Dapr_STATUS() to populate field Dapr")
+ }
+ destination.Dapr = &dapr
+ } else {
+ destination.Dapr = nil
+ }
+
+ // Ingress
+ if configuration.Ingress != nil {
+ var ingress storage.Ingress_STATUS
+ err := configuration.Ingress.AssignProperties_To_Ingress_STATUS(&ingress)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Ingress_STATUS() to populate field Ingress")
+ }
+ destination.Ingress = &ingress
+ } else {
+ destination.Ingress = nil
+ }
+
+ // MaxInactiveRevisions
+ destination.MaxInactiveRevisions = genruntime.ClonePointerToInt(configuration.MaxInactiveRevisions)
+
+ // Registries
+ if configuration.Registries != nil {
+ registryList := make([]storage.RegistryCredentials_STATUS, len(configuration.Registries))
+ for registryIndex, registryItem := range configuration.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry storage.RegistryCredentials_STATUS
+ err := registryItem.AssignProperties_To_RegistryCredentials_STATUS(®istry)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_RegistryCredentials_STATUS() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ destination.Registries = registryList
+ } else {
+ destination.Registries = nil
+ }
+
+ // Secrets
+ if configuration.Secrets != nil {
+ secretList := make([]storage.Secret_STATUS, len(configuration.Secrets))
+ for secretIndex, secretItem := range configuration.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret storage.Secret_STATUS
+ err := secretItem.AssignProperties_To_Secret_STATUS(&secret)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Secret_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ destination.Secrets = secretList
+ } else {
+ destination.Secrets = nil
+ }
+
+ // Service
+ if configuration.Service != nil {
+ var service storage.Service_STATUS
+ err := configuration.Service.AssignProperties_To_Service_STATUS(&service)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Service_STATUS() to populate field Service")
+ }
+ destination.Service = &service
+ } else {
+ destination.Service = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ContainerApp_Properties_ProvisioningState_STATUS string
+
+const (
+ ContainerApp_Properties_ProvisioningState_STATUS_Canceled = ContainerApp_Properties_ProvisioningState_STATUS("Canceled")
+ ContainerApp_Properties_ProvisioningState_STATUS_Deleting = ContainerApp_Properties_ProvisioningState_STATUS("Deleting")
+ ContainerApp_Properties_ProvisioningState_STATUS_Failed = ContainerApp_Properties_ProvisioningState_STATUS("Failed")
+ ContainerApp_Properties_ProvisioningState_STATUS_InProgress = ContainerApp_Properties_ProvisioningState_STATUS("InProgress")
+ ContainerApp_Properties_ProvisioningState_STATUS_Succeeded = ContainerApp_Properties_ProvisioningState_STATUS("Succeeded")
+)
+
+// Mapping from string to ContainerApp_Properties_ProvisioningState_STATUS
+var containerApp_Properties_ProvisioningState_STATUS_Values = map[string]ContainerApp_Properties_ProvisioningState_STATUS{
+ "canceled": ContainerApp_Properties_ProvisioningState_STATUS_Canceled,
+ "deleting": ContainerApp_Properties_ProvisioningState_STATUS_Deleting,
+ "failed": ContainerApp_Properties_ProvisioningState_STATUS_Failed,
+ "inprogress": ContainerApp_Properties_ProvisioningState_STATUS_InProgress,
+ "succeeded": ContainerApp_Properties_ProvisioningState_STATUS_Succeeded,
+}
+
+// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure
+type ContainerAppOperatorSpec struct {
+ // ConfigMapExpressions: configures where to place operator written dynamic ConfigMaps (created with CEL expressions).
+ ConfigMapExpressions []*core.DestinationExpression `json:"configMapExpressions,omitempty"`
+
+ // ConfigMaps: configures where to place operator written ConfigMaps.
+ ConfigMaps *ContainerAppOperatorConfigMaps `json:"configMaps,omitempty"`
+
+ // SecretExpressions: configures where to place operator written dynamic secrets (created with CEL expressions).
+ SecretExpressions []*core.DestinationExpression `json:"secretExpressions,omitempty"`
+}
+
+// AssignProperties_From_ContainerAppOperatorSpec populates our ContainerAppOperatorSpec from the provided source ContainerAppOperatorSpec
+func (operator *ContainerAppOperatorSpec) AssignProperties_From_ContainerAppOperatorSpec(source *storage.ContainerAppOperatorSpec) error {
+
+ // ConfigMapExpressions
+ if source.ConfigMapExpressions != nil {
+ configMapExpressionList := make([]*core.DestinationExpression, len(source.ConfigMapExpressions))
+ for configMapExpressionIndex, configMapExpressionItem := range source.ConfigMapExpressions {
+ // Shadow the loop variable to avoid aliasing
+ configMapExpressionItem := configMapExpressionItem
+ if configMapExpressionItem != nil {
+ configMapExpression := *configMapExpressionItem.DeepCopy()
+ configMapExpressionList[configMapExpressionIndex] = &configMapExpression
+ } else {
+ configMapExpressionList[configMapExpressionIndex] = nil
+ }
+ }
+ operator.ConfigMapExpressions = configMapExpressionList
+ } else {
+ operator.ConfigMapExpressions = nil
+ }
+
+ // ConfigMaps
+ if source.ConfigMaps != nil {
+ var configMap ContainerAppOperatorConfigMaps
+ err := configMap.AssignProperties_From_ContainerAppOperatorConfigMaps(source.ConfigMaps)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppOperatorConfigMaps() to populate field ConfigMaps")
+ }
+ operator.ConfigMaps = &configMap
+ } else {
+ operator.ConfigMaps = nil
+ }
+
+ // SecretExpressions
+ if source.SecretExpressions != nil {
+ secretExpressionList := make([]*core.DestinationExpression, len(source.SecretExpressions))
+ for secretExpressionIndex, secretExpressionItem := range source.SecretExpressions {
+ // Shadow the loop variable to avoid aliasing
+ secretExpressionItem := secretExpressionItem
+ if secretExpressionItem != nil {
+ secretExpression := *secretExpressionItem.DeepCopy()
+ secretExpressionList[secretExpressionIndex] = &secretExpression
+ } else {
+ secretExpressionList[secretExpressionIndex] = nil
+ }
+ }
+ operator.SecretExpressions = secretExpressionList
+ } else {
+ operator.SecretExpressions = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppOperatorSpec populates the provided destination ContainerAppOperatorSpec from our ContainerAppOperatorSpec
+func (operator *ContainerAppOperatorSpec) AssignProperties_To_ContainerAppOperatorSpec(destination *storage.ContainerAppOperatorSpec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ConfigMapExpressions
+ if operator.ConfigMapExpressions != nil {
+ configMapExpressionList := make([]*core.DestinationExpression, len(operator.ConfigMapExpressions))
+ for configMapExpressionIndex, configMapExpressionItem := range operator.ConfigMapExpressions {
+ // Shadow the loop variable to avoid aliasing
+ configMapExpressionItem := configMapExpressionItem
+ if configMapExpressionItem != nil {
+ configMapExpression := *configMapExpressionItem.DeepCopy()
+ configMapExpressionList[configMapExpressionIndex] = &configMapExpression
+ } else {
+ configMapExpressionList[configMapExpressionIndex] = nil
+ }
+ }
+ destination.ConfigMapExpressions = configMapExpressionList
+ } else {
+ destination.ConfigMapExpressions = nil
+ }
+
+ // ConfigMaps
+ if operator.ConfigMaps != nil {
+ var configMap storage.ContainerAppOperatorConfigMaps
+ err := operator.ConfigMaps.AssignProperties_To_ContainerAppOperatorConfigMaps(&configMap)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppOperatorConfigMaps() to populate field ConfigMaps")
+ }
+ destination.ConfigMaps = &configMap
+ } else {
+ destination.ConfigMaps = nil
+ }
+
+ // SecretExpressions
+ if operator.SecretExpressions != nil {
+ secretExpressionList := make([]*core.DestinationExpression, len(operator.SecretExpressions))
+ for secretExpressionIndex, secretExpressionItem := range operator.SecretExpressions {
+ // Shadow the loop variable to avoid aliasing
+ secretExpressionItem := secretExpressionItem
+ if secretExpressionItem != nil {
+ secretExpression := *secretExpressionItem.DeepCopy()
+ secretExpressionList[secretExpressionIndex] = &secretExpression
+ } else {
+ secretExpressionList[secretExpressionIndex] = nil
+ }
+ }
+ destination.SecretExpressions = secretExpressionList
+ } else {
+ destination.SecretExpressions = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The complex type of the extended location.
+type ExtendedLocation struct {
+ // Name: The name of the extended location.
+ Name *string `json:"name,omitempty"`
+
+ // Type: The type of the extended location.
+ Type *ExtendedLocationType `json:"type,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ExtendedLocation{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (location *ExtendedLocation) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if location == nil {
+ return nil, nil
+ }
+ result := &arm.ExtendedLocation{}
+
+ // Set property "Name":
+ if location.Name != nil {
+ name := *location.Name
+ result.Name = &name
+ }
+
+ // Set property "Type":
+ if location.Type != nil {
+ var temp string
+ temp = string(*location.Type)
+ typeVar := arm.ExtendedLocationType(temp)
+ result.Type = &typeVar
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (location *ExtendedLocation) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ExtendedLocation{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (location *ExtendedLocation) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ExtendedLocation)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ExtendedLocation, got %T", armInput)
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ location.Name = &name
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ var temp string
+ temp = string(*typedInput.Type)
+ typeVar := ExtendedLocationType(temp)
+ location.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ExtendedLocation populates our ExtendedLocation from the provided source ExtendedLocation
+func (location *ExtendedLocation) AssignProperties_From_ExtendedLocation(source *storage.ExtendedLocation) error {
+
+ // Name
+ location.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Type
+ if source.Type != nil {
+ typeVar := *source.Type
+ typeTemp := genruntime.ToEnum(typeVar, extendedLocationType_Values)
+ location.Type = &typeTemp
+ } else {
+ location.Type = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ExtendedLocation populates the provided destination ExtendedLocation from our ExtendedLocation
+func (location *ExtendedLocation) AssignProperties_To_ExtendedLocation(destination *storage.ExtendedLocation) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(location.Name)
+
+ // Type
+ if location.Type != nil {
+ typeVar := string(*location.Type)
+ destination.Type = &typeVar
+ } else {
+ destination.Type = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ExtendedLocation_STATUS populates our ExtendedLocation from the provided source ExtendedLocation_STATUS
+func (location *ExtendedLocation) Initialize_From_ExtendedLocation_STATUS(source *ExtendedLocation_STATUS) error {
+
+ // Name
+ location.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Type
+ if source.Type != nil {
+ typeVar := genruntime.ToEnum(string(*source.Type), extendedLocationType_Values)
+ location.Type = &typeVar
+ } else {
+ location.Type = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The complex type of the extended location.
+type ExtendedLocation_STATUS struct {
+ // Name: The name of the extended location.
+ Name *string `json:"name,omitempty"`
+
+ // Type: The type of the extended location.
+ Type *ExtendedLocationType_STATUS `json:"type,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ExtendedLocation_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (location *ExtendedLocation_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ExtendedLocation_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (location *ExtendedLocation_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ExtendedLocation_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ExtendedLocation_STATUS, got %T", armInput)
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ location.Name = &name
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ var temp string
+ temp = string(*typedInput.Type)
+ typeVar := ExtendedLocationType_STATUS(temp)
+ location.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ExtendedLocation_STATUS populates our ExtendedLocation_STATUS from the provided source ExtendedLocation_STATUS
+func (location *ExtendedLocation_STATUS) AssignProperties_From_ExtendedLocation_STATUS(source *storage.ExtendedLocation_STATUS) error {
+
+ // Name
+ location.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Type
+ if source.Type != nil {
+ typeVar := *source.Type
+ typeTemp := genruntime.ToEnum(typeVar, extendedLocationType_STATUS_Values)
+ location.Type = &typeTemp
+ } else {
+ location.Type = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ExtendedLocation_STATUS populates the provided destination ExtendedLocation_STATUS from our ExtendedLocation_STATUS
+func (location *ExtendedLocation_STATUS) AssignProperties_To_ExtendedLocation_STATUS(destination *storage.ExtendedLocation_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(location.Name)
+
+ // Type
+ if location.Type != nil {
+ typeVar := string(*location.Type)
+ destination.Type = &typeVar
+ } else {
+ destination.Type = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Managed service identity (system assigned and/or user assigned identities)
+type ManagedServiceIdentity struct {
+ // +kubebuilder:validation:Required
+ // Type: Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
+ Type *ManagedServiceIdentityType `json:"type,omitempty"`
+ UserAssignedIdentities []UserAssignedIdentityDetails `json:"userAssignedIdentities,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ManagedServiceIdentity{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (identity *ManagedServiceIdentity) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if identity == nil {
+ return nil, nil
+ }
+ result := &arm.ManagedServiceIdentity{}
+
+ // Set property "Type":
+ if identity.Type != nil {
+ var temp string
+ temp = string(*identity.Type)
+ typeVar := arm.ManagedServiceIdentityType(temp)
+ result.Type = &typeVar
+ }
+
+ // Set property "UserAssignedIdentities":
+ result.UserAssignedIdentities = make(map[string]arm.UserAssignedIdentityDetails, len(identity.UserAssignedIdentities))
+ for _, ident := range identity.UserAssignedIdentities {
+ identARMID, err := resolved.ResolvedReferences.Lookup(ident.Reference)
+ if err != nil {
+ return nil, err
+ }
+ key := identARMID
+ result.UserAssignedIdentities[key] = arm.UserAssignedIdentityDetails{}
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (identity *ManagedServiceIdentity) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedServiceIdentity{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (identity *ManagedServiceIdentity) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedServiceIdentity)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedServiceIdentity, got %T", armInput)
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ var temp string
+ temp = string(*typedInput.Type)
+ typeVar := ManagedServiceIdentityType(temp)
+ identity.Type = &typeVar
+ }
+
+ // no assignment for property "UserAssignedIdentities"
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedServiceIdentity populates our ManagedServiceIdentity from the provided source ManagedServiceIdentity
+func (identity *ManagedServiceIdentity) AssignProperties_From_ManagedServiceIdentity(source *storage.ManagedServiceIdentity) error {
+
+ // Type
+ if source.Type != nil {
+ typeVar := *source.Type
+ typeTemp := genruntime.ToEnum(typeVar, managedServiceIdentityType_Values)
+ identity.Type = &typeTemp
+ } else {
+ identity.Type = nil
+ }
+
+ // UserAssignedIdentities
+ if source.UserAssignedIdentities != nil {
+ userAssignedIdentityList := make([]UserAssignedIdentityDetails, len(source.UserAssignedIdentities))
+ for userAssignedIdentityIndex, userAssignedIdentityItem := range source.UserAssignedIdentities {
+ // Shadow the loop variable to avoid aliasing
+ userAssignedIdentityItem := userAssignedIdentityItem
+ var userAssignedIdentity UserAssignedIdentityDetails
+ err := userAssignedIdentity.AssignProperties_From_UserAssignedIdentityDetails(&userAssignedIdentityItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_UserAssignedIdentityDetails() to populate field UserAssignedIdentities")
+ }
+ userAssignedIdentityList[userAssignedIdentityIndex] = userAssignedIdentity
+ }
+ identity.UserAssignedIdentities = userAssignedIdentityList
+ } else {
+ identity.UserAssignedIdentities = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedServiceIdentity populates the provided destination ManagedServiceIdentity from our ManagedServiceIdentity
+func (identity *ManagedServiceIdentity) AssignProperties_To_ManagedServiceIdentity(destination *storage.ManagedServiceIdentity) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Type
+ if identity.Type != nil {
+ typeVar := string(*identity.Type)
+ destination.Type = &typeVar
+ } else {
+ destination.Type = nil
+ }
+
+ // UserAssignedIdentities
+ if identity.UserAssignedIdentities != nil {
+ userAssignedIdentityList := make([]storage.UserAssignedIdentityDetails, len(identity.UserAssignedIdentities))
+ for userAssignedIdentityIndex, userAssignedIdentityItem := range identity.UserAssignedIdentities {
+ // Shadow the loop variable to avoid aliasing
+ userAssignedIdentityItem := userAssignedIdentityItem
+ var userAssignedIdentity storage.UserAssignedIdentityDetails
+ err := userAssignedIdentityItem.AssignProperties_To_UserAssignedIdentityDetails(&userAssignedIdentity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_UserAssignedIdentityDetails() to populate field UserAssignedIdentities")
+ }
+ userAssignedIdentityList[userAssignedIdentityIndex] = userAssignedIdentity
+ }
+ destination.UserAssignedIdentities = userAssignedIdentityList
+ } else {
+ destination.UserAssignedIdentities = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ManagedServiceIdentity_STATUS populates our ManagedServiceIdentity from the provided source ManagedServiceIdentity_STATUS
+func (identity *ManagedServiceIdentity) Initialize_From_ManagedServiceIdentity_STATUS(source *ManagedServiceIdentity_STATUS) error {
+
+ // Type
+ if source.Type != nil {
+ typeVar := genruntime.ToEnum(string(*source.Type), managedServiceIdentityType_Values)
+ identity.Type = &typeVar
+ } else {
+ identity.Type = nil
+ }
+
+ // UserAssignedIdentities
+ if source.UserAssignedIdentities != nil {
+ userAssignedIdentityList := make([]UserAssignedIdentityDetails, 0, len(source.UserAssignedIdentities))
+ for userAssignedIdentitiesKey := range source.UserAssignedIdentities {
+ userAssignedIdentitiesRef := genruntime.CreateResourceReferenceFromARMID(userAssignedIdentitiesKey)
+ userAssignedIdentityList = append(userAssignedIdentityList, UserAssignedIdentityDetails{Reference: userAssignedIdentitiesRef})
+ }
+ identity.UserAssignedIdentities = userAssignedIdentityList
+ } else {
+ identity.UserAssignedIdentities = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Managed service identity (system assigned and/or user assigned identities)
+type ManagedServiceIdentity_STATUS struct {
+ // PrincipalId: The service principal ID of the system assigned identity. This property will only be provided for a system
+ // assigned identity.
+ PrincipalId *string `json:"principalId,omitempty"`
+
+ // TenantId: The tenant ID of the system assigned identity. This property will only be provided for a system assigned
+ // identity.
+ TenantId *string `json:"tenantId,omitempty"`
+
+ // Type: Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
+ Type *ManagedServiceIdentityType_STATUS `json:"type,omitempty"`
+ UserAssignedIdentities map[string]UserAssignedIdentity_STATUS `json:"userAssignedIdentities,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ManagedServiceIdentity_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (identity *ManagedServiceIdentity_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedServiceIdentity_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (identity *ManagedServiceIdentity_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedServiceIdentity_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedServiceIdentity_STATUS, got %T", armInput)
+ }
+
+ // Set property "PrincipalId":
+ if typedInput.PrincipalId != nil {
+ principalId := *typedInput.PrincipalId
+ identity.PrincipalId = &principalId
+ }
+
+ // Set property "TenantId":
+ if typedInput.TenantId != nil {
+ tenantId := *typedInput.TenantId
+ identity.TenantId = &tenantId
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ var temp string
+ temp = string(*typedInput.Type)
+ typeVar := ManagedServiceIdentityType_STATUS(temp)
+ identity.Type = &typeVar
+ }
+
+ // Set property "UserAssignedIdentities":
+ if typedInput.UserAssignedIdentities != nil {
+ identity.UserAssignedIdentities = make(map[string]UserAssignedIdentity_STATUS, len(typedInput.UserAssignedIdentities))
+ for key, value := range typedInput.UserAssignedIdentities {
+ var value1 UserAssignedIdentity_STATUS
+ err := value1.PopulateFromARM(owner, value)
+ if err != nil {
+ return err
+ }
+ identity.UserAssignedIdentities[key] = value1
+ }
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedServiceIdentity_STATUS populates our ManagedServiceIdentity_STATUS from the provided source ManagedServiceIdentity_STATUS
+func (identity *ManagedServiceIdentity_STATUS) AssignProperties_From_ManagedServiceIdentity_STATUS(source *storage.ManagedServiceIdentity_STATUS) error {
+
+ // PrincipalId
+ identity.PrincipalId = genruntime.ClonePointerToString(source.PrincipalId)
+
+ // TenantId
+ identity.TenantId = genruntime.ClonePointerToString(source.TenantId)
+
+ // Type
+ if source.Type != nil {
+ typeVar := *source.Type
+ typeTemp := genruntime.ToEnum(typeVar, managedServiceIdentityType_STATUS_Values)
+ identity.Type = &typeTemp
+ } else {
+ identity.Type = nil
+ }
+
+ // UserAssignedIdentities
+ if source.UserAssignedIdentities != nil {
+ userAssignedIdentityMap := make(map[string]UserAssignedIdentity_STATUS, len(source.UserAssignedIdentities))
+ for userAssignedIdentityKey, userAssignedIdentityValue := range source.UserAssignedIdentities {
+ // Shadow the loop variable to avoid aliasing
+ userAssignedIdentityValue := userAssignedIdentityValue
+ var userAssignedIdentity UserAssignedIdentity_STATUS
+ err := userAssignedIdentity.AssignProperties_From_UserAssignedIdentity_STATUS(&userAssignedIdentityValue)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_UserAssignedIdentity_STATUS() to populate field UserAssignedIdentities")
+ }
+ userAssignedIdentityMap[userAssignedIdentityKey] = userAssignedIdentity
+ }
+ identity.UserAssignedIdentities = userAssignedIdentityMap
+ } else {
+ identity.UserAssignedIdentities = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedServiceIdentity_STATUS populates the provided destination ManagedServiceIdentity_STATUS from our ManagedServiceIdentity_STATUS
+func (identity *ManagedServiceIdentity_STATUS) AssignProperties_To_ManagedServiceIdentity_STATUS(destination *storage.ManagedServiceIdentity_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // PrincipalId
+ destination.PrincipalId = genruntime.ClonePointerToString(identity.PrincipalId)
+
+ // TenantId
+ destination.TenantId = genruntime.ClonePointerToString(identity.TenantId)
+
+ // Type
+ if identity.Type != nil {
+ typeVar := string(*identity.Type)
+ destination.Type = &typeVar
+ } else {
+ destination.Type = nil
+ }
+
+ // UserAssignedIdentities
+ if identity.UserAssignedIdentities != nil {
+ userAssignedIdentityMap := make(map[string]storage.UserAssignedIdentity_STATUS, len(identity.UserAssignedIdentities))
+ for userAssignedIdentityKey, userAssignedIdentityValue := range identity.UserAssignedIdentities {
+ // Shadow the loop variable to avoid aliasing
+ userAssignedIdentityValue := userAssignedIdentityValue
+ var userAssignedIdentity storage.UserAssignedIdentity_STATUS
+ err := userAssignedIdentityValue.AssignProperties_To_UserAssignedIdentity_STATUS(&userAssignedIdentity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_UserAssignedIdentity_STATUS() to populate field UserAssignedIdentities")
+ }
+ userAssignedIdentityMap[userAssignedIdentityKey] = userAssignedIdentity
+ }
+ destination.UserAssignedIdentities = userAssignedIdentityMap
+ } else {
+ destination.UserAssignedIdentities = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App versioned application definition.
+// Defines the desired state of an immutable revision.
+// Any changes to this
+// section Will result in a new revision being created
+type Template struct {
+ // Containers: List of container definitions for the Container App.
+ Containers []Container `json:"containers,omitempty"`
+
+ // InitContainers: List of specialized containers that run before app containers.
+ InitContainers []BaseContainer `json:"initContainers,omitempty"`
+
+ // RevisionSuffix: User friendly suffix that is appended to the revision name
+ RevisionSuffix *string `json:"revisionSuffix,omitempty"`
+
+ // Scale: Scaling properties for the Container App.
+ Scale *Scale `json:"scale,omitempty"`
+
+ // ServiceBinds: List of container app services bound to the app
+ ServiceBinds []ServiceBind `json:"serviceBinds,omitempty"`
+
+ // TerminationGracePeriodSeconds: Optional duration in seconds the Container App Instance needs to terminate gracefully.
+ // Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to
+ // shut down). If this value is nil, the default grace period will be used instead. Set this value longer than the expected
+ // cleanup time for your process. Defaults to 30 seconds.
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+
+ // Volumes: List of volume definitions for the Container App.
+ Volumes []Volume `json:"volumes,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Template{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (template *Template) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if template == nil {
+ return nil, nil
+ }
+ result := &arm.Template{}
+
+ // Set property "Containers":
+ for _, item := range template.Containers {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Containers = append(result.Containers, *item_ARM.(*arm.Container))
+ }
+
+ // Set property "InitContainers":
+ for _, item := range template.InitContainers {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.InitContainers = append(result.InitContainers, *item_ARM.(*arm.BaseContainer))
+ }
+
+ // Set property "RevisionSuffix":
+ if template.RevisionSuffix != nil {
+ revisionSuffix := *template.RevisionSuffix
+ result.RevisionSuffix = &revisionSuffix
+ }
+
+ // Set property "Scale":
+ if template.Scale != nil {
+ scale_ARM, err := (*template.Scale).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ scale := *scale_ARM.(*arm.Scale)
+ result.Scale = &scale
+ }
+
+ // Set property "ServiceBinds":
+ for _, item := range template.ServiceBinds {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.ServiceBinds = append(result.ServiceBinds, *item_ARM.(*arm.ServiceBind))
+ }
+
+ // Set property "TerminationGracePeriodSeconds":
+ if template.TerminationGracePeriodSeconds != nil {
+ terminationGracePeriodSeconds := *template.TerminationGracePeriodSeconds
+ result.TerminationGracePeriodSeconds = &terminationGracePeriodSeconds
+ }
+
+ // Set property "Volumes":
+ for _, item := range template.Volumes {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Volumes = append(result.Volumes, *item_ARM.(*arm.Volume))
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (template *Template) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Template{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (template *Template) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Template)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Template, got %T", armInput)
+ }
+
+ // Set property "Containers":
+ for _, item := range typedInput.Containers {
+ var item1 Container
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.Containers = append(template.Containers, item1)
+ }
+
+ // Set property "InitContainers":
+ for _, item := range typedInput.InitContainers {
+ var item1 BaseContainer
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.InitContainers = append(template.InitContainers, item1)
+ }
+
+ // Set property "RevisionSuffix":
+ if typedInput.RevisionSuffix != nil {
+ revisionSuffix := *typedInput.RevisionSuffix
+ template.RevisionSuffix = &revisionSuffix
+ }
+
+ // Set property "Scale":
+ if typedInput.Scale != nil {
+ var scale1 Scale
+ err := scale1.PopulateFromARM(owner, *typedInput.Scale)
+ if err != nil {
+ return err
+ }
+ scale := scale1
+ template.Scale = &scale
+ }
+
+ // Set property "ServiceBinds":
+ for _, item := range typedInput.ServiceBinds {
+ var item1 ServiceBind
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.ServiceBinds = append(template.ServiceBinds, item1)
+ }
+
+ // Set property "TerminationGracePeriodSeconds":
+ if typedInput.TerminationGracePeriodSeconds != nil {
+ terminationGracePeriodSeconds := *typedInput.TerminationGracePeriodSeconds
+ template.TerminationGracePeriodSeconds = &terminationGracePeriodSeconds
+ }
+
+ // Set property "Volumes":
+ for _, item := range typedInput.Volumes {
+ var item1 Volume
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.Volumes = append(template.Volumes, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Template populates our Template from the provided source Template
+func (template *Template) AssignProperties_From_Template(source *storage.Template) error {
+
+ // Containers
+ if source.Containers != nil {
+ containerList := make([]Container, len(source.Containers))
+ for containerIndex, containerItem := range source.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container Container
+ err := container.AssignProperties_From_Container(&containerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Container() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ template.Containers = containerList
+ } else {
+ template.Containers = nil
+ }
+
+ // InitContainers
+ if source.InitContainers != nil {
+ initContainerList := make([]BaseContainer, len(source.InitContainers))
+ for initContainerIndex, initContainerItem := range source.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer BaseContainer
+ err := initContainer.AssignProperties_From_BaseContainer(&initContainerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_BaseContainer() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ template.InitContainers = initContainerList
+ } else {
+ template.InitContainers = nil
+ }
+
+ // RevisionSuffix
+ template.RevisionSuffix = genruntime.ClonePointerToString(source.RevisionSuffix)
+
+ // Scale
+ if source.Scale != nil {
+ var scale Scale
+ err := scale.AssignProperties_From_Scale(source.Scale)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Scale() to populate field Scale")
+ }
+ template.Scale = &scale
+ } else {
+ template.Scale = nil
+ }
+
+ // ServiceBinds
+ if source.ServiceBinds != nil {
+ serviceBindList := make([]ServiceBind, len(source.ServiceBinds))
+ for serviceBindIndex, serviceBindItem := range source.ServiceBinds {
+ // Shadow the loop variable to avoid aliasing
+ serviceBindItem := serviceBindItem
+ var serviceBind ServiceBind
+ err := serviceBind.AssignProperties_From_ServiceBind(&serviceBindItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ServiceBind() to populate field ServiceBinds")
+ }
+ serviceBindList[serviceBindIndex] = serviceBind
+ }
+ template.ServiceBinds = serviceBindList
+ } else {
+ template.ServiceBinds = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ template.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(source.TerminationGracePeriodSeconds)
+
+ // Volumes
+ if source.Volumes != nil {
+ volumeList := make([]Volume, len(source.Volumes))
+ for volumeIndex, volumeItem := range source.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume Volume
+ err := volume.AssignProperties_From_Volume(&volumeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Volume() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ template.Volumes = volumeList
+ } else {
+ template.Volumes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Template populates the provided destination Template from our Template
+func (template *Template) AssignProperties_To_Template(destination *storage.Template) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Containers
+ if template.Containers != nil {
+ containerList := make([]storage.Container, len(template.Containers))
+ for containerIndex, containerItem := range template.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container storage.Container
+ err := containerItem.AssignProperties_To_Container(&container)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Container() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ destination.Containers = containerList
+ } else {
+ destination.Containers = nil
+ }
+
+ // InitContainers
+ if template.InitContainers != nil {
+ initContainerList := make([]storage.BaseContainer, len(template.InitContainers))
+ for initContainerIndex, initContainerItem := range template.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer storage.BaseContainer
+ err := initContainerItem.AssignProperties_To_BaseContainer(&initContainer)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_BaseContainer() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ destination.InitContainers = initContainerList
+ } else {
+ destination.InitContainers = nil
+ }
+
+ // RevisionSuffix
+ destination.RevisionSuffix = genruntime.ClonePointerToString(template.RevisionSuffix)
+
+ // Scale
+ if template.Scale != nil {
+ var scale storage.Scale
+ err := template.Scale.AssignProperties_To_Scale(&scale)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Scale() to populate field Scale")
+ }
+ destination.Scale = &scale
+ } else {
+ destination.Scale = nil
+ }
+
+ // ServiceBinds
+ if template.ServiceBinds != nil {
+ serviceBindList := make([]storage.ServiceBind, len(template.ServiceBinds))
+ for serviceBindIndex, serviceBindItem := range template.ServiceBinds {
+ // Shadow the loop variable to avoid aliasing
+ serviceBindItem := serviceBindItem
+ var serviceBind storage.ServiceBind
+ err := serviceBindItem.AssignProperties_To_ServiceBind(&serviceBind)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ServiceBind() to populate field ServiceBinds")
+ }
+ serviceBindList[serviceBindIndex] = serviceBind
+ }
+ destination.ServiceBinds = serviceBindList
+ } else {
+ destination.ServiceBinds = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ destination.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(template.TerminationGracePeriodSeconds)
+
+ // Volumes
+ if template.Volumes != nil {
+ volumeList := make([]storage.Volume, len(template.Volumes))
+ for volumeIndex, volumeItem := range template.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume storage.Volume
+ err := volumeItem.AssignProperties_To_Volume(&volume)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Volume() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ destination.Volumes = volumeList
+ } else {
+ destination.Volumes = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Template_STATUS populates our Template from the provided source Template_STATUS
+func (template *Template) Initialize_From_Template_STATUS(source *Template_STATUS) error {
+
+ // Containers
+ if source.Containers != nil {
+ containerList := make([]Container, len(source.Containers))
+ for containerIndex, containerItem := range source.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container Container
+ err := container.Initialize_From_Container_STATUS(&containerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Container_STATUS() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ template.Containers = containerList
+ } else {
+ template.Containers = nil
+ }
+
+ // InitContainers
+ if source.InitContainers != nil {
+ initContainerList := make([]BaseContainer, len(source.InitContainers))
+ for initContainerIndex, initContainerItem := range source.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer BaseContainer
+ err := initContainer.Initialize_From_BaseContainer_STATUS(&initContainerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_BaseContainer_STATUS() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ template.InitContainers = initContainerList
+ } else {
+ template.InitContainers = nil
+ }
+
+ // RevisionSuffix
+ template.RevisionSuffix = genruntime.ClonePointerToString(source.RevisionSuffix)
+
+ // Scale
+ if source.Scale != nil {
+ var scale Scale
+ err := scale.Initialize_From_Scale_STATUS(source.Scale)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Scale_STATUS() to populate field Scale")
+ }
+ template.Scale = &scale
+ } else {
+ template.Scale = nil
+ }
+
+ // ServiceBinds
+ if source.ServiceBinds != nil {
+ serviceBindList := make([]ServiceBind, len(source.ServiceBinds))
+ for serviceBindIndex, serviceBindItem := range source.ServiceBinds {
+ // Shadow the loop variable to avoid aliasing
+ serviceBindItem := serviceBindItem
+ var serviceBind ServiceBind
+ err := serviceBind.Initialize_From_ServiceBind_STATUS(&serviceBindItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ServiceBind_STATUS() to populate field ServiceBinds")
+ }
+ serviceBindList[serviceBindIndex] = serviceBind
+ }
+ template.ServiceBinds = serviceBindList
+ } else {
+ template.ServiceBinds = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ template.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(source.TerminationGracePeriodSeconds)
+
+ // Volumes
+ if source.Volumes != nil {
+ volumeList := make([]Volume, len(source.Volumes))
+ for volumeIndex, volumeItem := range source.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume Volume
+ err := volume.Initialize_From_Volume_STATUS(&volumeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Volume_STATUS() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ template.Volumes = volumeList
+ } else {
+ template.Volumes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App versioned application definition.
+// Defines the desired state of an immutable revision.
+// Any changes to this
+// section Will result in a new revision being created
+type Template_STATUS struct {
+ // Containers: List of container definitions for the Container App.
+ Containers []Container_STATUS `json:"containers,omitempty"`
+
+ // InitContainers: List of specialized containers that run before app containers.
+ InitContainers []BaseContainer_STATUS `json:"initContainers,omitempty"`
+
+ // RevisionSuffix: User friendly suffix that is appended to the revision name
+ RevisionSuffix *string `json:"revisionSuffix,omitempty"`
+
+ // Scale: Scaling properties for the Container App.
+ Scale *Scale_STATUS `json:"scale,omitempty"`
+
+ // ServiceBinds: List of container app services bound to the app
+ ServiceBinds []ServiceBind_STATUS `json:"serviceBinds,omitempty"`
+
+ // TerminationGracePeriodSeconds: Optional duration in seconds the Container App Instance needs to terminate gracefully.
+ // Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to
+ // shut down). If this value is nil, the default grace period will be used instead. Set this value longer than the expected
+ // cleanup time for your process. Defaults to 30 seconds.
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+
+ // Volumes: List of volume definitions for the Container App.
+ Volumes []Volume_STATUS `json:"volumes,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Template_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (template *Template_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Template_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (template *Template_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Template_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Template_STATUS, got %T", armInput)
+ }
+
+ // Set property "Containers":
+ for _, item := range typedInput.Containers {
+ var item1 Container_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.Containers = append(template.Containers, item1)
+ }
+
+ // Set property "InitContainers":
+ for _, item := range typedInput.InitContainers {
+ var item1 BaseContainer_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.InitContainers = append(template.InitContainers, item1)
+ }
+
+ // Set property "RevisionSuffix":
+ if typedInput.RevisionSuffix != nil {
+ revisionSuffix := *typedInput.RevisionSuffix
+ template.RevisionSuffix = &revisionSuffix
+ }
+
+ // Set property "Scale":
+ if typedInput.Scale != nil {
+ var scale1 Scale_STATUS
+ err := scale1.PopulateFromARM(owner, *typedInput.Scale)
+ if err != nil {
+ return err
+ }
+ scale := scale1
+ template.Scale = &scale
+ }
+
+ // Set property "ServiceBinds":
+ for _, item := range typedInput.ServiceBinds {
+ var item1 ServiceBind_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.ServiceBinds = append(template.ServiceBinds, item1)
+ }
+
+ // Set property "TerminationGracePeriodSeconds":
+ if typedInput.TerminationGracePeriodSeconds != nil {
+ terminationGracePeriodSeconds := *typedInput.TerminationGracePeriodSeconds
+ template.TerminationGracePeriodSeconds = &terminationGracePeriodSeconds
+ }
+
+ // Set property "Volumes":
+ for _, item := range typedInput.Volumes {
+ var item1 Volume_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.Volumes = append(template.Volumes, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Template_STATUS populates our Template_STATUS from the provided source Template_STATUS
+func (template *Template_STATUS) AssignProperties_From_Template_STATUS(source *storage.Template_STATUS) error {
+
+ // Containers
+ if source.Containers != nil {
+ containerList := make([]Container_STATUS, len(source.Containers))
+ for containerIndex, containerItem := range source.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container Container_STATUS
+ err := container.AssignProperties_From_Container_STATUS(&containerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Container_STATUS() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ template.Containers = containerList
+ } else {
+ template.Containers = nil
+ }
+
+ // InitContainers
+ if source.InitContainers != nil {
+ initContainerList := make([]BaseContainer_STATUS, len(source.InitContainers))
+ for initContainerIndex, initContainerItem := range source.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer BaseContainer_STATUS
+ err := initContainer.AssignProperties_From_BaseContainer_STATUS(&initContainerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_BaseContainer_STATUS() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ template.InitContainers = initContainerList
+ } else {
+ template.InitContainers = nil
+ }
+
+ // RevisionSuffix
+ template.RevisionSuffix = genruntime.ClonePointerToString(source.RevisionSuffix)
+
+ // Scale
+ if source.Scale != nil {
+ var scale Scale_STATUS
+ err := scale.AssignProperties_From_Scale_STATUS(source.Scale)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Scale_STATUS() to populate field Scale")
+ }
+ template.Scale = &scale
+ } else {
+ template.Scale = nil
+ }
+
+ // ServiceBinds
+ if source.ServiceBinds != nil {
+ serviceBindList := make([]ServiceBind_STATUS, len(source.ServiceBinds))
+ for serviceBindIndex, serviceBindItem := range source.ServiceBinds {
+ // Shadow the loop variable to avoid aliasing
+ serviceBindItem := serviceBindItem
+ var serviceBind ServiceBind_STATUS
+ err := serviceBind.AssignProperties_From_ServiceBind_STATUS(&serviceBindItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ServiceBind_STATUS() to populate field ServiceBinds")
+ }
+ serviceBindList[serviceBindIndex] = serviceBind
+ }
+ template.ServiceBinds = serviceBindList
+ } else {
+ template.ServiceBinds = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ template.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(source.TerminationGracePeriodSeconds)
+
+ // Volumes
+ if source.Volumes != nil {
+ volumeList := make([]Volume_STATUS, len(source.Volumes))
+ for volumeIndex, volumeItem := range source.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume Volume_STATUS
+ err := volume.AssignProperties_From_Volume_STATUS(&volumeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Volume_STATUS() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ template.Volumes = volumeList
+ } else {
+ template.Volumes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Template_STATUS populates the provided destination Template_STATUS from our Template_STATUS
+func (template *Template_STATUS) AssignProperties_To_Template_STATUS(destination *storage.Template_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Containers
+ if template.Containers != nil {
+ containerList := make([]storage.Container_STATUS, len(template.Containers))
+ for containerIndex, containerItem := range template.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container storage.Container_STATUS
+ err := containerItem.AssignProperties_To_Container_STATUS(&container)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Container_STATUS() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ destination.Containers = containerList
+ } else {
+ destination.Containers = nil
+ }
+
+ // InitContainers
+ if template.InitContainers != nil {
+ initContainerList := make([]storage.BaseContainer_STATUS, len(template.InitContainers))
+ for initContainerIndex, initContainerItem := range template.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer storage.BaseContainer_STATUS
+ err := initContainerItem.AssignProperties_To_BaseContainer_STATUS(&initContainer)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_BaseContainer_STATUS() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ destination.InitContainers = initContainerList
+ } else {
+ destination.InitContainers = nil
+ }
+
+ // RevisionSuffix
+ destination.RevisionSuffix = genruntime.ClonePointerToString(template.RevisionSuffix)
+
+ // Scale
+ if template.Scale != nil {
+ var scale storage.Scale_STATUS
+ err := template.Scale.AssignProperties_To_Scale_STATUS(&scale)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Scale_STATUS() to populate field Scale")
+ }
+ destination.Scale = &scale
+ } else {
+ destination.Scale = nil
+ }
+
+ // ServiceBinds
+ if template.ServiceBinds != nil {
+ serviceBindList := make([]storage.ServiceBind_STATUS, len(template.ServiceBinds))
+ for serviceBindIndex, serviceBindItem := range template.ServiceBinds {
+ // Shadow the loop variable to avoid aliasing
+ serviceBindItem := serviceBindItem
+ var serviceBind storage.ServiceBind_STATUS
+ err := serviceBindItem.AssignProperties_To_ServiceBind_STATUS(&serviceBind)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ServiceBind_STATUS() to populate field ServiceBinds")
+ }
+ serviceBindList[serviceBindIndex] = serviceBind
+ }
+ destination.ServiceBinds = serviceBindList
+ } else {
+ destination.ServiceBinds = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ destination.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(template.TerminationGracePeriodSeconds)
+
+ // Volumes
+ if template.Volumes != nil {
+ volumeList := make([]storage.Volume_STATUS, len(template.Volumes))
+ for volumeIndex, volumeItem := range template.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume storage.Volume_STATUS
+ err := volumeItem.AssignProperties_To_Volume_STATUS(&volume)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Volume_STATUS() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ destination.Volumes = volumeList
+ } else {
+ destination.Volumes = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App base container definition.
+type BaseContainer struct {
+ // Args: Container start command arguments.
+ Args []string `json:"args,omitempty"`
+
+ // Command: Container start command.
+ Command []string `json:"command,omitempty"`
+
+ // Env: Container environment variables.
+ Env []EnvironmentVar `json:"env,omitempty"`
+
+ // Image: Container image tag.
+ Image *string `json:"image,omitempty"`
+
+ // Name: Custom container name.
+ Name *string `json:"name,omitempty"`
+
+ // Resources: Container resource requirements.
+ Resources *ContainerResources `json:"resources,omitempty"`
+
+ // VolumeMounts: Container volume mounts.
+ VolumeMounts []VolumeMount `json:"volumeMounts,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &BaseContainer{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (container *BaseContainer) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if container == nil {
+ return nil, nil
+ }
+ result := &arm.BaseContainer{}
+
+ // Set property "Args":
+ for _, item := range container.Args {
+ result.Args = append(result.Args, item)
+ }
+
+ // Set property "Command":
+ for _, item := range container.Command {
+ result.Command = append(result.Command, item)
+ }
+
+ // Set property "Env":
+ for _, item := range container.Env {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Env = append(result.Env, *item_ARM.(*arm.EnvironmentVar))
+ }
+
+ // Set property "Image":
+ if container.Image != nil {
+ image := *container.Image
+ result.Image = &image
+ }
+
+ // Set property "Name":
+ if container.Name != nil {
+ name := *container.Name
+ result.Name = &name
+ }
+
+ // Set property "Resources":
+ if container.Resources != nil {
+ resources_ARM, err := (*container.Resources).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ resources := *resources_ARM.(*arm.ContainerResources)
+ result.Resources = &resources
+ }
+
+ // Set property "VolumeMounts":
+ for _, item := range container.VolumeMounts {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.VolumeMounts = append(result.VolumeMounts, *item_ARM.(*arm.VolumeMount))
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (container *BaseContainer) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.BaseContainer{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (container *BaseContainer) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.BaseContainer)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.BaseContainer, got %T", armInput)
+ }
+
+ // Set property "Args":
+ for _, item := range typedInput.Args {
+ container.Args = append(container.Args, item)
+ }
+
+ // Set property "Command":
+ for _, item := range typedInput.Command {
+ container.Command = append(container.Command, item)
+ }
+
+ // Set property "Env":
+ for _, item := range typedInput.Env {
+ var item1 EnvironmentVar
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.Env = append(container.Env, item1)
+ }
+
+ // Set property "Image":
+ if typedInput.Image != nil {
+ image := *typedInput.Image
+ container.Image = &image
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ container.Name = &name
+ }
+
+ // Set property "Resources":
+ if typedInput.Resources != nil {
+ var resources1 ContainerResources
+ err := resources1.PopulateFromARM(owner, *typedInput.Resources)
+ if err != nil {
+ return err
+ }
+ resources := resources1
+ container.Resources = &resources
+ }
+
+ // Set property "VolumeMounts":
+ for _, item := range typedInput.VolumeMounts {
+ var item1 VolumeMount
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.VolumeMounts = append(container.VolumeMounts, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_BaseContainer populates our BaseContainer from the provided source BaseContainer
+func (container *BaseContainer) AssignProperties_From_BaseContainer(source *storage.BaseContainer) error {
+
+ // Args
+ container.Args = genruntime.CloneSliceOfString(source.Args)
+
+ // Command
+ container.Command = genruntime.CloneSliceOfString(source.Command)
+
+ // Env
+ if source.Env != nil {
+ envList := make([]EnvironmentVar, len(source.Env))
+ for envIndex, envItem := range source.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env EnvironmentVar
+ err := env.AssignProperties_From_EnvironmentVar(&envItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_EnvironmentVar() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ container.Env = envList
+ } else {
+ container.Env = nil
+ }
+
+ // Image
+ container.Image = genruntime.ClonePointerToString(source.Image)
+
+ // Name
+ container.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Resources
+ if source.Resources != nil {
+ var resource ContainerResources
+ err := resource.AssignProperties_From_ContainerResources(source.Resources)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerResources() to populate field Resources")
+ }
+ container.Resources = &resource
+ } else {
+ container.Resources = nil
+ }
+
+ // VolumeMounts
+ if source.VolumeMounts != nil {
+ volumeMountList := make([]VolumeMount, len(source.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range source.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount VolumeMount
+ err := volumeMount.AssignProperties_From_VolumeMount(&volumeMountItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_VolumeMount() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ container.VolumeMounts = volumeMountList
+ } else {
+ container.VolumeMounts = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_BaseContainer populates the provided destination BaseContainer from our BaseContainer
+func (container *BaseContainer) AssignProperties_To_BaseContainer(destination *storage.BaseContainer) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Args
+ destination.Args = genruntime.CloneSliceOfString(container.Args)
+
+ // Command
+ destination.Command = genruntime.CloneSliceOfString(container.Command)
+
+ // Env
+ if container.Env != nil {
+ envList := make([]storage.EnvironmentVar, len(container.Env))
+ for envIndex, envItem := range container.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env storage.EnvironmentVar
+ err := envItem.AssignProperties_To_EnvironmentVar(&env)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_EnvironmentVar() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ destination.Env = envList
+ } else {
+ destination.Env = nil
+ }
+
+ // Image
+ destination.Image = genruntime.ClonePointerToString(container.Image)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(container.Name)
+
+ // Resources
+ if container.Resources != nil {
+ var resource storage.ContainerResources
+ err := container.Resources.AssignProperties_To_ContainerResources(&resource)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerResources() to populate field Resources")
+ }
+ destination.Resources = &resource
+ } else {
+ destination.Resources = nil
+ }
+
+ // VolumeMounts
+ if container.VolumeMounts != nil {
+ volumeMountList := make([]storage.VolumeMount, len(container.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range container.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount storage.VolumeMount
+ err := volumeMountItem.AssignProperties_To_VolumeMount(&volumeMount)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_VolumeMount() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ destination.VolumeMounts = volumeMountList
+ } else {
+ destination.VolumeMounts = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_BaseContainer_STATUS populates our BaseContainer from the provided source BaseContainer_STATUS
+func (container *BaseContainer) Initialize_From_BaseContainer_STATUS(source *BaseContainer_STATUS) error {
+
+ // Args
+ container.Args = genruntime.CloneSliceOfString(source.Args)
+
+ // Command
+ container.Command = genruntime.CloneSliceOfString(source.Command)
+
+ // Env
+ if source.Env != nil {
+ envList := make([]EnvironmentVar, len(source.Env))
+ for envIndex, envItem := range source.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env EnvironmentVar
+ err := env.Initialize_From_EnvironmentVar_STATUS(&envItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_EnvironmentVar_STATUS() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ container.Env = envList
+ } else {
+ container.Env = nil
+ }
+
+ // Image
+ container.Image = genruntime.ClonePointerToString(source.Image)
+
+ // Name
+ container.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Resources
+ if source.Resources != nil {
+ var resource ContainerResources
+ err := resource.Initialize_From_ContainerResources_STATUS(source.Resources)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ContainerResources_STATUS() to populate field Resources")
+ }
+ container.Resources = &resource
+ } else {
+ container.Resources = nil
+ }
+
+ // VolumeMounts
+ if source.VolumeMounts != nil {
+ volumeMountList := make([]VolumeMount, len(source.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range source.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount VolumeMount
+ err := volumeMount.Initialize_From_VolumeMount_STATUS(&volumeMountItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_VolumeMount_STATUS() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ container.VolumeMounts = volumeMountList
+ } else {
+ container.VolumeMounts = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App base container definition.
+type BaseContainer_STATUS struct {
+ // Args: Container start command arguments.
+ Args []string `json:"args,omitempty"`
+
+ // Command: Container start command.
+ Command []string `json:"command,omitempty"`
+
+ // Env: Container environment variables.
+ Env []EnvironmentVar_STATUS `json:"env,omitempty"`
+
+ // Image: Container image tag.
+ Image *string `json:"image,omitempty"`
+
+ // Name: Custom container name.
+ Name *string `json:"name,omitempty"`
+
+ // Resources: Container resource requirements.
+ Resources *ContainerResources_STATUS `json:"resources,omitempty"`
+
+ // VolumeMounts: Container volume mounts.
+ VolumeMounts []VolumeMount_STATUS `json:"volumeMounts,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &BaseContainer_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (container *BaseContainer_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.BaseContainer_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (container *BaseContainer_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.BaseContainer_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.BaseContainer_STATUS, got %T", armInput)
+ }
+
+ // Set property "Args":
+ for _, item := range typedInput.Args {
+ container.Args = append(container.Args, item)
+ }
+
+ // Set property "Command":
+ for _, item := range typedInput.Command {
+ container.Command = append(container.Command, item)
+ }
+
+ // Set property "Env":
+ for _, item := range typedInput.Env {
+ var item1 EnvironmentVar_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.Env = append(container.Env, item1)
+ }
+
+ // Set property "Image":
+ if typedInput.Image != nil {
+ image := *typedInput.Image
+ container.Image = &image
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ container.Name = &name
+ }
+
+ // Set property "Resources":
+ if typedInput.Resources != nil {
+ var resources1 ContainerResources_STATUS
+ err := resources1.PopulateFromARM(owner, *typedInput.Resources)
+ if err != nil {
+ return err
+ }
+ resources := resources1
+ container.Resources = &resources
+ }
+
+ // Set property "VolumeMounts":
+ for _, item := range typedInput.VolumeMounts {
+ var item1 VolumeMount_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.VolumeMounts = append(container.VolumeMounts, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_BaseContainer_STATUS populates our BaseContainer_STATUS from the provided source BaseContainer_STATUS
+func (container *BaseContainer_STATUS) AssignProperties_From_BaseContainer_STATUS(source *storage.BaseContainer_STATUS) error {
+
+ // Args
+ container.Args = genruntime.CloneSliceOfString(source.Args)
+
+ // Command
+ container.Command = genruntime.CloneSliceOfString(source.Command)
+
+ // Env
+ if source.Env != nil {
+ envList := make([]EnvironmentVar_STATUS, len(source.Env))
+ for envIndex, envItem := range source.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env EnvironmentVar_STATUS
+ err := env.AssignProperties_From_EnvironmentVar_STATUS(&envItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_EnvironmentVar_STATUS() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ container.Env = envList
+ } else {
+ container.Env = nil
+ }
+
+ // Image
+ container.Image = genruntime.ClonePointerToString(source.Image)
+
+ // Name
+ container.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Resources
+ if source.Resources != nil {
+ var resource ContainerResources_STATUS
+ err := resource.AssignProperties_From_ContainerResources_STATUS(source.Resources)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerResources_STATUS() to populate field Resources")
+ }
+ container.Resources = &resource
+ } else {
+ container.Resources = nil
+ }
+
+ // VolumeMounts
+ if source.VolumeMounts != nil {
+ volumeMountList := make([]VolumeMount_STATUS, len(source.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range source.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount VolumeMount_STATUS
+ err := volumeMount.AssignProperties_From_VolumeMount_STATUS(&volumeMountItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_VolumeMount_STATUS() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ container.VolumeMounts = volumeMountList
+ } else {
+ container.VolumeMounts = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_BaseContainer_STATUS populates the provided destination BaseContainer_STATUS from our BaseContainer_STATUS
+func (container *BaseContainer_STATUS) AssignProperties_To_BaseContainer_STATUS(destination *storage.BaseContainer_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Args
+ destination.Args = genruntime.CloneSliceOfString(container.Args)
+
+ // Command
+ destination.Command = genruntime.CloneSliceOfString(container.Command)
+
+ // Env
+ if container.Env != nil {
+ envList := make([]storage.EnvironmentVar_STATUS, len(container.Env))
+ for envIndex, envItem := range container.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env storage.EnvironmentVar_STATUS
+ err := envItem.AssignProperties_To_EnvironmentVar_STATUS(&env)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_EnvironmentVar_STATUS() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ destination.Env = envList
+ } else {
+ destination.Env = nil
+ }
+
+ // Image
+ destination.Image = genruntime.ClonePointerToString(container.Image)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(container.Name)
+
+ // Resources
+ if container.Resources != nil {
+ var resource storage.ContainerResources_STATUS
+ err := container.Resources.AssignProperties_To_ContainerResources_STATUS(&resource)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerResources_STATUS() to populate field Resources")
+ }
+ destination.Resources = &resource
+ } else {
+ destination.Resources = nil
+ }
+
+ // VolumeMounts
+ if container.VolumeMounts != nil {
+ volumeMountList := make([]storage.VolumeMount_STATUS, len(container.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range container.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount storage.VolumeMount_STATUS
+ err := volumeMountItem.AssignProperties_To_VolumeMount_STATUS(&volumeMount)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_VolumeMount_STATUS() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ destination.VolumeMounts = volumeMountList
+ } else {
+ destination.VolumeMounts = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"Multiple","Single"}
+type Configuration_ActiveRevisionsMode string
+
+const (
+ Configuration_ActiveRevisionsMode_Multiple = Configuration_ActiveRevisionsMode("Multiple")
+ Configuration_ActiveRevisionsMode_Single = Configuration_ActiveRevisionsMode("Single")
+)
+
+// Mapping from string to Configuration_ActiveRevisionsMode
+var configuration_ActiveRevisionsMode_Values = map[string]Configuration_ActiveRevisionsMode{
+ "multiple": Configuration_ActiveRevisionsMode_Multiple,
+ "single": Configuration_ActiveRevisionsMode_Single,
+}
+
+type Configuration_ActiveRevisionsMode_STATUS string
+
+const (
+ Configuration_ActiveRevisionsMode_STATUS_Multiple = Configuration_ActiveRevisionsMode_STATUS("Multiple")
+ Configuration_ActiveRevisionsMode_STATUS_Single = Configuration_ActiveRevisionsMode_STATUS("Single")
+)
+
+// Mapping from string to Configuration_ActiveRevisionsMode_STATUS
+var configuration_ActiveRevisionsMode_STATUS_Values = map[string]Configuration_ActiveRevisionsMode_STATUS{
+ "multiple": Configuration_ActiveRevisionsMode_STATUS_Multiple,
+ "single": Configuration_ActiveRevisionsMode_STATUS_Single,
+}
+
+// Container App container definition
+type Container struct {
+ // Args: Container start command arguments.
+ Args []string `json:"args,omitempty"`
+
+ // Command: Container start command.
+ Command []string `json:"command,omitempty"`
+
+ // Env: Container environment variables.
+ Env []EnvironmentVar `json:"env,omitempty"`
+
+ // Image: Container image tag.
+ Image *string `json:"image,omitempty"`
+
+ // Name: Custom container name.
+ Name *string `json:"name,omitempty"`
+
+ // Probes: List of probes for the container.
+ Probes []ContainerAppProbe `json:"probes,omitempty"`
+
+ // Resources: Container resource requirements.
+ Resources *ContainerResources `json:"resources,omitempty"`
+
+ // VolumeMounts: Container volume mounts.
+ VolumeMounts []VolumeMount `json:"volumeMounts,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Container{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (container *Container) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if container == nil {
+ return nil, nil
+ }
+ result := &arm.Container{}
+
+ // Set property "Args":
+ for _, item := range container.Args {
+ result.Args = append(result.Args, item)
+ }
+
+ // Set property "Command":
+ for _, item := range container.Command {
+ result.Command = append(result.Command, item)
+ }
+
+ // Set property "Env":
+ for _, item := range container.Env {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Env = append(result.Env, *item_ARM.(*arm.EnvironmentVar))
+ }
+
+ // Set property "Image":
+ if container.Image != nil {
+ image := *container.Image
+ result.Image = &image
+ }
+
+ // Set property "Name":
+ if container.Name != nil {
+ name := *container.Name
+ result.Name = &name
+ }
+
+ // Set property "Probes":
+ for _, item := range container.Probes {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Probes = append(result.Probes, *item_ARM.(*arm.ContainerAppProbe))
+ }
+
+ // Set property "Resources":
+ if container.Resources != nil {
+ resources_ARM, err := (*container.Resources).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ resources := *resources_ARM.(*arm.ContainerResources)
+ result.Resources = &resources
+ }
+
+ // Set property "VolumeMounts":
+ for _, item := range container.VolumeMounts {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.VolumeMounts = append(result.VolumeMounts, *item_ARM.(*arm.VolumeMount))
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (container *Container) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Container{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (container *Container) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Container)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Container, got %T", armInput)
+ }
+
+ // Set property "Args":
+ for _, item := range typedInput.Args {
+ container.Args = append(container.Args, item)
+ }
+
+ // Set property "Command":
+ for _, item := range typedInput.Command {
+ container.Command = append(container.Command, item)
+ }
+
+ // Set property "Env":
+ for _, item := range typedInput.Env {
+ var item1 EnvironmentVar
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.Env = append(container.Env, item1)
+ }
+
+ // Set property "Image":
+ if typedInput.Image != nil {
+ image := *typedInput.Image
+ container.Image = &image
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ container.Name = &name
+ }
+
+ // Set property "Probes":
+ for _, item := range typedInput.Probes {
+ var item1 ContainerAppProbe
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.Probes = append(container.Probes, item1)
+ }
+
+ // Set property "Resources":
+ if typedInput.Resources != nil {
+ var resources1 ContainerResources
+ err := resources1.PopulateFromARM(owner, *typedInput.Resources)
+ if err != nil {
+ return err
+ }
+ resources := resources1
+ container.Resources = &resources
+ }
+
+ // Set property "VolumeMounts":
+ for _, item := range typedInput.VolumeMounts {
+ var item1 VolumeMount
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.VolumeMounts = append(container.VolumeMounts, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Container populates our Container from the provided source Container
+func (container *Container) AssignProperties_From_Container(source *storage.Container) error {
+
+ // Args
+ container.Args = genruntime.CloneSliceOfString(source.Args)
+
+ // Command
+ container.Command = genruntime.CloneSliceOfString(source.Command)
+
+ // Env
+ if source.Env != nil {
+ envList := make([]EnvironmentVar, len(source.Env))
+ for envIndex, envItem := range source.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env EnvironmentVar
+ err := env.AssignProperties_From_EnvironmentVar(&envItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_EnvironmentVar() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ container.Env = envList
+ } else {
+ container.Env = nil
+ }
+
+ // Image
+ container.Image = genruntime.ClonePointerToString(source.Image)
+
+ // Name
+ container.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Probes
+ if source.Probes != nil {
+ probeList := make([]ContainerAppProbe, len(source.Probes))
+ for probeIndex, probeItem := range source.Probes {
+ // Shadow the loop variable to avoid aliasing
+ probeItem := probeItem
+ var probe ContainerAppProbe
+ err := probe.AssignProperties_From_ContainerAppProbe(&probeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppProbe() to populate field Probes")
+ }
+ probeList[probeIndex] = probe
+ }
+ container.Probes = probeList
+ } else {
+ container.Probes = nil
+ }
+
+ // Resources
+ if source.Resources != nil {
+ var resource ContainerResources
+ err := resource.AssignProperties_From_ContainerResources(source.Resources)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerResources() to populate field Resources")
+ }
+ container.Resources = &resource
+ } else {
+ container.Resources = nil
+ }
+
+ // VolumeMounts
+ if source.VolumeMounts != nil {
+ volumeMountList := make([]VolumeMount, len(source.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range source.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount VolumeMount
+ err := volumeMount.AssignProperties_From_VolumeMount(&volumeMountItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_VolumeMount() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ container.VolumeMounts = volumeMountList
+ } else {
+ container.VolumeMounts = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Container populates the provided destination Container from our Container
+func (container *Container) AssignProperties_To_Container(destination *storage.Container) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Args
+ destination.Args = genruntime.CloneSliceOfString(container.Args)
+
+ // Command
+ destination.Command = genruntime.CloneSliceOfString(container.Command)
+
+ // Env
+ if container.Env != nil {
+ envList := make([]storage.EnvironmentVar, len(container.Env))
+ for envIndex, envItem := range container.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env storage.EnvironmentVar
+ err := envItem.AssignProperties_To_EnvironmentVar(&env)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_EnvironmentVar() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ destination.Env = envList
+ } else {
+ destination.Env = nil
+ }
+
+ // Image
+ destination.Image = genruntime.ClonePointerToString(container.Image)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(container.Name)
+
+ // Probes
+ if container.Probes != nil {
+ probeList := make([]storage.ContainerAppProbe, len(container.Probes))
+ for probeIndex, probeItem := range container.Probes {
+ // Shadow the loop variable to avoid aliasing
+ probeItem := probeItem
+ var probe storage.ContainerAppProbe
+ err := probeItem.AssignProperties_To_ContainerAppProbe(&probe)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppProbe() to populate field Probes")
+ }
+ probeList[probeIndex] = probe
+ }
+ destination.Probes = probeList
+ } else {
+ destination.Probes = nil
+ }
+
+ // Resources
+ if container.Resources != nil {
+ var resource storage.ContainerResources
+ err := container.Resources.AssignProperties_To_ContainerResources(&resource)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerResources() to populate field Resources")
+ }
+ destination.Resources = &resource
+ } else {
+ destination.Resources = nil
+ }
+
+ // VolumeMounts
+ if container.VolumeMounts != nil {
+ volumeMountList := make([]storage.VolumeMount, len(container.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range container.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount storage.VolumeMount
+ err := volumeMountItem.AssignProperties_To_VolumeMount(&volumeMount)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_VolumeMount() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ destination.VolumeMounts = volumeMountList
+ } else {
+ destination.VolumeMounts = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Container_STATUS populates our Container from the provided source Container_STATUS
+func (container *Container) Initialize_From_Container_STATUS(source *Container_STATUS) error {
+
+ // Args
+ container.Args = genruntime.CloneSliceOfString(source.Args)
+
+ // Command
+ container.Command = genruntime.CloneSliceOfString(source.Command)
+
+ // Env
+ if source.Env != nil {
+ envList := make([]EnvironmentVar, len(source.Env))
+ for envIndex, envItem := range source.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env EnvironmentVar
+ err := env.Initialize_From_EnvironmentVar_STATUS(&envItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_EnvironmentVar_STATUS() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ container.Env = envList
+ } else {
+ container.Env = nil
+ }
+
+ // Image
+ container.Image = genruntime.ClonePointerToString(source.Image)
+
+ // Name
+ container.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Probes
+ if source.Probes != nil {
+ probeList := make([]ContainerAppProbe, len(source.Probes))
+ for probeIndex, probeItem := range source.Probes {
+ // Shadow the loop variable to avoid aliasing
+ probeItem := probeItem
+ var probe ContainerAppProbe
+ err := probe.Initialize_From_ContainerAppProbe_STATUS(&probeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ContainerAppProbe_STATUS() to populate field Probes")
+ }
+ probeList[probeIndex] = probe
+ }
+ container.Probes = probeList
+ } else {
+ container.Probes = nil
+ }
+
+ // Resources
+ if source.Resources != nil {
+ var resource ContainerResources
+ err := resource.Initialize_From_ContainerResources_STATUS(source.Resources)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ContainerResources_STATUS() to populate field Resources")
+ }
+ container.Resources = &resource
+ } else {
+ container.Resources = nil
+ }
+
+ // VolumeMounts
+ if source.VolumeMounts != nil {
+ volumeMountList := make([]VolumeMount, len(source.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range source.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount VolumeMount
+ err := volumeMount.Initialize_From_VolumeMount_STATUS(&volumeMountItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_VolumeMount_STATUS() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ container.VolumeMounts = volumeMountList
+ } else {
+ container.VolumeMounts = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App container definition
+type Container_STATUS struct {
+ // Args: Container start command arguments.
+ Args []string `json:"args,omitempty"`
+
+ // Command: Container start command.
+ Command []string `json:"command,omitempty"`
+
+ // Env: Container environment variables.
+ Env []EnvironmentVar_STATUS `json:"env,omitempty"`
+
+ // Image: Container image tag.
+ Image *string `json:"image,omitempty"`
+
+ // Name: Custom container name.
+ Name *string `json:"name,omitempty"`
+
+ // Probes: List of probes for the container.
+ Probes []ContainerAppProbe_STATUS `json:"probes,omitempty"`
+
+ // Resources: Container resource requirements.
+ Resources *ContainerResources_STATUS `json:"resources,omitempty"`
+
+ // VolumeMounts: Container volume mounts.
+ VolumeMounts []VolumeMount_STATUS `json:"volumeMounts,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Container_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (container *Container_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Container_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (container *Container_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Container_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Container_STATUS, got %T", armInput)
+ }
+
+ // Set property "Args":
+ for _, item := range typedInput.Args {
+ container.Args = append(container.Args, item)
+ }
+
+ // Set property "Command":
+ for _, item := range typedInput.Command {
+ container.Command = append(container.Command, item)
+ }
+
+ // Set property "Env":
+ for _, item := range typedInput.Env {
+ var item1 EnvironmentVar_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.Env = append(container.Env, item1)
+ }
+
+ // Set property "Image":
+ if typedInput.Image != nil {
+ image := *typedInput.Image
+ container.Image = &image
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ container.Name = &name
+ }
+
+ // Set property "Probes":
+ for _, item := range typedInput.Probes {
+ var item1 ContainerAppProbe_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.Probes = append(container.Probes, item1)
+ }
+
+ // Set property "Resources":
+ if typedInput.Resources != nil {
+ var resources1 ContainerResources_STATUS
+ err := resources1.PopulateFromARM(owner, *typedInput.Resources)
+ if err != nil {
+ return err
+ }
+ resources := resources1
+ container.Resources = &resources
+ }
+
+ // Set property "VolumeMounts":
+ for _, item := range typedInput.VolumeMounts {
+ var item1 VolumeMount_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ container.VolumeMounts = append(container.VolumeMounts, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Container_STATUS populates our Container_STATUS from the provided source Container_STATUS
+func (container *Container_STATUS) AssignProperties_From_Container_STATUS(source *storage.Container_STATUS) error {
+
+ // Args
+ container.Args = genruntime.CloneSliceOfString(source.Args)
+
+ // Command
+ container.Command = genruntime.CloneSliceOfString(source.Command)
+
+ // Env
+ if source.Env != nil {
+ envList := make([]EnvironmentVar_STATUS, len(source.Env))
+ for envIndex, envItem := range source.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env EnvironmentVar_STATUS
+ err := env.AssignProperties_From_EnvironmentVar_STATUS(&envItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_EnvironmentVar_STATUS() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ container.Env = envList
+ } else {
+ container.Env = nil
+ }
+
+ // Image
+ container.Image = genruntime.ClonePointerToString(source.Image)
+
+ // Name
+ container.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Probes
+ if source.Probes != nil {
+ probeList := make([]ContainerAppProbe_STATUS, len(source.Probes))
+ for probeIndex, probeItem := range source.Probes {
+ // Shadow the loop variable to avoid aliasing
+ probeItem := probeItem
+ var probe ContainerAppProbe_STATUS
+ err := probe.AssignProperties_From_ContainerAppProbe_STATUS(&probeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppProbe_STATUS() to populate field Probes")
+ }
+ probeList[probeIndex] = probe
+ }
+ container.Probes = probeList
+ } else {
+ container.Probes = nil
+ }
+
+ // Resources
+ if source.Resources != nil {
+ var resource ContainerResources_STATUS
+ err := resource.AssignProperties_From_ContainerResources_STATUS(source.Resources)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerResources_STATUS() to populate field Resources")
+ }
+ container.Resources = &resource
+ } else {
+ container.Resources = nil
+ }
+
+ // VolumeMounts
+ if source.VolumeMounts != nil {
+ volumeMountList := make([]VolumeMount_STATUS, len(source.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range source.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount VolumeMount_STATUS
+ err := volumeMount.AssignProperties_From_VolumeMount_STATUS(&volumeMountItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_VolumeMount_STATUS() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ container.VolumeMounts = volumeMountList
+ } else {
+ container.VolumeMounts = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Container_STATUS populates the provided destination Container_STATUS from our Container_STATUS
+func (container *Container_STATUS) AssignProperties_To_Container_STATUS(destination *storage.Container_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Args
+ destination.Args = genruntime.CloneSliceOfString(container.Args)
+
+ // Command
+ destination.Command = genruntime.CloneSliceOfString(container.Command)
+
+ // Env
+ if container.Env != nil {
+ envList := make([]storage.EnvironmentVar_STATUS, len(container.Env))
+ for envIndex, envItem := range container.Env {
+ // Shadow the loop variable to avoid aliasing
+ envItem := envItem
+ var env storage.EnvironmentVar_STATUS
+ err := envItem.AssignProperties_To_EnvironmentVar_STATUS(&env)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_EnvironmentVar_STATUS() to populate field Env")
+ }
+ envList[envIndex] = env
+ }
+ destination.Env = envList
+ } else {
+ destination.Env = nil
+ }
+
+ // Image
+ destination.Image = genruntime.ClonePointerToString(container.Image)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(container.Name)
+
+ // Probes
+ if container.Probes != nil {
+ probeList := make([]storage.ContainerAppProbe_STATUS, len(container.Probes))
+ for probeIndex, probeItem := range container.Probes {
+ // Shadow the loop variable to avoid aliasing
+ probeItem := probeItem
+ var probe storage.ContainerAppProbe_STATUS
+ err := probeItem.AssignProperties_To_ContainerAppProbe_STATUS(&probe)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppProbe_STATUS() to populate field Probes")
+ }
+ probeList[probeIndex] = probe
+ }
+ destination.Probes = probeList
+ } else {
+ destination.Probes = nil
+ }
+
+ // Resources
+ if container.Resources != nil {
+ var resource storage.ContainerResources_STATUS
+ err := container.Resources.AssignProperties_To_ContainerResources_STATUS(&resource)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerResources_STATUS() to populate field Resources")
+ }
+ destination.Resources = &resource
+ } else {
+ destination.Resources = nil
+ }
+
+ // VolumeMounts
+ if container.VolumeMounts != nil {
+ volumeMountList := make([]storage.VolumeMount_STATUS, len(container.VolumeMounts))
+ for volumeMountIndex, volumeMountItem := range container.VolumeMounts {
+ // Shadow the loop variable to avoid aliasing
+ volumeMountItem := volumeMountItem
+ var volumeMount storage.VolumeMount_STATUS
+ err := volumeMountItem.AssignProperties_To_VolumeMount_STATUS(&volumeMount)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_VolumeMount_STATUS() to populate field VolumeMounts")
+ }
+ volumeMountList[volumeMountIndex] = volumeMount
+ }
+ destination.VolumeMounts = volumeMountList
+ } else {
+ destination.VolumeMounts = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ContainerAppOperatorConfigMaps struct {
+ // EventStreamEndpoint: indicates where the EventStreamEndpoint config map should be placed. If omitted, no config map will
+ // be created.
+ EventStreamEndpoint *genruntime.ConfigMapDestination `json:"eventStreamEndpoint,omitempty"`
+
+ // Fqdn: indicates where the Fqdn config map should be placed. If omitted, no config map will be created.
+ Fqdn *genruntime.ConfigMapDestination `json:"fqdn,omitempty"`
+}
+
+// AssignProperties_From_ContainerAppOperatorConfigMaps populates our ContainerAppOperatorConfigMaps from the provided source ContainerAppOperatorConfigMaps
+func (maps *ContainerAppOperatorConfigMaps) AssignProperties_From_ContainerAppOperatorConfigMaps(source *storage.ContainerAppOperatorConfigMaps) error {
+
+ // EventStreamEndpoint
+ if source.EventStreamEndpoint != nil {
+ eventStreamEndpoint := source.EventStreamEndpoint.Copy()
+ maps.EventStreamEndpoint = &eventStreamEndpoint
+ } else {
+ maps.EventStreamEndpoint = nil
+ }
+
+ // Fqdn
+ if source.Fqdn != nil {
+ fqdn := source.Fqdn.Copy()
+ maps.Fqdn = &fqdn
+ } else {
+ maps.Fqdn = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppOperatorConfigMaps populates the provided destination ContainerAppOperatorConfigMaps from our ContainerAppOperatorConfigMaps
+func (maps *ContainerAppOperatorConfigMaps) AssignProperties_To_ContainerAppOperatorConfigMaps(destination *storage.ContainerAppOperatorConfigMaps) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // EventStreamEndpoint
+ if maps.EventStreamEndpoint != nil {
+ eventStreamEndpoint := maps.EventStreamEndpoint.Copy()
+ destination.EventStreamEndpoint = &eventStreamEndpoint
+ } else {
+ destination.EventStreamEndpoint = nil
+ }
+
+ // Fqdn
+ if maps.Fqdn != nil {
+ fqdn := maps.Fqdn.Copy()
+ destination.Fqdn = &fqdn
+ } else {
+ destination.Fqdn = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App Dapr configuration.
+type Dapr struct {
+ // AppId: Dapr application identifier
+ AppId *string `json:"appId,omitempty"`
+
+ // AppPort: Tells Dapr which port your application is listening on
+ AppPort *int `json:"appPort,omitempty"`
+
+ // AppProtocol: Tells Dapr which protocol your application is using. Valid options are http and grpc. Default is http
+ AppProtocol *Dapr_AppProtocol `json:"appProtocol,omitempty"`
+
+ // EnableApiLogging: Enables API logging for the Dapr sidecar
+ EnableApiLogging *bool `json:"enableApiLogging,omitempty"`
+
+ // Enabled: Boolean indicating if the Dapr side car is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // HttpMaxRequestSize: Increasing max size of request body http and grpc servers parameter in MB to handle uploading of big
+ // files. Default is 4 MB.
+ HttpMaxRequestSize *int `json:"httpMaxRequestSize,omitempty"`
+
+ // HttpReadBufferSize: Dapr max size of http header read buffer in KB to handle when sending multi-KB headers. Default is
+ // 65KB.
+ HttpReadBufferSize *int `json:"httpReadBufferSize,omitempty"`
+
+ // LogLevel: Sets the log level for the Dapr sidecar. Allowed values are debug, info, warn, error. Default is info.
+ LogLevel *Dapr_LogLevel `json:"logLevel,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Dapr{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (dapr *Dapr) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if dapr == nil {
+ return nil, nil
+ }
+ result := &arm.Dapr{}
+
+ // Set property "AppId":
+ if dapr.AppId != nil {
+ appId := *dapr.AppId
+ result.AppId = &appId
+ }
+
+ // Set property "AppPort":
+ if dapr.AppPort != nil {
+ appPort := *dapr.AppPort
+ result.AppPort = &appPort
+ }
+
+ // Set property "AppProtocol":
+ if dapr.AppProtocol != nil {
+ var temp string
+ temp = string(*dapr.AppProtocol)
+ appProtocol := arm.Dapr_AppProtocol(temp)
+ result.AppProtocol = &appProtocol
+ }
+
+ // Set property "EnableApiLogging":
+ if dapr.EnableApiLogging != nil {
+ enableApiLogging := *dapr.EnableApiLogging
+ result.EnableApiLogging = &enableApiLogging
+ }
+
+ // Set property "Enabled":
+ if dapr.Enabled != nil {
+ enabled := *dapr.Enabled
+ result.Enabled = &enabled
+ }
+
+ // Set property "HttpMaxRequestSize":
+ if dapr.HttpMaxRequestSize != nil {
+ httpMaxRequestSize := *dapr.HttpMaxRequestSize
+ result.HttpMaxRequestSize = &httpMaxRequestSize
+ }
+
+ // Set property "HttpReadBufferSize":
+ if dapr.HttpReadBufferSize != nil {
+ httpReadBufferSize := *dapr.HttpReadBufferSize
+ result.HttpReadBufferSize = &httpReadBufferSize
+ }
+
+ // Set property "LogLevel":
+ if dapr.LogLevel != nil {
+ var temp string
+ temp = string(*dapr.LogLevel)
+ logLevel := arm.Dapr_LogLevel(temp)
+ result.LogLevel = &logLevel
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (dapr *Dapr) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Dapr{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (dapr *Dapr) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Dapr)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Dapr, got %T", armInput)
+ }
+
+ // Set property "AppId":
+ if typedInput.AppId != nil {
+ appId := *typedInput.AppId
+ dapr.AppId = &appId
+ }
+
+ // Set property "AppPort":
+ if typedInput.AppPort != nil {
+ appPort := *typedInput.AppPort
+ dapr.AppPort = &appPort
+ }
+
+ // Set property "AppProtocol":
+ if typedInput.AppProtocol != nil {
+ var temp string
+ temp = string(*typedInput.AppProtocol)
+ appProtocol := Dapr_AppProtocol(temp)
+ dapr.AppProtocol = &appProtocol
+ }
+
+ // Set property "EnableApiLogging":
+ if typedInput.EnableApiLogging != nil {
+ enableApiLogging := *typedInput.EnableApiLogging
+ dapr.EnableApiLogging = &enableApiLogging
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ dapr.Enabled = &enabled
+ }
+
+ // Set property "HttpMaxRequestSize":
+ if typedInput.HttpMaxRequestSize != nil {
+ httpMaxRequestSize := *typedInput.HttpMaxRequestSize
+ dapr.HttpMaxRequestSize = &httpMaxRequestSize
+ }
+
+ // Set property "HttpReadBufferSize":
+ if typedInput.HttpReadBufferSize != nil {
+ httpReadBufferSize := *typedInput.HttpReadBufferSize
+ dapr.HttpReadBufferSize = &httpReadBufferSize
+ }
+
+ // Set property "LogLevel":
+ if typedInput.LogLevel != nil {
+ var temp string
+ temp = string(*typedInput.LogLevel)
+ logLevel := Dapr_LogLevel(temp)
+ dapr.LogLevel = &logLevel
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Dapr populates our Dapr from the provided source Dapr
+func (dapr *Dapr) AssignProperties_From_Dapr(source *storage.Dapr) error {
+
+ // AppId
+ dapr.AppId = genruntime.ClonePointerToString(source.AppId)
+
+ // AppPort
+ dapr.AppPort = genruntime.ClonePointerToInt(source.AppPort)
+
+ // AppProtocol
+ if source.AppProtocol != nil {
+ appProtocol := *source.AppProtocol
+ appProtocolTemp := genruntime.ToEnum(appProtocol, dapr_AppProtocol_Values)
+ dapr.AppProtocol = &appProtocolTemp
+ } else {
+ dapr.AppProtocol = nil
+ }
+
+ // EnableApiLogging
+ if source.EnableApiLogging != nil {
+ enableApiLogging := *source.EnableApiLogging
+ dapr.EnableApiLogging = &enableApiLogging
+ } else {
+ dapr.EnableApiLogging = nil
+ }
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ dapr.Enabled = &enabled
+ } else {
+ dapr.Enabled = nil
+ }
+
+ // HttpMaxRequestSize
+ dapr.HttpMaxRequestSize = genruntime.ClonePointerToInt(source.HttpMaxRequestSize)
+
+ // HttpReadBufferSize
+ dapr.HttpReadBufferSize = genruntime.ClonePointerToInt(source.HttpReadBufferSize)
+
+ // LogLevel
+ if source.LogLevel != nil {
+ logLevel := *source.LogLevel
+ logLevelTemp := genruntime.ToEnum(logLevel, dapr_LogLevel_Values)
+ dapr.LogLevel = &logLevelTemp
+ } else {
+ dapr.LogLevel = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Dapr populates the provided destination Dapr from our Dapr
+func (dapr *Dapr) AssignProperties_To_Dapr(destination *storage.Dapr) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AppId
+ destination.AppId = genruntime.ClonePointerToString(dapr.AppId)
+
+ // AppPort
+ destination.AppPort = genruntime.ClonePointerToInt(dapr.AppPort)
+
+ // AppProtocol
+ if dapr.AppProtocol != nil {
+ appProtocol := string(*dapr.AppProtocol)
+ destination.AppProtocol = &appProtocol
+ } else {
+ destination.AppProtocol = nil
+ }
+
+ // EnableApiLogging
+ if dapr.EnableApiLogging != nil {
+ enableApiLogging := *dapr.EnableApiLogging
+ destination.EnableApiLogging = &enableApiLogging
+ } else {
+ destination.EnableApiLogging = nil
+ }
+
+ // Enabled
+ if dapr.Enabled != nil {
+ enabled := *dapr.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // HttpMaxRequestSize
+ destination.HttpMaxRequestSize = genruntime.ClonePointerToInt(dapr.HttpMaxRequestSize)
+
+ // HttpReadBufferSize
+ destination.HttpReadBufferSize = genruntime.ClonePointerToInt(dapr.HttpReadBufferSize)
+
+ // LogLevel
+ if dapr.LogLevel != nil {
+ logLevel := string(*dapr.LogLevel)
+ destination.LogLevel = &logLevel
+ } else {
+ destination.LogLevel = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Dapr_STATUS populates our Dapr from the provided source Dapr_STATUS
+func (dapr *Dapr) Initialize_From_Dapr_STATUS(source *Dapr_STATUS) error {
+
+ // AppId
+ dapr.AppId = genruntime.ClonePointerToString(source.AppId)
+
+ // AppPort
+ dapr.AppPort = genruntime.ClonePointerToInt(source.AppPort)
+
+ // AppProtocol
+ if source.AppProtocol != nil {
+ appProtocol := genruntime.ToEnum(string(*source.AppProtocol), dapr_AppProtocol_Values)
+ dapr.AppProtocol = &appProtocol
+ } else {
+ dapr.AppProtocol = nil
+ }
+
+ // EnableApiLogging
+ if source.EnableApiLogging != nil {
+ enableApiLogging := *source.EnableApiLogging
+ dapr.EnableApiLogging = &enableApiLogging
+ } else {
+ dapr.EnableApiLogging = nil
+ }
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ dapr.Enabled = &enabled
+ } else {
+ dapr.Enabled = nil
+ }
+
+ // HttpMaxRequestSize
+ dapr.HttpMaxRequestSize = genruntime.ClonePointerToInt(source.HttpMaxRequestSize)
+
+ // HttpReadBufferSize
+ dapr.HttpReadBufferSize = genruntime.ClonePointerToInt(source.HttpReadBufferSize)
+
+ // LogLevel
+ if source.LogLevel != nil {
+ logLevel := genruntime.ToEnum(string(*source.LogLevel), dapr_LogLevel_Values)
+ dapr.LogLevel = &logLevel
+ } else {
+ dapr.LogLevel = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App Dapr configuration.
+type Dapr_STATUS struct {
+ // AppId: Dapr application identifier
+ AppId *string `json:"appId,omitempty"`
+
+ // AppPort: Tells Dapr which port your application is listening on
+ AppPort *int `json:"appPort,omitempty"`
+
+ // AppProtocol: Tells Dapr which protocol your application is using. Valid options are http and grpc. Default is http
+ AppProtocol *Dapr_AppProtocol_STATUS `json:"appProtocol,omitempty"`
+
+ // EnableApiLogging: Enables API logging for the Dapr sidecar
+ EnableApiLogging *bool `json:"enableApiLogging,omitempty"`
+
+ // Enabled: Boolean indicating if the Dapr side car is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+
+ // HttpMaxRequestSize: Increasing max size of request body http and grpc servers parameter in MB to handle uploading of big
+ // files. Default is 4 MB.
+ HttpMaxRequestSize *int `json:"httpMaxRequestSize,omitempty"`
+
+ // HttpReadBufferSize: Dapr max size of http header read buffer in KB to handle when sending multi-KB headers. Default is
+ // 65KB.
+ HttpReadBufferSize *int `json:"httpReadBufferSize,omitempty"`
+
+ // LogLevel: Sets the log level for the Dapr sidecar. Allowed values are debug, info, warn, error. Default is info.
+ LogLevel *Dapr_LogLevel_STATUS `json:"logLevel,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Dapr_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (dapr *Dapr_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Dapr_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (dapr *Dapr_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Dapr_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Dapr_STATUS, got %T", armInput)
+ }
+
+ // Set property "AppId":
+ if typedInput.AppId != nil {
+ appId := *typedInput.AppId
+ dapr.AppId = &appId
+ }
+
+ // Set property "AppPort":
+ if typedInput.AppPort != nil {
+ appPort := *typedInput.AppPort
+ dapr.AppPort = &appPort
+ }
+
+ // Set property "AppProtocol":
+ if typedInput.AppProtocol != nil {
+ var temp string
+ temp = string(*typedInput.AppProtocol)
+ appProtocol := Dapr_AppProtocol_STATUS(temp)
+ dapr.AppProtocol = &appProtocol
+ }
+
+ // Set property "EnableApiLogging":
+ if typedInput.EnableApiLogging != nil {
+ enableApiLogging := *typedInput.EnableApiLogging
+ dapr.EnableApiLogging = &enableApiLogging
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ dapr.Enabled = &enabled
+ }
+
+ // Set property "HttpMaxRequestSize":
+ if typedInput.HttpMaxRequestSize != nil {
+ httpMaxRequestSize := *typedInput.HttpMaxRequestSize
+ dapr.HttpMaxRequestSize = &httpMaxRequestSize
+ }
+
+ // Set property "HttpReadBufferSize":
+ if typedInput.HttpReadBufferSize != nil {
+ httpReadBufferSize := *typedInput.HttpReadBufferSize
+ dapr.HttpReadBufferSize = &httpReadBufferSize
+ }
+
+ // Set property "LogLevel":
+ if typedInput.LogLevel != nil {
+ var temp string
+ temp = string(*typedInput.LogLevel)
+ logLevel := Dapr_LogLevel_STATUS(temp)
+ dapr.LogLevel = &logLevel
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Dapr_STATUS populates our Dapr_STATUS from the provided source Dapr_STATUS
+func (dapr *Dapr_STATUS) AssignProperties_From_Dapr_STATUS(source *storage.Dapr_STATUS) error {
+
+ // AppId
+ dapr.AppId = genruntime.ClonePointerToString(source.AppId)
+
+ // AppPort
+ dapr.AppPort = genruntime.ClonePointerToInt(source.AppPort)
+
+ // AppProtocol
+ if source.AppProtocol != nil {
+ appProtocol := *source.AppProtocol
+ appProtocolTemp := genruntime.ToEnum(appProtocol, dapr_AppProtocol_STATUS_Values)
+ dapr.AppProtocol = &appProtocolTemp
+ } else {
+ dapr.AppProtocol = nil
+ }
+
+ // EnableApiLogging
+ if source.EnableApiLogging != nil {
+ enableApiLogging := *source.EnableApiLogging
+ dapr.EnableApiLogging = &enableApiLogging
+ } else {
+ dapr.EnableApiLogging = nil
+ }
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ dapr.Enabled = &enabled
+ } else {
+ dapr.Enabled = nil
+ }
+
+ // HttpMaxRequestSize
+ dapr.HttpMaxRequestSize = genruntime.ClonePointerToInt(source.HttpMaxRequestSize)
+
+ // HttpReadBufferSize
+ dapr.HttpReadBufferSize = genruntime.ClonePointerToInt(source.HttpReadBufferSize)
+
+ // LogLevel
+ if source.LogLevel != nil {
+ logLevel := *source.LogLevel
+ logLevelTemp := genruntime.ToEnum(logLevel, dapr_LogLevel_STATUS_Values)
+ dapr.LogLevel = &logLevelTemp
+ } else {
+ dapr.LogLevel = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Dapr_STATUS populates the provided destination Dapr_STATUS from our Dapr_STATUS
+func (dapr *Dapr_STATUS) AssignProperties_To_Dapr_STATUS(destination *storage.Dapr_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AppId
+ destination.AppId = genruntime.ClonePointerToString(dapr.AppId)
+
+ // AppPort
+ destination.AppPort = genruntime.ClonePointerToInt(dapr.AppPort)
+
+ // AppProtocol
+ if dapr.AppProtocol != nil {
+ appProtocol := string(*dapr.AppProtocol)
+ destination.AppProtocol = &appProtocol
+ } else {
+ destination.AppProtocol = nil
+ }
+
+ // EnableApiLogging
+ if dapr.EnableApiLogging != nil {
+ enableApiLogging := *dapr.EnableApiLogging
+ destination.EnableApiLogging = &enableApiLogging
+ } else {
+ destination.EnableApiLogging = nil
+ }
+
+ // Enabled
+ if dapr.Enabled != nil {
+ enabled := *dapr.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // HttpMaxRequestSize
+ destination.HttpMaxRequestSize = genruntime.ClonePointerToInt(dapr.HttpMaxRequestSize)
+
+ // HttpReadBufferSize
+ destination.HttpReadBufferSize = genruntime.ClonePointerToInt(dapr.HttpReadBufferSize)
+
+ // LogLevel
+ if dapr.LogLevel != nil {
+ logLevel := string(*dapr.LogLevel)
+ destination.LogLevel = &logLevel
+ } else {
+ destination.LogLevel = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// The type of extendedLocation.
+// +kubebuilder:validation:Enum={"CustomLocation"}
+type ExtendedLocationType string
+
+const ExtendedLocationType_CustomLocation = ExtendedLocationType("CustomLocation")
+
+// Mapping from string to ExtendedLocationType
+var extendedLocationType_Values = map[string]ExtendedLocationType{
+ "customlocation": ExtendedLocationType_CustomLocation,
+}
+
+// The type of extendedLocation.
+type ExtendedLocationType_STATUS string
+
+const ExtendedLocationType_STATUS_CustomLocation = ExtendedLocationType_STATUS("CustomLocation")
+
+// Mapping from string to ExtendedLocationType_STATUS
+var extendedLocationType_STATUS_Values = map[string]ExtendedLocationType_STATUS{
+ "customlocation": ExtendedLocationType_STATUS_CustomLocation,
+}
+
+// Container App Ingress configuration.
+type Ingress struct {
+ // AdditionalPortMappings: Settings to expose additional ports on container app
+ AdditionalPortMappings []IngressPortMapping `json:"additionalPortMappings,omitempty"`
+
+ // AllowInsecure: Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically
+ // redirected to HTTPS connections
+ AllowInsecure *bool `json:"allowInsecure,omitempty"`
+
+ // ClientCertificateMode: Client certificate mode for mTLS authentication. Ignore indicates server drops client certificate
+ // on forwarding. Accept indicates server forwards client certificate but does not require a client certificate. Require
+ // indicates server requires a client certificate.
+ ClientCertificateMode *Ingress_ClientCertificateMode `json:"clientCertificateMode,omitempty"`
+
+ // CorsPolicy: CORS policy for container app
+ CorsPolicy *CorsPolicy `json:"corsPolicy,omitempty"`
+
+ // CustomDomains: custom domain bindings for Container Apps' hostnames.
+ CustomDomains []CustomDomain `json:"customDomains,omitempty"`
+
+ // ExposedPort: Exposed Port in containers for TCP traffic from ingress
+ ExposedPort *int `json:"exposedPort,omitempty"`
+
+ // External: Bool indicating if app exposes an external http endpoint
+ External *bool `json:"external,omitempty"`
+
+ // IpSecurityRestrictions: Rules to restrict incoming IP address.
+ IpSecurityRestrictions []IpSecurityRestrictionRule `json:"ipSecurityRestrictions,omitempty"`
+
+ // StickySessions: Sticky Sessions for Single Revision Mode
+ StickySessions *Ingress_StickySessions `json:"stickySessions,omitempty"`
+
+ // TargetPort: Target Port in containers for traffic from ingress
+ TargetPort *int `json:"targetPort,omitempty"`
+
+ // Traffic: Traffic weights for app's revisions
+ Traffic []TrafficWeight `json:"traffic,omitempty"`
+
+ // Transport: Ingress transport protocol
+ Transport *Ingress_Transport `json:"transport,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Ingress{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (ingress *Ingress) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if ingress == nil {
+ return nil, nil
+ }
+ result := &arm.Ingress{}
+
+ // Set property "AdditionalPortMappings":
+ for _, item := range ingress.AdditionalPortMappings {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.AdditionalPortMappings = append(result.AdditionalPortMappings, *item_ARM.(*arm.IngressPortMapping))
+ }
+
+ // Set property "AllowInsecure":
+ if ingress.AllowInsecure != nil {
+ allowInsecure := *ingress.AllowInsecure
+ result.AllowInsecure = &allowInsecure
+ }
+
+ // Set property "ClientCertificateMode":
+ if ingress.ClientCertificateMode != nil {
+ var temp string
+ temp = string(*ingress.ClientCertificateMode)
+ clientCertificateMode := arm.Ingress_ClientCertificateMode(temp)
+ result.ClientCertificateMode = &clientCertificateMode
+ }
+
+ // Set property "CorsPolicy":
+ if ingress.CorsPolicy != nil {
+ corsPolicy_ARM, err := (*ingress.CorsPolicy).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ corsPolicy := *corsPolicy_ARM.(*arm.CorsPolicy)
+ result.CorsPolicy = &corsPolicy
+ }
+
+ // Set property "CustomDomains":
+ for _, item := range ingress.CustomDomains {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.CustomDomains = append(result.CustomDomains, *item_ARM.(*arm.CustomDomain))
+ }
+
+ // Set property "ExposedPort":
+ if ingress.ExposedPort != nil {
+ exposedPort := *ingress.ExposedPort
+ result.ExposedPort = &exposedPort
+ }
+
+ // Set property "External":
+ if ingress.External != nil {
+ external := *ingress.External
+ result.External = &external
+ }
+
+ // Set property "IpSecurityRestrictions":
+ for _, item := range ingress.IpSecurityRestrictions {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.IpSecurityRestrictions = append(result.IpSecurityRestrictions, *item_ARM.(*arm.IpSecurityRestrictionRule))
+ }
+
+ // Set property "StickySessions":
+ if ingress.StickySessions != nil {
+ stickySessions_ARM, err := (*ingress.StickySessions).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ stickySessions := *stickySessions_ARM.(*arm.Ingress_StickySessions)
+ result.StickySessions = &stickySessions
+ }
+
+ // Set property "TargetPort":
+ if ingress.TargetPort != nil {
+ targetPort := *ingress.TargetPort
+ result.TargetPort = &targetPort
+ }
+
+ // Set property "Traffic":
+ for _, item := range ingress.Traffic {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Traffic = append(result.Traffic, *item_ARM.(*arm.TrafficWeight))
+ }
+
+ // Set property "Transport":
+ if ingress.Transport != nil {
+ var temp string
+ temp = string(*ingress.Transport)
+ transport := arm.Ingress_Transport(temp)
+ result.Transport = &transport
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (ingress *Ingress) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Ingress{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (ingress *Ingress) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Ingress)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Ingress, got %T", armInput)
+ }
+
+ // Set property "AdditionalPortMappings":
+ for _, item := range typedInput.AdditionalPortMappings {
+ var item1 IngressPortMapping
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ ingress.AdditionalPortMappings = append(ingress.AdditionalPortMappings, item1)
+ }
+
+ // Set property "AllowInsecure":
+ if typedInput.AllowInsecure != nil {
+ allowInsecure := *typedInput.AllowInsecure
+ ingress.AllowInsecure = &allowInsecure
+ }
+
+ // Set property "ClientCertificateMode":
+ if typedInput.ClientCertificateMode != nil {
+ var temp string
+ temp = string(*typedInput.ClientCertificateMode)
+ clientCertificateMode := Ingress_ClientCertificateMode(temp)
+ ingress.ClientCertificateMode = &clientCertificateMode
+ }
+
+ // Set property "CorsPolicy":
+ if typedInput.CorsPolicy != nil {
+ var corsPolicy1 CorsPolicy
+ err := corsPolicy1.PopulateFromARM(owner, *typedInput.CorsPolicy)
+ if err != nil {
+ return err
+ }
+ corsPolicy := corsPolicy1
+ ingress.CorsPolicy = &corsPolicy
+ }
+
+ // Set property "CustomDomains":
+ for _, item := range typedInput.CustomDomains {
+ var item1 CustomDomain
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ ingress.CustomDomains = append(ingress.CustomDomains, item1)
+ }
+
+ // Set property "ExposedPort":
+ if typedInput.ExposedPort != nil {
+ exposedPort := *typedInput.ExposedPort
+ ingress.ExposedPort = &exposedPort
+ }
+
+ // Set property "External":
+ if typedInput.External != nil {
+ external := *typedInput.External
+ ingress.External = &external
+ }
+
+ // Set property "IpSecurityRestrictions":
+ for _, item := range typedInput.IpSecurityRestrictions {
+ var item1 IpSecurityRestrictionRule
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ ingress.IpSecurityRestrictions = append(ingress.IpSecurityRestrictions, item1)
+ }
+
+ // Set property "StickySessions":
+ if typedInput.StickySessions != nil {
+ var stickySessions1 Ingress_StickySessions
+ err := stickySessions1.PopulateFromARM(owner, *typedInput.StickySessions)
+ if err != nil {
+ return err
+ }
+ stickySessions := stickySessions1
+ ingress.StickySessions = &stickySessions
+ }
+
+ // Set property "TargetPort":
+ if typedInput.TargetPort != nil {
+ targetPort := *typedInput.TargetPort
+ ingress.TargetPort = &targetPort
+ }
+
+ // Set property "Traffic":
+ for _, item := range typedInput.Traffic {
+ var item1 TrafficWeight
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ ingress.Traffic = append(ingress.Traffic, item1)
+ }
+
+ // Set property "Transport":
+ if typedInput.Transport != nil {
+ var temp string
+ temp = string(*typedInput.Transport)
+ transport := Ingress_Transport(temp)
+ ingress.Transport = &transport
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Ingress populates our Ingress from the provided source Ingress
+func (ingress *Ingress) AssignProperties_From_Ingress(source *storage.Ingress) error {
+
+ // AdditionalPortMappings
+ if source.AdditionalPortMappings != nil {
+ additionalPortMappingList := make([]IngressPortMapping, len(source.AdditionalPortMappings))
+ for additionalPortMappingIndex, additionalPortMappingItem := range source.AdditionalPortMappings {
+ // Shadow the loop variable to avoid aliasing
+ additionalPortMappingItem := additionalPortMappingItem
+ var additionalPortMapping IngressPortMapping
+ err := additionalPortMapping.AssignProperties_From_IngressPortMapping(&additionalPortMappingItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_IngressPortMapping() to populate field AdditionalPortMappings")
+ }
+ additionalPortMappingList[additionalPortMappingIndex] = additionalPortMapping
+ }
+ ingress.AdditionalPortMappings = additionalPortMappingList
+ } else {
+ ingress.AdditionalPortMappings = nil
+ }
+
+ // AllowInsecure
+ if source.AllowInsecure != nil {
+ allowInsecure := *source.AllowInsecure
+ ingress.AllowInsecure = &allowInsecure
+ } else {
+ ingress.AllowInsecure = nil
+ }
+
+ // ClientCertificateMode
+ if source.ClientCertificateMode != nil {
+ clientCertificateMode := *source.ClientCertificateMode
+ clientCertificateModeTemp := genruntime.ToEnum(clientCertificateMode, ingress_ClientCertificateMode_Values)
+ ingress.ClientCertificateMode = &clientCertificateModeTemp
+ } else {
+ ingress.ClientCertificateMode = nil
+ }
+
+ // CorsPolicy
+ if source.CorsPolicy != nil {
+ var corsPolicy CorsPolicy
+ err := corsPolicy.AssignProperties_From_CorsPolicy(source.CorsPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CorsPolicy() to populate field CorsPolicy")
+ }
+ ingress.CorsPolicy = &corsPolicy
+ } else {
+ ingress.CorsPolicy = nil
+ }
+
+ // CustomDomains
+ if source.CustomDomains != nil {
+ customDomainList := make([]CustomDomain, len(source.CustomDomains))
+ for customDomainIndex, customDomainItem := range source.CustomDomains {
+ // Shadow the loop variable to avoid aliasing
+ customDomainItem := customDomainItem
+ var customDomain CustomDomain
+ err := customDomain.AssignProperties_From_CustomDomain(&customDomainItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CustomDomain() to populate field CustomDomains")
+ }
+ customDomainList[customDomainIndex] = customDomain
+ }
+ ingress.CustomDomains = customDomainList
+ } else {
+ ingress.CustomDomains = nil
+ }
+
+ // ExposedPort
+ ingress.ExposedPort = genruntime.ClonePointerToInt(source.ExposedPort)
+
+ // External
+ if source.External != nil {
+ external := *source.External
+ ingress.External = &external
+ } else {
+ ingress.External = nil
+ }
+
+ // IpSecurityRestrictions
+ if source.IpSecurityRestrictions != nil {
+ ipSecurityRestrictionList := make([]IpSecurityRestrictionRule, len(source.IpSecurityRestrictions))
+ for ipSecurityRestrictionIndex, ipSecurityRestrictionItem := range source.IpSecurityRestrictions {
+ // Shadow the loop variable to avoid aliasing
+ ipSecurityRestrictionItem := ipSecurityRestrictionItem
+ var ipSecurityRestriction IpSecurityRestrictionRule
+ err := ipSecurityRestriction.AssignProperties_From_IpSecurityRestrictionRule(&ipSecurityRestrictionItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_IpSecurityRestrictionRule() to populate field IpSecurityRestrictions")
+ }
+ ipSecurityRestrictionList[ipSecurityRestrictionIndex] = ipSecurityRestriction
+ }
+ ingress.IpSecurityRestrictions = ipSecurityRestrictionList
+ } else {
+ ingress.IpSecurityRestrictions = nil
+ }
+
+ // StickySessions
+ if source.StickySessions != nil {
+ var stickySession Ingress_StickySessions
+ err := stickySession.AssignProperties_From_Ingress_StickySessions(source.StickySessions)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Ingress_StickySessions() to populate field StickySessions")
+ }
+ ingress.StickySessions = &stickySession
+ } else {
+ ingress.StickySessions = nil
+ }
+
+ // TargetPort
+ ingress.TargetPort = genruntime.ClonePointerToInt(source.TargetPort)
+
+ // Traffic
+ if source.Traffic != nil {
+ trafficList := make([]TrafficWeight, len(source.Traffic))
+ for trafficIndex, trafficItem := range source.Traffic {
+ // Shadow the loop variable to avoid aliasing
+ trafficItem := trafficItem
+ var traffic TrafficWeight
+ err := traffic.AssignProperties_From_TrafficWeight(&trafficItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_TrafficWeight() to populate field Traffic")
+ }
+ trafficList[trafficIndex] = traffic
+ }
+ ingress.Traffic = trafficList
+ } else {
+ ingress.Traffic = nil
+ }
+
+ // Transport
+ if source.Transport != nil {
+ transport := *source.Transport
+ transportTemp := genruntime.ToEnum(transport, ingress_Transport_Values)
+ ingress.Transport = &transportTemp
+ } else {
+ ingress.Transport = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Ingress populates the provided destination Ingress from our Ingress
+func (ingress *Ingress) AssignProperties_To_Ingress(destination *storage.Ingress) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AdditionalPortMappings
+ if ingress.AdditionalPortMappings != nil {
+ additionalPortMappingList := make([]storage.IngressPortMapping, len(ingress.AdditionalPortMappings))
+ for additionalPortMappingIndex, additionalPortMappingItem := range ingress.AdditionalPortMappings {
+ // Shadow the loop variable to avoid aliasing
+ additionalPortMappingItem := additionalPortMappingItem
+ var additionalPortMapping storage.IngressPortMapping
+ err := additionalPortMappingItem.AssignProperties_To_IngressPortMapping(&additionalPortMapping)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_IngressPortMapping() to populate field AdditionalPortMappings")
+ }
+ additionalPortMappingList[additionalPortMappingIndex] = additionalPortMapping
+ }
+ destination.AdditionalPortMappings = additionalPortMappingList
+ } else {
+ destination.AdditionalPortMappings = nil
+ }
+
+ // AllowInsecure
+ if ingress.AllowInsecure != nil {
+ allowInsecure := *ingress.AllowInsecure
+ destination.AllowInsecure = &allowInsecure
+ } else {
+ destination.AllowInsecure = nil
+ }
+
+ // ClientCertificateMode
+ if ingress.ClientCertificateMode != nil {
+ clientCertificateMode := string(*ingress.ClientCertificateMode)
+ destination.ClientCertificateMode = &clientCertificateMode
+ } else {
+ destination.ClientCertificateMode = nil
+ }
+
+ // CorsPolicy
+ if ingress.CorsPolicy != nil {
+ var corsPolicy storage.CorsPolicy
+ err := ingress.CorsPolicy.AssignProperties_To_CorsPolicy(&corsPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CorsPolicy() to populate field CorsPolicy")
+ }
+ destination.CorsPolicy = &corsPolicy
+ } else {
+ destination.CorsPolicy = nil
+ }
+
+ // CustomDomains
+ if ingress.CustomDomains != nil {
+ customDomainList := make([]storage.CustomDomain, len(ingress.CustomDomains))
+ for customDomainIndex, customDomainItem := range ingress.CustomDomains {
+ // Shadow the loop variable to avoid aliasing
+ customDomainItem := customDomainItem
+ var customDomain storage.CustomDomain
+ err := customDomainItem.AssignProperties_To_CustomDomain(&customDomain)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CustomDomain() to populate field CustomDomains")
+ }
+ customDomainList[customDomainIndex] = customDomain
+ }
+ destination.CustomDomains = customDomainList
+ } else {
+ destination.CustomDomains = nil
+ }
+
+ // ExposedPort
+ destination.ExposedPort = genruntime.ClonePointerToInt(ingress.ExposedPort)
+
+ // External
+ if ingress.External != nil {
+ external := *ingress.External
+ destination.External = &external
+ } else {
+ destination.External = nil
+ }
+
+ // IpSecurityRestrictions
+ if ingress.IpSecurityRestrictions != nil {
+ ipSecurityRestrictionList := make([]storage.IpSecurityRestrictionRule, len(ingress.IpSecurityRestrictions))
+ for ipSecurityRestrictionIndex, ipSecurityRestrictionItem := range ingress.IpSecurityRestrictions {
+ // Shadow the loop variable to avoid aliasing
+ ipSecurityRestrictionItem := ipSecurityRestrictionItem
+ var ipSecurityRestriction storage.IpSecurityRestrictionRule
+ err := ipSecurityRestrictionItem.AssignProperties_To_IpSecurityRestrictionRule(&ipSecurityRestriction)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_IpSecurityRestrictionRule() to populate field IpSecurityRestrictions")
+ }
+ ipSecurityRestrictionList[ipSecurityRestrictionIndex] = ipSecurityRestriction
+ }
+ destination.IpSecurityRestrictions = ipSecurityRestrictionList
+ } else {
+ destination.IpSecurityRestrictions = nil
+ }
+
+ // StickySessions
+ if ingress.StickySessions != nil {
+ var stickySession storage.Ingress_StickySessions
+ err := ingress.StickySessions.AssignProperties_To_Ingress_StickySessions(&stickySession)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Ingress_StickySessions() to populate field StickySessions")
+ }
+ destination.StickySessions = &stickySession
+ } else {
+ destination.StickySessions = nil
+ }
+
+ // TargetPort
+ destination.TargetPort = genruntime.ClonePointerToInt(ingress.TargetPort)
+
+ // Traffic
+ if ingress.Traffic != nil {
+ trafficList := make([]storage.TrafficWeight, len(ingress.Traffic))
+ for trafficIndex, trafficItem := range ingress.Traffic {
+ // Shadow the loop variable to avoid aliasing
+ trafficItem := trafficItem
+ var traffic storage.TrafficWeight
+ err := trafficItem.AssignProperties_To_TrafficWeight(&traffic)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_TrafficWeight() to populate field Traffic")
+ }
+ trafficList[trafficIndex] = traffic
+ }
+ destination.Traffic = trafficList
+ } else {
+ destination.Traffic = nil
+ }
+
+ // Transport
+ if ingress.Transport != nil {
+ transport := string(*ingress.Transport)
+ destination.Transport = &transport
+ } else {
+ destination.Transport = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Ingress_STATUS populates our Ingress from the provided source Ingress_STATUS
+func (ingress *Ingress) Initialize_From_Ingress_STATUS(source *Ingress_STATUS) error {
+
+ // AdditionalPortMappings
+ if source.AdditionalPortMappings != nil {
+ additionalPortMappingList := make([]IngressPortMapping, len(source.AdditionalPortMappings))
+ for additionalPortMappingIndex, additionalPortMappingItem := range source.AdditionalPortMappings {
+ // Shadow the loop variable to avoid aliasing
+ additionalPortMappingItem := additionalPortMappingItem
+ var additionalPortMapping IngressPortMapping
+ err := additionalPortMapping.Initialize_From_IngressPortMapping_STATUS(&additionalPortMappingItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_IngressPortMapping_STATUS() to populate field AdditionalPortMappings")
+ }
+ additionalPortMappingList[additionalPortMappingIndex] = additionalPortMapping
+ }
+ ingress.AdditionalPortMappings = additionalPortMappingList
+ } else {
+ ingress.AdditionalPortMappings = nil
+ }
+
+ // AllowInsecure
+ if source.AllowInsecure != nil {
+ allowInsecure := *source.AllowInsecure
+ ingress.AllowInsecure = &allowInsecure
+ } else {
+ ingress.AllowInsecure = nil
+ }
+
+ // ClientCertificateMode
+ if source.ClientCertificateMode != nil {
+ clientCertificateMode := genruntime.ToEnum(string(*source.ClientCertificateMode), ingress_ClientCertificateMode_Values)
+ ingress.ClientCertificateMode = &clientCertificateMode
+ } else {
+ ingress.ClientCertificateMode = nil
+ }
+
+ // CorsPolicy
+ if source.CorsPolicy != nil {
+ var corsPolicy CorsPolicy
+ err := corsPolicy.Initialize_From_CorsPolicy_STATUS(source.CorsPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_CorsPolicy_STATUS() to populate field CorsPolicy")
+ }
+ ingress.CorsPolicy = &corsPolicy
+ } else {
+ ingress.CorsPolicy = nil
+ }
+
+ // CustomDomains
+ if source.CustomDomains != nil {
+ customDomainList := make([]CustomDomain, len(source.CustomDomains))
+ for customDomainIndex, customDomainItem := range source.CustomDomains {
+ // Shadow the loop variable to avoid aliasing
+ customDomainItem := customDomainItem
+ var customDomain CustomDomain
+ err := customDomain.Initialize_From_CustomDomain_STATUS(&customDomainItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_CustomDomain_STATUS() to populate field CustomDomains")
+ }
+ customDomainList[customDomainIndex] = customDomain
+ }
+ ingress.CustomDomains = customDomainList
+ } else {
+ ingress.CustomDomains = nil
+ }
+
+ // ExposedPort
+ ingress.ExposedPort = genruntime.ClonePointerToInt(source.ExposedPort)
+
+ // External
+ if source.External != nil {
+ external := *source.External
+ ingress.External = &external
+ } else {
+ ingress.External = nil
+ }
+
+ // IpSecurityRestrictions
+ if source.IpSecurityRestrictions != nil {
+ ipSecurityRestrictionList := make([]IpSecurityRestrictionRule, len(source.IpSecurityRestrictions))
+ for ipSecurityRestrictionIndex, ipSecurityRestrictionItem := range source.IpSecurityRestrictions {
+ // Shadow the loop variable to avoid aliasing
+ ipSecurityRestrictionItem := ipSecurityRestrictionItem
+ var ipSecurityRestriction IpSecurityRestrictionRule
+ err := ipSecurityRestriction.Initialize_From_IpSecurityRestrictionRule_STATUS(&ipSecurityRestrictionItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_IpSecurityRestrictionRule_STATUS() to populate field IpSecurityRestrictions")
+ }
+ ipSecurityRestrictionList[ipSecurityRestrictionIndex] = ipSecurityRestriction
+ }
+ ingress.IpSecurityRestrictions = ipSecurityRestrictionList
+ } else {
+ ingress.IpSecurityRestrictions = nil
+ }
+
+ // StickySessions
+ if source.StickySessions != nil {
+ var stickySession Ingress_StickySessions
+ err := stickySession.Initialize_From_Ingress_StickySessions_STATUS(source.StickySessions)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Ingress_StickySessions_STATUS() to populate field StickySessions")
+ }
+ ingress.StickySessions = &stickySession
+ } else {
+ ingress.StickySessions = nil
+ }
+
+ // TargetPort
+ ingress.TargetPort = genruntime.ClonePointerToInt(source.TargetPort)
+
+ // Traffic
+ if source.Traffic != nil {
+ trafficList := make([]TrafficWeight, len(source.Traffic))
+ for trafficIndex, trafficItem := range source.Traffic {
+ // Shadow the loop variable to avoid aliasing
+ trafficItem := trafficItem
+ var traffic TrafficWeight
+ err := traffic.Initialize_From_TrafficWeight_STATUS(&trafficItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_TrafficWeight_STATUS() to populate field Traffic")
+ }
+ trafficList[trafficIndex] = traffic
+ }
+ ingress.Traffic = trafficList
+ } else {
+ ingress.Traffic = nil
+ }
+
+ // Transport
+ if source.Transport != nil {
+ transport := genruntime.ToEnum(string(*source.Transport), ingress_Transport_Values)
+ ingress.Transport = &transport
+ } else {
+ ingress.Transport = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App Ingress configuration.
+type Ingress_STATUS struct {
+ // AdditionalPortMappings: Settings to expose additional ports on container app
+ AdditionalPortMappings []IngressPortMapping_STATUS `json:"additionalPortMappings,omitempty"`
+
+ // AllowInsecure: Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically
+ // redirected to HTTPS connections
+ AllowInsecure *bool `json:"allowInsecure,omitempty"`
+
+ // ClientCertificateMode: Client certificate mode for mTLS authentication. Ignore indicates server drops client certificate
+ // on forwarding. Accept indicates server forwards client certificate but does not require a client certificate. Require
+ // indicates server requires a client certificate.
+ ClientCertificateMode *Ingress_ClientCertificateMode_STATUS `json:"clientCertificateMode,omitempty"`
+
+ // CorsPolicy: CORS policy for container app
+ CorsPolicy *CorsPolicy_STATUS `json:"corsPolicy,omitempty"`
+
+ // CustomDomains: custom domain bindings for Container Apps' hostnames.
+ CustomDomains []CustomDomain_STATUS `json:"customDomains,omitempty"`
+
+ // ExposedPort: Exposed Port in containers for TCP traffic from ingress
+ ExposedPort *int `json:"exposedPort,omitempty"`
+
+ // External: Bool indicating if app exposes an external http endpoint
+ External *bool `json:"external,omitempty"`
+
+ // Fqdn: Hostname.
+ Fqdn *string `json:"fqdn,omitempty"`
+
+ // IpSecurityRestrictions: Rules to restrict incoming IP address.
+ IpSecurityRestrictions []IpSecurityRestrictionRule_STATUS `json:"ipSecurityRestrictions,omitempty"`
+
+ // StickySessions: Sticky Sessions for Single Revision Mode
+ StickySessions *Ingress_StickySessions_STATUS `json:"stickySessions,omitempty"`
+
+ // TargetPort: Target Port in containers for traffic from ingress
+ TargetPort *int `json:"targetPort,omitempty"`
+
+ // Traffic: Traffic weights for app's revisions
+ Traffic []TrafficWeight_STATUS `json:"traffic,omitempty"`
+
+ // Transport: Ingress transport protocol
+ Transport *Ingress_Transport_STATUS `json:"transport,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Ingress_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (ingress *Ingress_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Ingress_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (ingress *Ingress_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Ingress_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Ingress_STATUS, got %T", armInput)
+ }
+
+ // Set property "AdditionalPortMappings":
+ for _, item := range typedInput.AdditionalPortMappings {
+ var item1 IngressPortMapping_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ ingress.AdditionalPortMappings = append(ingress.AdditionalPortMappings, item1)
+ }
+
+ // Set property "AllowInsecure":
+ if typedInput.AllowInsecure != nil {
+ allowInsecure := *typedInput.AllowInsecure
+ ingress.AllowInsecure = &allowInsecure
+ }
+
+ // Set property "ClientCertificateMode":
+ if typedInput.ClientCertificateMode != nil {
+ var temp string
+ temp = string(*typedInput.ClientCertificateMode)
+ clientCertificateMode := Ingress_ClientCertificateMode_STATUS(temp)
+ ingress.ClientCertificateMode = &clientCertificateMode
+ }
+
+ // Set property "CorsPolicy":
+ if typedInput.CorsPolicy != nil {
+ var corsPolicy1 CorsPolicy_STATUS
+ err := corsPolicy1.PopulateFromARM(owner, *typedInput.CorsPolicy)
+ if err != nil {
+ return err
+ }
+ corsPolicy := corsPolicy1
+ ingress.CorsPolicy = &corsPolicy
+ }
+
+ // Set property "CustomDomains":
+ for _, item := range typedInput.CustomDomains {
+ var item1 CustomDomain_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ ingress.CustomDomains = append(ingress.CustomDomains, item1)
+ }
+
+ // Set property "ExposedPort":
+ if typedInput.ExposedPort != nil {
+ exposedPort := *typedInput.ExposedPort
+ ingress.ExposedPort = &exposedPort
+ }
+
+ // Set property "External":
+ if typedInput.External != nil {
+ external := *typedInput.External
+ ingress.External = &external
+ }
+
+ // Set property "Fqdn":
+ if typedInput.Fqdn != nil {
+ fqdn := *typedInput.Fqdn
+ ingress.Fqdn = &fqdn
+ }
+
+ // Set property "IpSecurityRestrictions":
+ for _, item := range typedInput.IpSecurityRestrictions {
+ var item1 IpSecurityRestrictionRule_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ ingress.IpSecurityRestrictions = append(ingress.IpSecurityRestrictions, item1)
+ }
+
+ // Set property "StickySessions":
+ if typedInput.StickySessions != nil {
+ var stickySessions1 Ingress_StickySessions_STATUS
+ err := stickySessions1.PopulateFromARM(owner, *typedInput.StickySessions)
+ if err != nil {
+ return err
+ }
+ stickySessions := stickySessions1
+ ingress.StickySessions = &stickySessions
+ }
+
+ // Set property "TargetPort":
+ if typedInput.TargetPort != nil {
+ targetPort := *typedInput.TargetPort
+ ingress.TargetPort = &targetPort
+ }
+
+ // Set property "Traffic":
+ for _, item := range typedInput.Traffic {
+ var item1 TrafficWeight_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ ingress.Traffic = append(ingress.Traffic, item1)
+ }
+
+ // Set property "Transport":
+ if typedInput.Transport != nil {
+ var temp string
+ temp = string(*typedInput.Transport)
+ transport := Ingress_Transport_STATUS(temp)
+ ingress.Transport = &transport
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Ingress_STATUS populates our Ingress_STATUS from the provided source Ingress_STATUS
+func (ingress *Ingress_STATUS) AssignProperties_From_Ingress_STATUS(source *storage.Ingress_STATUS) error {
+
+ // AdditionalPortMappings
+ if source.AdditionalPortMappings != nil {
+ additionalPortMappingList := make([]IngressPortMapping_STATUS, len(source.AdditionalPortMappings))
+ for additionalPortMappingIndex, additionalPortMappingItem := range source.AdditionalPortMappings {
+ // Shadow the loop variable to avoid aliasing
+ additionalPortMappingItem := additionalPortMappingItem
+ var additionalPortMapping IngressPortMapping_STATUS
+ err := additionalPortMapping.AssignProperties_From_IngressPortMapping_STATUS(&additionalPortMappingItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_IngressPortMapping_STATUS() to populate field AdditionalPortMappings")
+ }
+ additionalPortMappingList[additionalPortMappingIndex] = additionalPortMapping
+ }
+ ingress.AdditionalPortMappings = additionalPortMappingList
+ } else {
+ ingress.AdditionalPortMappings = nil
+ }
+
+ // AllowInsecure
+ if source.AllowInsecure != nil {
+ allowInsecure := *source.AllowInsecure
+ ingress.AllowInsecure = &allowInsecure
+ } else {
+ ingress.AllowInsecure = nil
+ }
+
+ // ClientCertificateMode
+ if source.ClientCertificateMode != nil {
+ clientCertificateMode := *source.ClientCertificateMode
+ clientCertificateModeTemp := genruntime.ToEnum(clientCertificateMode, ingress_ClientCertificateMode_STATUS_Values)
+ ingress.ClientCertificateMode = &clientCertificateModeTemp
+ } else {
+ ingress.ClientCertificateMode = nil
+ }
+
+ // CorsPolicy
+ if source.CorsPolicy != nil {
+ var corsPolicy CorsPolicy_STATUS
+ err := corsPolicy.AssignProperties_From_CorsPolicy_STATUS(source.CorsPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CorsPolicy_STATUS() to populate field CorsPolicy")
+ }
+ ingress.CorsPolicy = &corsPolicy
+ } else {
+ ingress.CorsPolicy = nil
+ }
+
+ // CustomDomains
+ if source.CustomDomains != nil {
+ customDomainList := make([]CustomDomain_STATUS, len(source.CustomDomains))
+ for customDomainIndex, customDomainItem := range source.CustomDomains {
+ // Shadow the loop variable to avoid aliasing
+ customDomainItem := customDomainItem
+ var customDomain CustomDomain_STATUS
+ err := customDomain.AssignProperties_From_CustomDomain_STATUS(&customDomainItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CustomDomain_STATUS() to populate field CustomDomains")
+ }
+ customDomainList[customDomainIndex] = customDomain
+ }
+ ingress.CustomDomains = customDomainList
+ } else {
+ ingress.CustomDomains = nil
+ }
+
+ // ExposedPort
+ ingress.ExposedPort = genruntime.ClonePointerToInt(source.ExposedPort)
+
+ // External
+ if source.External != nil {
+ external := *source.External
+ ingress.External = &external
+ } else {
+ ingress.External = nil
+ }
+
+ // Fqdn
+ ingress.Fqdn = genruntime.ClonePointerToString(source.Fqdn)
+
+ // IpSecurityRestrictions
+ if source.IpSecurityRestrictions != nil {
+ ipSecurityRestrictionList := make([]IpSecurityRestrictionRule_STATUS, len(source.IpSecurityRestrictions))
+ for ipSecurityRestrictionIndex, ipSecurityRestrictionItem := range source.IpSecurityRestrictions {
+ // Shadow the loop variable to avoid aliasing
+ ipSecurityRestrictionItem := ipSecurityRestrictionItem
+ var ipSecurityRestriction IpSecurityRestrictionRule_STATUS
+ err := ipSecurityRestriction.AssignProperties_From_IpSecurityRestrictionRule_STATUS(&ipSecurityRestrictionItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_IpSecurityRestrictionRule_STATUS() to populate field IpSecurityRestrictions")
+ }
+ ipSecurityRestrictionList[ipSecurityRestrictionIndex] = ipSecurityRestriction
+ }
+ ingress.IpSecurityRestrictions = ipSecurityRestrictionList
+ } else {
+ ingress.IpSecurityRestrictions = nil
+ }
+
+ // StickySessions
+ if source.StickySessions != nil {
+ var stickySession Ingress_StickySessions_STATUS
+ err := stickySession.AssignProperties_From_Ingress_StickySessions_STATUS(source.StickySessions)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Ingress_StickySessions_STATUS() to populate field StickySessions")
+ }
+ ingress.StickySessions = &stickySession
+ } else {
+ ingress.StickySessions = nil
+ }
+
+ // TargetPort
+ ingress.TargetPort = genruntime.ClonePointerToInt(source.TargetPort)
+
+ // Traffic
+ if source.Traffic != nil {
+ trafficList := make([]TrafficWeight_STATUS, len(source.Traffic))
+ for trafficIndex, trafficItem := range source.Traffic {
+ // Shadow the loop variable to avoid aliasing
+ trafficItem := trafficItem
+ var traffic TrafficWeight_STATUS
+ err := traffic.AssignProperties_From_TrafficWeight_STATUS(&trafficItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_TrafficWeight_STATUS() to populate field Traffic")
+ }
+ trafficList[trafficIndex] = traffic
+ }
+ ingress.Traffic = trafficList
+ } else {
+ ingress.Traffic = nil
+ }
+
+ // Transport
+ if source.Transport != nil {
+ transport := *source.Transport
+ transportTemp := genruntime.ToEnum(transport, ingress_Transport_STATUS_Values)
+ ingress.Transport = &transportTemp
+ } else {
+ ingress.Transport = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Ingress_STATUS populates the provided destination Ingress_STATUS from our Ingress_STATUS
+func (ingress *Ingress_STATUS) AssignProperties_To_Ingress_STATUS(destination *storage.Ingress_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AdditionalPortMappings
+ if ingress.AdditionalPortMappings != nil {
+ additionalPortMappingList := make([]storage.IngressPortMapping_STATUS, len(ingress.AdditionalPortMappings))
+ for additionalPortMappingIndex, additionalPortMappingItem := range ingress.AdditionalPortMappings {
+ // Shadow the loop variable to avoid aliasing
+ additionalPortMappingItem := additionalPortMappingItem
+ var additionalPortMapping storage.IngressPortMapping_STATUS
+ err := additionalPortMappingItem.AssignProperties_To_IngressPortMapping_STATUS(&additionalPortMapping)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_IngressPortMapping_STATUS() to populate field AdditionalPortMappings")
+ }
+ additionalPortMappingList[additionalPortMappingIndex] = additionalPortMapping
+ }
+ destination.AdditionalPortMappings = additionalPortMappingList
+ } else {
+ destination.AdditionalPortMappings = nil
+ }
+
+ // AllowInsecure
+ if ingress.AllowInsecure != nil {
+ allowInsecure := *ingress.AllowInsecure
+ destination.AllowInsecure = &allowInsecure
+ } else {
+ destination.AllowInsecure = nil
+ }
+
+ // ClientCertificateMode
+ if ingress.ClientCertificateMode != nil {
+ clientCertificateMode := string(*ingress.ClientCertificateMode)
+ destination.ClientCertificateMode = &clientCertificateMode
+ } else {
+ destination.ClientCertificateMode = nil
+ }
+
+ // CorsPolicy
+ if ingress.CorsPolicy != nil {
+ var corsPolicy storage.CorsPolicy_STATUS
+ err := ingress.CorsPolicy.AssignProperties_To_CorsPolicy_STATUS(&corsPolicy)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CorsPolicy_STATUS() to populate field CorsPolicy")
+ }
+ destination.CorsPolicy = &corsPolicy
+ } else {
+ destination.CorsPolicy = nil
+ }
+
+ // CustomDomains
+ if ingress.CustomDomains != nil {
+ customDomainList := make([]storage.CustomDomain_STATUS, len(ingress.CustomDomains))
+ for customDomainIndex, customDomainItem := range ingress.CustomDomains {
+ // Shadow the loop variable to avoid aliasing
+ customDomainItem := customDomainItem
+ var customDomain storage.CustomDomain_STATUS
+ err := customDomainItem.AssignProperties_To_CustomDomain_STATUS(&customDomain)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CustomDomain_STATUS() to populate field CustomDomains")
+ }
+ customDomainList[customDomainIndex] = customDomain
+ }
+ destination.CustomDomains = customDomainList
+ } else {
+ destination.CustomDomains = nil
+ }
+
+ // ExposedPort
+ destination.ExposedPort = genruntime.ClonePointerToInt(ingress.ExposedPort)
+
+ // External
+ if ingress.External != nil {
+ external := *ingress.External
+ destination.External = &external
+ } else {
+ destination.External = nil
+ }
+
+ // Fqdn
+ destination.Fqdn = genruntime.ClonePointerToString(ingress.Fqdn)
+
+ // IpSecurityRestrictions
+ if ingress.IpSecurityRestrictions != nil {
+ ipSecurityRestrictionList := make([]storage.IpSecurityRestrictionRule_STATUS, len(ingress.IpSecurityRestrictions))
+ for ipSecurityRestrictionIndex, ipSecurityRestrictionItem := range ingress.IpSecurityRestrictions {
+ // Shadow the loop variable to avoid aliasing
+ ipSecurityRestrictionItem := ipSecurityRestrictionItem
+ var ipSecurityRestriction storage.IpSecurityRestrictionRule_STATUS
+ err := ipSecurityRestrictionItem.AssignProperties_To_IpSecurityRestrictionRule_STATUS(&ipSecurityRestriction)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_IpSecurityRestrictionRule_STATUS() to populate field IpSecurityRestrictions")
+ }
+ ipSecurityRestrictionList[ipSecurityRestrictionIndex] = ipSecurityRestriction
+ }
+ destination.IpSecurityRestrictions = ipSecurityRestrictionList
+ } else {
+ destination.IpSecurityRestrictions = nil
+ }
+
+ // StickySessions
+ if ingress.StickySessions != nil {
+ var stickySession storage.Ingress_StickySessions_STATUS
+ err := ingress.StickySessions.AssignProperties_To_Ingress_StickySessions_STATUS(&stickySession)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Ingress_StickySessions_STATUS() to populate field StickySessions")
+ }
+ destination.StickySessions = &stickySession
+ } else {
+ destination.StickySessions = nil
+ }
+
+ // TargetPort
+ destination.TargetPort = genruntime.ClonePointerToInt(ingress.TargetPort)
+
+ // Traffic
+ if ingress.Traffic != nil {
+ trafficList := make([]storage.TrafficWeight_STATUS, len(ingress.Traffic))
+ for trafficIndex, trafficItem := range ingress.Traffic {
+ // Shadow the loop variable to avoid aliasing
+ trafficItem := trafficItem
+ var traffic storage.TrafficWeight_STATUS
+ err := trafficItem.AssignProperties_To_TrafficWeight_STATUS(&traffic)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_TrafficWeight_STATUS() to populate field Traffic")
+ }
+ trafficList[trafficIndex] = traffic
+ }
+ destination.Traffic = trafficList
+ } else {
+ destination.Traffic = nil
+ }
+
+ // Transport
+ if ingress.Transport != nil {
+ transport := string(*ingress.Transport)
+ destination.Transport = &transport
+ } else {
+ destination.Transport = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
+// +kubebuilder:validation:Enum={"None","SystemAssigned","SystemAssigned,UserAssigned","UserAssigned"}
+type ManagedServiceIdentityType string
+
+const (
+ ManagedServiceIdentityType_None = ManagedServiceIdentityType("None")
+ ManagedServiceIdentityType_SystemAssigned = ManagedServiceIdentityType("SystemAssigned")
+ ManagedServiceIdentityType_SystemAssignedUserAssigned = ManagedServiceIdentityType("SystemAssigned,UserAssigned")
+ ManagedServiceIdentityType_UserAssigned = ManagedServiceIdentityType("UserAssigned")
+)
+
+// Mapping from string to ManagedServiceIdentityType
+var managedServiceIdentityType_Values = map[string]ManagedServiceIdentityType{
+ "none": ManagedServiceIdentityType_None,
+ "systemassigned": ManagedServiceIdentityType_SystemAssigned,
+ "systemassigned,userassigned": ManagedServiceIdentityType_SystemAssignedUserAssigned,
+ "userassigned": ManagedServiceIdentityType_UserAssigned,
+}
+
+// Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
+type ManagedServiceIdentityType_STATUS string
+
+const (
+ ManagedServiceIdentityType_STATUS_None = ManagedServiceIdentityType_STATUS("None")
+ ManagedServiceIdentityType_STATUS_SystemAssigned = ManagedServiceIdentityType_STATUS("SystemAssigned")
+ ManagedServiceIdentityType_STATUS_SystemAssignedUserAssigned = ManagedServiceIdentityType_STATUS("SystemAssigned,UserAssigned")
+ ManagedServiceIdentityType_STATUS_UserAssigned = ManagedServiceIdentityType_STATUS("UserAssigned")
+)
+
+// Mapping from string to ManagedServiceIdentityType_STATUS
+var managedServiceIdentityType_STATUS_Values = map[string]ManagedServiceIdentityType_STATUS{
+ "none": ManagedServiceIdentityType_STATUS_None,
+ "systemassigned": ManagedServiceIdentityType_STATUS_SystemAssigned,
+ "systemassigned,userassigned": ManagedServiceIdentityType_STATUS_SystemAssignedUserAssigned,
+ "userassigned": ManagedServiceIdentityType_STATUS_UserAssigned,
+}
+
+// Container App Private Registry
+type RegistryCredentials struct {
+ // IdentityReference: A Managed Identity to use to authenticate with Azure Container Registry. For user-assigned
+ // identities, use the full user-assigned identity Resource ID. For system-assigned identities, use 'system'
+ IdentityReference *genruntime.ResourceReference `armReference:"Identity" json:"identityReference,omitempty"`
+
+ // PasswordSecretRef: The name of the Secret that contains the registry login password
+ PasswordSecretRef *string `json:"passwordSecretRef,omitempty"`
+
+ // Server: Container Registry Server
+ Server *string `json:"server,omitempty"`
+
+ // Username: Container Registry Username
+ Username *string `json:"username,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &RegistryCredentials{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (credentials *RegistryCredentials) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if credentials == nil {
+ return nil, nil
+ }
+ result := &arm.RegistryCredentials{}
+
+ // Set property "Identity":
+ if credentials.IdentityReference != nil {
+ identityReferenceARMID, err := resolved.ResolvedReferences.Lookup(*credentials.IdentityReference)
+ if err != nil {
+ return nil, err
+ }
+ identityReference := identityReferenceARMID
+ result.Identity = &identityReference
+ }
+
+ // Set property "PasswordSecretRef":
+ if credentials.PasswordSecretRef != nil {
+ passwordSecretRef := *credentials.PasswordSecretRef
+ result.PasswordSecretRef = &passwordSecretRef
+ }
+
+ // Set property "Server":
+ if credentials.Server != nil {
+ server := *credentials.Server
+ result.Server = &server
+ }
+
+ // Set property "Username":
+ if credentials.Username != nil {
+ username := *credentials.Username
+ result.Username = &username
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (credentials *RegistryCredentials) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.RegistryCredentials{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (credentials *RegistryCredentials) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.RegistryCredentials)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.RegistryCredentials, got %T", armInput)
+ }
+
+ // no assignment for property "IdentityReference"
+
+ // Set property "PasswordSecretRef":
+ if typedInput.PasswordSecretRef != nil {
+ passwordSecretRef := *typedInput.PasswordSecretRef
+ credentials.PasswordSecretRef = &passwordSecretRef
+ }
+
+ // Set property "Server":
+ if typedInput.Server != nil {
+ server := *typedInput.Server
+ credentials.Server = &server
+ }
+
+ // Set property "Username":
+ if typedInput.Username != nil {
+ username := *typedInput.Username
+ credentials.Username = &username
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_RegistryCredentials populates our RegistryCredentials from the provided source RegistryCredentials
+func (credentials *RegistryCredentials) AssignProperties_From_RegistryCredentials(source *storage.RegistryCredentials) error {
+
+ // IdentityReference
+ if source.IdentityReference != nil {
+ identityReference := source.IdentityReference.Copy()
+ credentials.IdentityReference = &identityReference
+ } else {
+ credentials.IdentityReference = nil
+ }
+
+ // PasswordSecretRef
+ credentials.PasswordSecretRef = genruntime.ClonePointerToString(source.PasswordSecretRef)
+
+ // Server
+ credentials.Server = genruntime.ClonePointerToString(source.Server)
+
+ // Username
+ credentials.Username = genruntime.ClonePointerToString(source.Username)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_RegistryCredentials populates the provided destination RegistryCredentials from our RegistryCredentials
+func (credentials *RegistryCredentials) AssignProperties_To_RegistryCredentials(destination *storage.RegistryCredentials) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // IdentityReference
+ if credentials.IdentityReference != nil {
+ identityReference := credentials.IdentityReference.Copy()
+ destination.IdentityReference = &identityReference
+ } else {
+ destination.IdentityReference = nil
+ }
+
+ // PasswordSecretRef
+ destination.PasswordSecretRef = genruntime.ClonePointerToString(credentials.PasswordSecretRef)
+
+ // Server
+ destination.Server = genruntime.ClonePointerToString(credentials.Server)
+
+ // Username
+ destination.Username = genruntime.ClonePointerToString(credentials.Username)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_RegistryCredentials_STATUS populates our RegistryCredentials from the provided source RegistryCredentials_STATUS
+func (credentials *RegistryCredentials) Initialize_From_RegistryCredentials_STATUS(source *RegistryCredentials_STATUS) error {
+
+ // PasswordSecretRef
+ credentials.PasswordSecretRef = genruntime.ClonePointerToString(source.PasswordSecretRef)
+
+ // Server
+ credentials.Server = genruntime.ClonePointerToString(source.Server)
+
+ // Username
+ credentials.Username = genruntime.ClonePointerToString(source.Username)
+
+ // No error
+ return nil
+}
+
+// Container App Private Registry
+type RegistryCredentials_STATUS struct {
+ // Identity: A Managed Identity to use to authenticate with Azure Container Registry. For user-assigned identities, use the
+ // full user-assigned identity Resource ID. For system-assigned identities, use 'system'
+ Identity *string `json:"identity,omitempty"`
+
+ // PasswordSecretRef: The name of the Secret that contains the registry login password
+ PasswordSecretRef *string `json:"passwordSecretRef,omitempty"`
+
+ // Server: Container Registry Server
+ Server *string `json:"server,omitempty"`
+
+ // Username: Container Registry Username
+ Username *string `json:"username,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &RegistryCredentials_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (credentials *RegistryCredentials_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.RegistryCredentials_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (credentials *RegistryCredentials_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.RegistryCredentials_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.RegistryCredentials_STATUS, got %T", armInput)
+ }
+
+ // Set property "Identity":
+ if typedInput.Identity != nil {
+ identity := *typedInput.Identity
+ credentials.Identity = &identity
+ }
+
+ // Set property "PasswordSecretRef":
+ if typedInput.PasswordSecretRef != nil {
+ passwordSecretRef := *typedInput.PasswordSecretRef
+ credentials.PasswordSecretRef = &passwordSecretRef
+ }
+
+ // Set property "Server":
+ if typedInput.Server != nil {
+ server := *typedInput.Server
+ credentials.Server = &server
+ }
+
+ // Set property "Username":
+ if typedInput.Username != nil {
+ username := *typedInput.Username
+ credentials.Username = &username
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_RegistryCredentials_STATUS populates our RegistryCredentials_STATUS from the provided source RegistryCredentials_STATUS
+func (credentials *RegistryCredentials_STATUS) AssignProperties_From_RegistryCredentials_STATUS(source *storage.RegistryCredentials_STATUS) error {
+
+ // Identity
+ credentials.Identity = genruntime.ClonePointerToString(source.Identity)
+
+ // PasswordSecretRef
+ credentials.PasswordSecretRef = genruntime.ClonePointerToString(source.PasswordSecretRef)
+
+ // Server
+ credentials.Server = genruntime.ClonePointerToString(source.Server)
+
+ // Username
+ credentials.Username = genruntime.ClonePointerToString(source.Username)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_RegistryCredentials_STATUS populates the provided destination RegistryCredentials_STATUS from our RegistryCredentials_STATUS
+func (credentials *RegistryCredentials_STATUS) AssignProperties_To_RegistryCredentials_STATUS(destination *storage.RegistryCredentials_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Identity
+ destination.Identity = genruntime.ClonePointerToString(credentials.Identity)
+
+ // PasswordSecretRef
+ destination.PasswordSecretRef = genruntime.ClonePointerToString(credentials.PasswordSecretRef)
+
+ // Server
+ destination.Server = genruntime.ClonePointerToString(credentials.Server)
+
+ // Username
+ destination.Username = genruntime.ClonePointerToString(credentials.Username)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App scaling configurations.
+type Scale struct {
+ // MaxReplicas: Optional. Maximum number of container replicas. Defaults to 10 if not set.
+ MaxReplicas *int `json:"maxReplicas,omitempty"`
+
+ // MinReplicas: Optional. Minimum number of container replicas.
+ MinReplicas *int `json:"minReplicas,omitempty"`
+
+ // Rules: Scaling rules.
+ Rules []ScaleRule `json:"rules,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Scale{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (scale *Scale) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if scale == nil {
+ return nil, nil
+ }
+ result := &arm.Scale{}
+
+ // Set property "MaxReplicas":
+ if scale.MaxReplicas != nil {
+ maxReplicas := *scale.MaxReplicas
+ result.MaxReplicas = &maxReplicas
+ }
+
+ // Set property "MinReplicas":
+ if scale.MinReplicas != nil {
+ minReplicas := *scale.MinReplicas
+ result.MinReplicas = &minReplicas
+ }
+
+ // Set property "Rules":
+ for _, item := range scale.Rules {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Rules = append(result.Rules, *item_ARM.(*arm.ScaleRule))
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (scale *Scale) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Scale{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (scale *Scale) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Scale)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Scale, got %T", armInput)
+ }
+
+ // Set property "MaxReplicas":
+ if typedInput.MaxReplicas != nil {
+ maxReplicas := *typedInput.MaxReplicas
+ scale.MaxReplicas = &maxReplicas
+ }
+
+ // Set property "MinReplicas":
+ if typedInput.MinReplicas != nil {
+ minReplicas := *typedInput.MinReplicas
+ scale.MinReplicas = &minReplicas
+ }
+
+ // Set property "Rules":
+ for _, item := range typedInput.Rules {
+ var item1 ScaleRule
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ scale.Rules = append(scale.Rules, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Scale populates our Scale from the provided source Scale
+func (scale *Scale) AssignProperties_From_Scale(source *storage.Scale) error {
+
+ // MaxReplicas
+ scale.MaxReplicas = genruntime.ClonePointerToInt(source.MaxReplicas)
+
+ // MinReplicas
+ scale.MinReplicas = genruntime.ClonePointerToInt(source.MinReplicas)
+
+ // Rules
+ if source.Rules != nil {
+ ruleList := make([]ScaleRule, len(source.Rules))
+ for ruleIndex, ruleItem := range source.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule ScaleRule
+ err := rule.AssignProperties_From_ScaleRule(&ruleItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRule() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ scale.Rules = ruleList
+ } else {
+ scale.Rules = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Scale populates the provided destination Scale from our Scale
+func (scale *Scale) AssignProperties_To_Scale(destination *storage.Scale) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MaxReplicas
+ destination.MaxReplicas = genruntime.ClonePointerToInt(scale.MaxReplicas)
+
+ // MinReplicas
+ destination.MinReplicas = genruntime.ClonePointerToInt(scale.MinReplicas)
+
+ // Rules
+ if scale.Rules != nil {
+ ruleList := make([]storage.ScaleRule, len(scale.Rules))
+ for ruleIndex, ruleItem := range scale.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule storage.ScaleRule
+ err := ruleItem.AssignProperties_To_ScaleRule(&rule)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRule() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ destination.Rules = ruleList
+ } else {
+ destination.Rules = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Scale_STATUS populates our Scale from the provided source Scale_STATUS
+func (scale *Scale) Initialize_From_Scale_STATUS(source *Scale_STATUS) error {
+
+ // MaxReplicas
+ scale.MaxReplicas = genruntime.ClonePointerToInt(source.MaxReplicas)
+
+ // MinReplicas
+ scale.MinReplicas = genruntime.ClonePointerToInt(source.MinReplicas)
+
+ // Rules
+ if source.Rules != nil {
+ ruleList := make([]ScaleRule, len(source.Rules))
+ for ruleIndex, ruleItem := range source.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule ScaleRule
+ err := rule.Initialize_From_ScaleRule_STATUS(&ruleItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ScaleRule_STATUS() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ scale.Rules = ruleList
+ } else {
+ scale.Rules = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App scaling configurations.
+type Scale_STATUS struct {
+ // MaxReplicas: Optional. Maximum number of container replicas. Defaults to 10 if not set.
+ MaxReplicas *int `json:"maxReplicas,omitempty"`
+
+ // MinReplicas: Optional. Minimum number of container replicas.
+ MinReplicas *int `json:"minReplicas,omitempty"`
+
+ // Rules: Scaling rules.
+ Rules []ScaleRule_STATUS `json:"rules,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Scale_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (scale *Scale_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Scale_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (scale *Scale_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Scale_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Scale_STATUS, got %T", armInput)
+ }
+
+ // Set property "MaxReplicas":
+ if typedInput.MaxReplicas != nil {
+ maxReplicas := *typedInput.MaxReplicas
+ scale.MaxReplicas = &maxReplicas
+ }
+
+ // Set property "MinReplicas":
+ if typedInput.MinReplicas != nil {
+ minReplicas := *typedInput.MinReplicas
+ scale.MinReplicas = &minReplicas
+ }
+
+ // Set property "Rules":
+ for _, item := range typedInput.Rules {
+ var item1 ScaleRule_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ scale.Rules = append(scale.Rules, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Scale_STATUS populates our Scale_STATUS from the provided source Scale_STATUS
+func (scale *Scale_STATUS) AssignProperties_From_Scale_STATUS(source *storage.Scale_STATUS) error {
+
+ // MaxReplicas
+ scale.MaxReplicas = genruntime.ClonePointerToInt(source.MaxReplicas)
+
+ // MinReplicas
+ scale.MinReplicas = genruntime.ClonePointerToInt(source.MinReplicas)
+
+ // Rules
+ if source.Rules != nil {
+ ruleList := make([]ScaleRule_STATUS, len(source.Rules))
+ for ruleIndex, ruleItem := range source.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule ScaleRule_STATUS
+ err := rule.AssignProperties_From_ScaleRule_STATUS(&ruleItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRule_STATUS() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ scale.Rules = ruleList
+ } else {
+ scale.Rules = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Scale_STATUS populates the provided destination Scale_STATUS from our Scale_STATUS
+func (scale *Scale_STATUS) AssignProperties_To_Scale_STATUS(destination *storage.Scale_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MaxReplicas
+ destination.MaxReplicas = genruntime.ClonePointerToInt(scale.MaxReplicas)
+
+ // MinReplicas
+ destination.MinReplicas = genruntime.ClonePointerToInt(scale.MinReplicas)
+
+ // Rules
+ if scale.Rules != nil {
+ ruleList := make([]storage.ScaleRule_STATUS, len(scale.Rules))
+ for ruleIndex, ruleItem := range scale.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule storage.ScaleRule_STATUS
+ err := ruleItem.AssignProperties_To_ScaleRule_STATUS(&rule)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRule_STATUS() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ destination.Rules = ruleList
+ } else {
+ destination.Rules = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Secret definition.
+type Secret struct {
+ // IdentityReference: Resource ID of a managed identity to authenticate with Azure Key Vault, or System to use a
+ // system-assigned identity.
+ IdentityReference *genruntime.ResourceReference `armReference:"Identity" json:"identityReference,omitempty"`
+
+ // KeyVaultUrl: Azure Key Vault URL pointing to the secret referenced by the container app.
+ KeyVaultUrl *string `json:"keyVaultUrl,omitempty"`
+
+ // Name: Secret Name.
+ Name *string `json:"name,omitempty"`
+
+ // Value: Secret Value.
+ Value *genruntime.SecretReference `json:"value,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Secret{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (secret *Secret) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if secret == nil {
+ return nil, nil
+ }
+ result := &arm.Secret{}
+
+ // Set property "Identity":
+ if secret.IdentityReference != nil {
+ identityReferenceARMID, err := resolved.ResolvedReferences.Lookup(*secret.IdentityReference)
+ if err != nil {
+ return nil, err
+ }
+ identityReference := identityReferenceARMID
+ result.Identity = &identityReference
+ }
+
+ // Set property "KeyVaultUrl":
+ if secret.KeyVaultUrl != nil {
+ keyVaultUrl := *secret.KeyVaultUrl
+ result.KeyVaultUrl = &keyVaultUrl
+ }
+
+ // Set property "Name":
+ if secret.Name != nil {
+ name := *secret.Name
+ result.Name = &name
+ }
+
+ // Set property "Value":
+ if secret.Value != nil {
+ valueSecret, err := resolved.ResolvedSecrets.Lookup(*secret.Value)
+ if err != nil {
+ return nil, eris.Wrap(err, "looking up secret for property Value")
+ }
+ value := valueSecret
+ result.Value = &value
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (secret *Secret) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Secret{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (secret *Secret) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Secret)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Secret, got %T", armInput)
+ }
+
+ // no assignment for property "IdentityReference"
+
+ // Set property "KeyVaultUrl":
+ if typedInput.KeyVaultUrl != nil {
+ keyVaultUrl := *typedInput.KeyVaultUrl
+ secret.KeyVaultUrl = &keyVaultUrl
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ secret.Name = &name
+ }
+
+ // no assignment for property "Value"
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Secret populates our Secret from the provided source Secret
+func (secret *Secret) AssignProperties_From_Secret(source *storage.Secret) error {
+
+ // IdentityReference
+ if source.IdentityReference != nil {
+ identityReference := source.IdentityReference.Copy()
+ secret.IdentityReference = &identityReference
+ } else {
+ secret.IdentityReference = nil
+ }
+
+ // KeyVaultUrl
+ secret.KeyVaultUrl = genruntime.ClonePointerToString(source.KeyVaultUrl)
+
+ // Name
+ secret.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Value
+ if source.Value != nil {
+ value := source.Value.Copy()
+ secret.Value = &value
+ } else {
+ secret.Value = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Secret populates the provided destination Secret from our Secret
+func (secret *Secret) AssignProperties_To_Secret(destination *storage.Secret) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // IdentityReference
+ if secret.IdentityReference != nil {
+ identityReference := secret.IdentityReference.Copy()
+ destination.IdentityReference = &identityReference
+ } else {
+ destination.IdentityReference = nil
+ }
+
+ // KeyVaultUrl
+ destination.KeyVaultUrl = genruntime.ClonePointerToString(secret.KeyVaultUrl)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(secret.Name)
+
+ // Value
+ if secret.Value != nil {
+ value := secret.Value.Copy()
+ destination.Value = &value
+ } else {
+ destination.Value = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Secret_STATUS populates our Secret from the provided source Secret_STATUS
+func (secret *Secret) Initialize_From_Secret_STATUS(source *Secret_STATUS) error {
+
+ // KeyVaultUrl
+ secret.KeyVaultUrl = genruntime.ClonePointerToString(source.KeyVaultUrl)
+
+ // Name
+ secret.Name = genruntime.ClonePointerToString(source.Name)
+
+ // No error
+ return nil
+}
+
+// Secret definition.
+type Secret_STATUS struct {
+ // Identity: Resource ID of a managed identity to authenticate with Azure Key Vault, or System to use a system-assigned
+ // identity.
+ Identity *string `json:"identity,omitempty"`
+
+ // KeyVaultUrl: Azure Key Vault URL pointing to the secret referenced by the container app.
+ KeyVaultUrl *string `json:"keyVaultUrl,omitempty"`
+
+ // Name: Secret Name.
+ Name *string `json:"name,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Secret_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (secret *Secret_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Secret_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (secret *Secret_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Secret_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Secret_STATUS, got %T", armInput)
+ }
+
+ // Set property "Identity":
+ if typedInput.Identity != nil {
+ identity := *typedInput.Identity
+ secret.Identity = &identity
+ }
+
+ // Set property "KeyVaultUrl":
+ if typedInput.KeyVaultUrl != nil {
+ keyVaultUrl := *typedInput.KeyVaultUrl
+ secret.KeyVaultUrl = &keyVaultUrl
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ secret.Name = &name
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Secret_STATUS populates our Secret_STATUS from the provided source Secret_STATUS
+func (secret *Secret_STATUS) AssignProperties_From_Secret_STATUS(source *storage.Secret_STATUS) error {
+
+ // Identity
+ secret.Identity = genruntime.ClonePointerToString(source.Identity)
+
+ // KeyVaultUrl
+ secret.KeyVaultUrl = genruntime.ClonePointerToString(source.KeyVaultUrl)
+
+ // Name
+ secret.Name = genruntime.ClonePointerToString(source.Name)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Secret_STATUS populates the provided destination Secret_STATUS from our Secret_STATUS
+func (secret *Secret_STATUS) AssignProperties_To_Secret_STATUS(destination *storage.Secret_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Identity
+ destination.Identity = genruntime.ClonePointerToString(secret.Identity)
+
+ // KeyVaultUrl
+ destination.KeyVaultUrl = genruntime.ClonePointerToString(secret.KeyVaultUrl)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(secret.Name)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App to be a dev service
+type Service struct {
+ // +kubebuilder:validation:Required
+ // Type: Dev ContainerApp service type
+ Type *string `json:"type,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Service{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (service *Service) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if service == nil {
+ return nil, nil
+ }
+ result := &arm.Service{}
+
+ // Set property "Type":
+ if service.Type != nil {
+ typeVar := *service.Type
+ result.Type = &typeVar
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (service *Service) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Service{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (service *Service) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Service)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Service, got %T", armInput)
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ service.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Service populates our Service from the provided source Service
+func (service *Service) AssignProperties_From_Service(source *storage.Service) error {
+
+ // Type
+ service.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Service populates the provided destination Service from our Service
+func (service *Service) AssignProperties_To_Service(destination *storage.Service) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(service.Type)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Service_STATUS populates our Service from the provided source Service_STATUS
+func (service *Service) Initialize_From_Service_STATUS(source *Service_STATUS) error {
+
+ // Type
+ service.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// Container App to be a dev service
+type Service_STATUS struct {
+ // Type: Dev ContainerApp service type
+ Type *string `json:"type,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Service_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (service *Service_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Service_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (service *Service_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Service_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Service_STATUS, got %T", armInput)
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ service.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Service_STATUS populates our Service_STATUS from the provided source Service_STATUS
+func (service *Service_STATUS) AssignProperties_From_Service_STATUS(source *storage.Service_STATUS) error {
+
+ // Type
+ service.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Service_STATUS populates the provided destination Service_STATUS from our Service_STATUS
+func (service *Service_STATUS) AssignProperties_To_Service_STATUS(destination *storage.Service_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(service.Type)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration to bind a ContainerApp to a dev ContainerApp Service
+type ServiceBind struct {
+ // Name: Name of the service bind
+ Name *string `json:"name,omitempty"`
+
+ // ServiceReference: Resource id of the target service
+ ServiceReference *genruntime.ResourceReference `armReference:"ServiceId" json:"serviceReference,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ServiceBind{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (bind *ServiceBind) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if bind == nil {
+ return nil, nil
+ }
+ result := &arm.ServiceBind{}
+
+ // Set property "Name":
+ if bind.Name != nil {
+ name := *bind.Name
+ result.Name = &name
+ }
+
+ // Set property "ServiceId":
+ if bind.ServiceReference != nil {
+ serviceReferenceARMID, err := resolved.ResolvedReferences.Lookup(*bind.ServiceReference)
+ if err != nil {
+ return nil, err
+ }
+ serviceReference := serviceReferenceARMID
+ result.ServiceId = &serviceReference
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (bind *ServiceBind) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ServiceBind{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (bind *ServiceBind) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ServiceBind)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ServiceBind, got %T", armInput)
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ bind.Name = &name
+ }
+
+ // no assignment for property "ServiceReference"
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ServiceBind populates our ServiceBind from the provided source ServiceBind
+func (bind *ServiceBind) AssignProperties_From_ServiceBind(source *storage.ServiceBind) error {
+
+ // Name
+ bind.Name = genruntime.ClonePointerToString(source.Name)
+
+ // ServiceReference
+ if source.ServiceReference != nil {
+ serviceReference := source.ServiceReference.Copy()
+ bind.ServiceReference = &serviceReference
+ } else {
+ bind.ServiceReference = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ServiceBind populates the provided destination ServiceBind from our ServiceBind
+func (bind *ServiceBind) AssignProperties_To_ServiceBind(destination *storage.ServiceBind) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(bind.Name)
+
+ // ServiceReference
+ if bind.ServiceReference != nil {
+ serviceReference := bind.ServiceReference.Copy()
+ destination.ServiceReference = &serviceReference
+ } else {
+ destination.ServiceReference = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ServiceBind_STATUS populates our ServiceBind from the provided source ServiceBind_STATUS
+func (bind *ServiceBind) Initialize_From_ServiceBind_STATUS(source *ServiceBind_STATUS) error {
+
+ // Name
+ bind.Name = genruntime.ClonePointerToString(source.Name)
+
+ // ServiceReference
+ if source.ServiceId != nil {
+ serviceReference := genruntime.CreateResourceReferenceFromARMID(*source.ServiceId)
+ bind.ServiceReference = &serviceReference
+ } else {
+ bind.ServiceReference = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration to bind a ContainerApp to a dev ContainerApp Service
+type ServiceBind_STATUS struct {
+ // Name: Name of the service bind
+ Name *string `json:"name,omitempty"`
+
+ // ServiceId: Resource id of the target service
+ ServiceId *string `json:"serviceId,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ServiceBind_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (bind *ServiceBind_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ServiceBind_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (bind *ServiceBind_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ServiceBind_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ServiceBind_STATUS, got %T", armInput)
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ bind.Name = &name
+ }
+
+ // Set property "ServiceId":
+ if typedInput.ServiceId != nil {
+ serviceId := *typedInput.ServiceId
+ bind.ServiceId = &serviceId
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ServiceBind_STATUS populates our ServiceBind_STATUS from the provided source ServiceBind_STATUS
+func (bind *ServiceBind_STATUS) AssignProperties_From_ServiceBind_STATUS(source *storage.ServiceBind_STATUS) error {
+
+ // Name
+ bind.Name = genruntime.ClonePointerToString(source.Name)
+
+ // ServiceId
+ bind.ServiceId = genruntime.ClonePointerToString(source.ServiceId)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ServiceBind_STATUS populates the provided destination ServiceBind_STATUS from our ServiceBind_STATUS
+func (bind *ServiceBind_STATUS) AssignProperties_To_ServiceBind_STATUS(destination *storage.ServiceBind_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(bind.Name)
+
+ // ServiceId
+ destination.ServiceId = genruntime.ClonePointerToString(bind.ServiceId)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// User assigned identity properties
+type UserAssignedIdentity_STATUS struct {
+ // ClientId: The client ID of the assigned identity.
+ ClientId *string `json:"clientId,omitempty"`
+
+ // PrincipalId: The principal ID of the assigned identity.
+ PrincipalId *string `json:"principalId,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &UserAssignedIdentity_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (identity *UserAssignedIdentity_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.UserAssignedIdentity_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (identity *UserAssignedIdentity_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.UserAssignedIdentity_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.UserAssignedIdentity_STATUS, got %T", armInput)
+ }
+
+ // Set property "ClientId":
+ if typedInput.ClientId != nil {
+ clientId := *typedInput.ClientId
+ identity.ClientId = &clientId
+ }
+
+ // Set property "PrincipalId":
+ if typedInput.PrincipalId != nil {
+ principalId := *typedInput.PrincipalId
+ identity.PrincipalId = &principalId
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_UserAssignedIdentity_STATUS populates our UserAssignedIdentity_STATUS from the provided source UserAssignedIdentity_STATUS
+func (identity *UserAssignedIdentity_STATUS) AssignProperties_From_UserAssignedIdentity_STATUS(source *storage.UserAssignedIdentity_STATUS) error {
+
+ // ClientId
+ identity.ClientId = genruntime.ClonePointerToString(source.ClientId)
+
+ // PrincipalId
+ identity.PrincipalId = genruntime.ClonePointerToString(source.PrincipalId)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_UserAssignedIdentity_STATUS populates the provided destination UserAssignedIdentity_STATUS from our UserAssignedIdentity_STATUS
+func (identity *UserAssignedIdentity_STATUS) AssignProperties_To_UserAssignedIdentity_STATUS(destination *storage.UserAssignedIdentity_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ClientId
+ destination.ClientId = genruntime.ClonePointerToString(identity.ClientId)
+
+ // PrincipalId
+ destination.PrincipalId = genruntime.ClonePointerToString(identity.PrincipalId)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Information about the user assigned identity for the resource
+type UserAssignedIdentityDetails struct {
+ Reference genruntime.ResourceReference `armReference:"Reference" json:"reference,omitempty"`
+}
+
+// AssignProperties_From_UserAssignedIdentityDetails populates our UserAssignedIdentityDetails from the provided source UserAssignedIdentityDetails
+func (details *UserAssignedIdentityDetails) AssignProperties_From_UserAssignedIdentityDetails(source *storage.UserAssignedIdentityDetails) error {
+
+ // Reference
+ details.Reference = source.Reference.Copy()
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_UserAssignedIdentityDetails populates the provided destination UserAssignedIdentityDetails from our UserAssignedIdentityDetails
+func (details *UserAssignedIdentityDetails) AssignProperties_To_UserAssignedIdentityDetails(destination *storage.UserAssignedIdentityDetails) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Reference
+ destination.Reference = details.Reference.Copy()
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Volume definitions for the Container App.
+type Volume struct {
+ // MountOptions: Mount options used while mounting the AzureFile. Must be a comma-separated string.
+ MountOptions *string `json:"mountOptions,omitempty"`
+
+ // Name: Volume name.
+ Name *string `json:"name,omitempty"`
+
+ // Secrets: List of secrets to be added in volume. If no secrets are provided, all secrets in collection will be added to
+ // volume.
+ Secrets []SecretVolumeItem `json:"secrets,omitempty"`
+
+ // StorageName: Name of storage resource. No need to provide for EmptyDir and Secret.
+ StorageName *string `json:"storageName,omitempty"`
+
+ // StorageType: Storage type for the volume. If not provided, use EmptyDir.
+ StorageType *Volume_StorageType `json:"storageType,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Volume{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (volume *Volume) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if volume == nil {
+ return nil, nil
+ }
+ result := &arm.Volume{}
+
+ // Set property "MountOptions":
+ if volume.MountOptions != nil {
+ mountOptions := *volume.MountOptions
+ result.MountOptions = &mountOptions
+ }
+
+ // Set property "Name":
+ if volume.Name != nil {
+ name := *volume.Name
+ result.Name = &name
+ }
+
+ // Set property "Secrets":
+ for _, item := range volume.Secrets {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Secrets = append(result.Secrets, *item_ARM.(*arm.SecretVolumeItem))
+ }
+
+ // Set property "StorageName":
+ if volume.StorageName != nil {
+ storageName := *volume.StorageName
+ result.StorageName = &storageName
+ }
+
+ // Set property "StorageType":
+ if volume.StorageType != nil {
+ var temp string
+ temp = string(*volume.StorageType)
+ storageType := arm.Volume_StorageType(temp)
+ result.StorageType = &storageType
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (volume *Volume) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Volume{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (volume *Volume) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Volume)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Volume, got %T", armInput)
+ }
+
+ // Set property "MountOptions":
+ if typedInput.MountOptions != nil {
+ mountOptions := *typedInput.MountOptions
+ volume.MountOptions = &mountOptions
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ volume.Name = &name
+ }
+
+ // Set property "Secrets":
+ for _, item := range typedInput.Secrets {
+ var item1 SecretVolumeItem
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ volume.Secrets = append(volume.Secrets, item1)
+ }
+
+ // Set property "StorageName":
+ if typedInput.StorageName != nil {
+ storageName := *typedInput.StorageName
+ volume.StorageName = &storageName
+ }
+
+ // Set property "StorageType":
+ if typedInput.StorageType != nil {
+ var temp string
+ temp = string(*typedInput.StorageType)
+ storageType := Volume_StorageType(temp)
+ volume.StorageType = &storageType
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Volume populates our Volume from the provided source Volume
+func (volume *Volume) AssignProperties_From_Volume(source *storage.Volume) error {
+
+ // MountOptions
+ volume.MountOptions = genruntime.ClonePointerToString(source.MountOptions)
+
+ // Name
+ volume.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]SecretVolumeItem, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret SecretVolumeItem
+ err := secret.AssignProperties_From_SecretVolumeItem(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_SecretVolumeItem() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ volume.Secrets = secretList
+ } else {
+ volume.Secrets = nil
+ }
+
+ // StorageName
+ volume.StorageName = genruntime.ClonePointerToString(source.StorageName)
+
+ // StorageType
+ if source.StorageType != nil {
+ storageType := *source.StorageType
+ storageTypeTemp := genruntime.ToEnum(storageType, volume_StorageType_Values)
+ volume.StorageType = &storageTypeTemp
+ } else {
+ volume.StorageType = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Volume populates the provided destination Volume from our Volume
+func (volume *Volume) AssignProperties_To_Volume(destination *storage.Volume) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MountOptions
+ destination.MountOptions = genruntime.ClonePointerToString(volume.MountOptions)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(volume.Name)
+
+ // Secrets
+ if volume.Secrets != nil {
+ secretList := make([]storage.SecretVolumeItem, len(volume.Secrets))
+ for secretIndex, secretItem := range volume.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret storage.SecretVolumeItem
+ err := secretItem.AssignProperties_To_SecretVolumeItem(&secret)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_SecretVolumeItem() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ destination.Secrets = secretList
+ } else {
+ destination.Secrets = nil
+ }
+
+ // StorageName
+ destination.StorageName = genruntime.ClonePointerToString(volume.StorageName)
+
+ // StorageType
+ if volume.StorageType != nil {
+ storageType := string(*volume.StorageType)
+ destination.StorageType = &storageType
+ } else {
+ destination.StorageType = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Volume_STATUS populates our Volume from the provided source Volume_STATUS
+func (volume *Volume) Initialize_From_Volume_STATUS(source *Volume_STATUS) error {
+
+ // MountOptions
+ volume.MountOptions = genruntime.ClonePointerToString(source.MountOptions)
+
+ // Name
+ volume.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]SecretVolumeItem, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret SecretVolumeItem
+ err := secret.Initialize_From_SecretVolumeItem_STATUS(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_SecretVolumeItem_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ volume.Secrets = secretList
+ } else {
+ volume.Secrets = nil
+ }
+
+ // StorageName
+ volume.StorageName = genruntime.ClonePointerToString(source.StorageName)
+
+ // StorageType
+ if source.StorageType != nil {
+ storageType := genruntime.ToEnum(string(*source.StorageType), volume_StorageType_Values)
+ volume.StorageType = &storageType
+ } else {
+ volume.StorageType = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Volume definitions for the Container App.
+type Volume_STATUS struct {
+ // MountOptions: Mount options used while mounting the AzureFile. Must be a comma-separated string.
+ MountOptions *string `json:"mountOptions,omitempty"`
+
+ // Name: Volume name.
+ Name *string `json:"name,omitempty"`
+
+ // Secrets: List of secrets to be added in volume. If no secrets are provided, all secrets in collection will be added to
+ // volume.
+ Secrets []SecretVolumeItem_STATUS `json:"secrets,omitempty"`
+
+ // StorageName: Name of storage resource. No need to provide for EmptyDir and Secret.
+ StorageName *string `json:"storageName,omitempty"`
+
+ // StorageType: Storage type for the volume. If not provided, use EmptyDir.
+ StorageType *Volume_StorageType_STATUS `json:"storageType,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Volume_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (volume *Volume_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Volume_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (volume *Volume_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Volume_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Volume_STATUS, got %T", armInput)
+ }
+
+ // Set property "MountOptions":
+ if typedInput.MountOptions != nil {
+ mountOptions := *typedInput.MountOptions
+ volume.MountOptions = &mountOptions
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ volume.Name = &name
+ }
+
+ // Set property "Secrets":
+ for _, item := range typedInput.Secrets {
+ var item1 SecretVolumeItem_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ volume.Secrets = append(volume.Secrets, item1)
+ }
+
+ // Set property "StorageName":
+ if typedInput.StorageName != nil {
+ storageName := *typedInput.StorageName
+ volume.StorageName = &storageName
+ }
+
+ // Set property "StorageType":
+ if typedInput.StorageType != nil {
+ var temp string
+ temp = string(*typedInput.StorageType)
+ storageType := Volume_StorageType_STATUS(temp)
+ volume.StorageType = &storageType
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Volume_STATUS populates our Volume_STATUS from the provided source Volume_STATUS
+func (volume *Volume_STATUS) AssignProperties_From_Volume_STATUS(source *storage.Volume_STATUS) error {
+
+ // MountOptions
+ volume.MountOptions = genruntime.ClonePointerToString(source.MountOptions)
+
+ // Name
+ volume.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]SecretVolumeItem_STATUS, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret SecretVolumeItem_STATUS
+ err := secret.AssignProperties_From_SecretVolumeItem_STATUS(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_SecretVolumeItem_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ volume.Secrets = secretList
+ } else {
+ volume.Secrets = nil
+ }
+
+ // StorageName
+ volume.StorageName = genruntime.ClonePointerToString(source.StorageName)
+
+ // StorageType
+ if source.StorageType != nil {
+ storageType := *source.StorageType
+ storageTypeTemp := genruntime.ToEnum(storageType, volume_StorageType_STATUS_Values)
+ volume.StorageType = &storageTypeTemp
+ } else {
+ volume.StorageType = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Volume_STATUS populates the provided destination Volume_STATUS from our Volume_STATUS
+func (volume *Volume_STATUS) AssignProperties_To_Volume_STATUS(destination *storage.Volume_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MountOptions
+ destination.MountOptions = genruntime.ClonePointerToString(volume.MountOptions)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(volume.Name)
+
+ // Secrets
+ if volume.Secrets != nil {
+ secretList := make([]storage.SecretVolumeItem_STATUS, len(volume.Secrets))
+ for secretIndex, secretItem := range volume.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret storage.SecretVolumeItem_STATUS
+ err := secretItem.AssignProperties_To_SecretVolumeItem_STATUS(&secret)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_SecretVolumeItem_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ destination.Secrets = secretList
+ } else {
+ destination.Secrets = nil
+ }
+
+ // StorageName
+ destination.StorageName = genruntime.ClonePointerToString(volume.StorageName)
+
+ // StorageType
+ if volume.StorageType != nil {
+ storageType := string(*volume.StorageType)
+ destination.StorageType = &storageType
+ } else {
+ destination.StorageType = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive
+// traffic.
+type ContainerAppProbe struct {
+ // FailureThreshold: Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to
+ // 3. Minimum value is 1. Maximum value is 10.
+ FailureThreshold *int `json:"failureThreshold,omitempty"`
+
+ // HttpGet: HTTPGet specifies the http request to perform.
+ HttpGet *ContainerAppProbe_HttpGet `json:"httpGet,omitempty"`
+
+ // InitialDelaySeconds: Number of seconds after the container has started before liveness probes are initiated. Minimum
+ // value is 1. Maximum value is 60.
+ InitialDelaySeconds *int `json:"initialDelaySeconds,omitempty"`
+
+ // PeriodSeconds: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is
+ // 240.
+ PeriodSeconds *int `json:"periodSeconds,omitempty"`
+
+ // SuccessThreshold: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults
+ // to 1. Must be 1 for liveness and startup. Minimum value is 1. Maximum value is 10.
+ SuccessThreshold *int `json:"successThreshold,omitempty"`
+
+ // TcpSocket: TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported.
+ TcpSocket *ContainerAppProbe_TcpSocket `json:"tcpSocket,omitempty"`
+
+ // TerminationGracePeriodSeconds: Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ // The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the
+ // time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for
+ // your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value
+ // overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop
+ // immediately via the kill signal (no opportunity to shut down). This is an alpha field and requires enabling
+ // ProbeTerminationGracePeriod feature gate. Maximum value is 3600 seconds (1 hour)
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+
+ // TimeoutSeconds: Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum
+ // value is 240.
+ TimeoutSeconds *int `json:"timeoutSeconds,omitempty"`
+
+ // Type: The type of probe.
+ Type *ContainerAppProbe_Type `json:"type,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ContainerAppProbe{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (probe *ContainerAppProbe) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if probe == nil {
+ return nil, nil
+ }
+ result := &arm.ContainerAppProbe{}
+
+ // Set property "FailureThreshold":
+ if probe.FailureThreshold != nil {
+ failureThreshold := *probe.FailureThreshold
+ result.FailureThreshold = &failureThreshold
+ }
+
+ // Set property "HttpGet":
+ if probe.HttpGet != nil {
+ httpGet_ARM, err := (*probe.HttpGet).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ httpGet := *httpGet_ARM.(*arm.ContainerAppProbe_HttpGet)
+ result.HttpGet = &httpGet
+ }
+
+ // Set property "InitialDelaySeconds":
+ if probe.InitialDelaySeconds != nil {
+ initialDelaySeconds := *probe.InitialDelaySeconds
+ result.InitialDelaySeconds = &initialDelaySeconds
+ }
+
+ // Set property "PeriodSeconds":
+ if probe.PeriodSeconds != nil {
+ periodSeconds := *probe.PeriodSeconds
+ result.PeriodSeconds = &periodSeconds
+ }
+
+ // Set property "SuccessThreshold":
+ if probe.SuccessThreshold != nil {
+ successThreshold := *probe.SuccessThreshold
+ result.SuccessThreshold = &successThreshold
+ }
+
+ // Set property "TcpSocket":
+ if probe.TcpSocket != nil {
+ tcpSocket_ARM, err := (*probe.TcpSocket).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ tcpSocket := *tcpSocket_ARM.(*arm.ContainerAppProbe_TcpSocket)
+ result.TcpSocket = &tcpSocket
+ }
+
+ // Set property "TerminationGracePeriodSeconds":
+ if probe.TerminationGracePeriodSeconds != nil {
+ terminationGracePeriodSeconds := *probe.TerminationGracePeriodSeconds
+ result.TerminationGracePeriodSeconds = &terminationGracePeriodSeconds
+ }
+
+ // Set property "TimeoutSeconds":
+ if probe.TimeoutSeconds != nil {
+ timeoutSeconds := *probe.TimeoutSeconds
+ result.TimeoutSeconds = &timeoutSeconds
+ }
+
+ // Set property "Type":
+ if probe.Type != nil {
+ var temp string
+ temp = string(*probe.Type)
+ typeVar := arm.ContainerAppProbe_Type(temp)
+ result.Type = &typeVar
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (probe *ContainerAppProbe) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerAppProbe{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (probe *ContainerAppProbe) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerAppProbe)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerAppProbe, got %T", armInput)
+ }
+
+ // Set property "FailureThreshold":
+ if typedInput.FailureThreshold != nil {
+ failureThreshold := *typedInput.FailureThreshold
+ probe.FailureThreshold = &failureThreshold
+ }
+
+ // Set property "HttpGet":
+ if typedInput.HttpGet != nil {
+ var httpGet1 ContainerAppProbe_HttpGet
+ err := httpGet1.PopulateFromARM(owner, *typedInput.HttpGet)
+ if err != nil {
+ return err
+ }
+ httpGet := httpGet1
+ probe.HttpGet = &httpGet
+ }
+
+ // Set property "InitialDelaySeconds":
+ if typedInput.InitialDelaySeconds != nil {
+ initialDelaySeconds := *typedInput.InitialDelaySeconds
+ probe.InitialDelaySeconds = &initialDelaySeconds
+ }
+
+ // Set property "PeriodSeconds":
+ if typedInput.PeriodSeconds != nil {
+ periodSeconds := *typedInput.PeriodSeconds
+ probe.PeriodSeconds = &periodSeconds
+ }
+
+ // Set property "SuccessThreshold":
+ if typedInput.SuccessThreshold != nil {
+ successThreshold := *typedInput.SuccessThreshold
+ probe.SuccessThreshold = &successThreshold
+ }
+
+ // Set property "TcpSocket":
+ if typedInput.TcpSocket != nil {
+ var tcpSocket1 ContainerAppProbe_TcpSocket
+ err := tcpSocket1.PopulateFromARM(owner, *typedInput.TcpSocket)
+ if err != nil {
+ return err
+ }
+ tcpSocket := tcpSocket1
+ probe.TcpSocket = &tcpSocket
+ }
+
+ // Set property "TerminationGracePeriodSeconds":
+ if typedInput.TerminationGracePeriodSeconds != nil {
+ terminationGracePeriodSeconds := *typedInput.TerminationGracePeriodSeconds
+ probe.TerminationGracePeriodSeconds = &terminationGracePeriodSeconds
+ }
+
+ // Set property "TimeoutSeconds":
+ if typedInput.TimeoutSeconds != nil {
+ timeoutSeconds := *typedInput.TimeoutSeconds
+ probe.TimeoutSeconds = &timeoutSeconds
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ var temp string
+ temp = string(*typedInput.Type)
+ typeVar := ContainerAppProbe_Type(temp)
+ probe.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerAppProbe populates our ContainerAppProbe from the provided source ContainerAppProbe
+func (probe *ContainerAppProbe) AssignProperties_From_ContainerAppProbe(source *storage.ContainerAppProbe) error {
+
+ // FailureThreshold
+ probe.FailureThreshold = genruntime.ClonePointerToInt(source.FailureThreshold)
+
+ // HttpGet
+ if source.HttpGet != nil {
+ var httpGet ContainerAppProbe_HttpGet
+ err := httpGet.AssignProperties_From_ContainerAppProbe_HttpGet(source.HttpGet)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppProbe_HttpGet() to populate field HttpGet")
+ }
+ probe.HttpGet = &httpGet
+ } else {
+ probe.HttpGet = nil
+ }
+
+ // InitialDelaySeconds
+ probe.InitialDelaySeconds = genruntime.ClonePointerToInt(source.InitialDelaySeconds)
+
+ // PeriodSeconds
+ probe.PeriodSeconds = genruntime.ClonePointerToInt(source.PeriodSeconds)
+
+ // SuccessThreshold
+ probe.SuccessThreshold = genruntime.ClonePointerToInt(source.SuccessThreshold)
+
+ // TcpSocket
+ if source.TcpSocket != nil {
+ var tcpSocket ContainerAppProbe_TcpSocket
+ err := tcpSocket.AssignProperties_From_ContainerAppProbe_TcpSocket(source.TcpSocket)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppProbe_TcpSocket() to populate field TcpSocket")
+ }
+ probe.TcpSocket = &tcpSocket
+ } else {
+ probe.TcpSocket = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ probe.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(source.TerminationGracePeriodSeconds)
+
+ // TimeoutSeconds
+ probe.TimeoutSeconds = genruntime.ClonePointerToInt(source.TimeoutSeconds)
+
+ // Type
+ if source.Type != nil {
+ typeVar := *source.Type
+ typeTemp := genruntime.ToEnum(typeVar, containerAppProbe_Type_Values)
+ probe.Type = &typeTemp
+ } else {
+ probe.Type = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppProbe populates the provided destination ContainerAppProbe from our ContainerAppProbe
+func (probe *ContainerAppProbe) AssignProperties_To_ContainerAppProbe(destination *storage.ContainerAppProbe) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // FailureThreshold
+ destination.FailureThreshold = genruntime.ClonePointerToInt(probe.FailureThreshold)
+
+ // HttpGet
+ if probe.HttpGet != nil {
+ var httpGet storage.ContainerAppProbe_HttpGet
+ err := probe.HttpGet.AssignProperties_To_ContainerAppProbe_HttpGet(&httpGet)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppProbe_HttpGet() to populate field HttpGet")
+ }
+ destination.HttpGet = &httpGet
+ } else {
+ destination.HttpGet = nil
+ }
+
+ // InitialDelaySeconds
+ destination.InitialDelaySeconds = genruntime.ClonePointerToInt(probe.InitialDelaySeconds)
+
+ // PeriodSeconds
+ destination.PeriodSeconds = genruntime.ClonePointerToInt(probe.PeriodSeconds)
+
+ // SuccessThreshold
+ destination.SuccessThreshold = genruntime.ClonePointerToInt(probe.SuccessThreshold)
+
+ // TcpSocket
+ if probe.TcpSocket != nil {
+ var tcpSocket storage.ContainerAppProbe_TcpSocket
+ err := probe.TcpSocket.AssignProperties_To_ContainerAppProbe_TcpSocket(&tcpSocket)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppProbe_TcpSocket() to populate field TcpSocket")
+ }
+ destination.TcpSocket = &tcpSocket
+ } else {
+ destination.TcpSocket = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ destination.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(probe.TerminationGracePeriodSeconds)
+
+ // TimeoutSeconds
+ destination.TimeoutSeconds = genruntime.ClonePointerToInt(probe.TimeoutSeconds)
+
+ // Type
+ if probe.Type != nil {
+ typeVar := string(*probe.Type)
+ destination.Type = &typeVar
+ } else {
+ destination.Type = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ContainerAppProbe_STATUS populates our ContainerAppProbe from the provided source ContainerAppProbe_STATUS
+func (probe *ContainerAppProbe) Initialize_From_ContainerAppProbe_STATUS(source *ContainerAppProbe_STATUS) error {
+
+ // FailureThreshold
+ probe.FailureThreshold = genruntime.ClonePointerToInt(source.FailureThreshold)
+
+ // HttpGet
+ if source.HttpGet != nil {
+ var httpGet ContainerAppProbe_HttpGet
+ err := httpGet.Initialize_From_ContainerAppProbe_HttpGet_STATUS(source.HttpGet)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ContainerAppProbe_HttpGet_STATUS() to populate field HttpGet")
+ }
+ probe.HttpGet = &httpGet
+ } else {
+ probe.HttpGet = nil
+ }
+
+ // InitialDelaySeconds
+ probe.InitialDelaySeconds = genruntime.ClonePointerToInt(source.InitialDelaySeconds)
+
+ // PeriodSeconds
+ probe.PeriodSeconds = genruntime.ClonePointerToInt(source.PeriodSeconds)
+
+ // SuccessThreshold
+ probe.SuccessThreshold = genruntime.ClonePointerToInt(source.SuccessThreshold)
+
+ // TcpSocket
+ if source.TcpSocket != nil {
+ var tcpSocket ContainerAppProbe_TcpSocket
+ err := tcpSocket.Initialize_From_ContainerAppProbe_TcpSocket_STATUS(source.TcpSocket)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ContainerAppProbe_TcpSocket_STATUS() to populate field TcpSocket")
+ }
+ probe.TcpSocket = &tcpSocket
+ } else {
+ probe.TcpSocket = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ probe.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(source.TerminationGracePeriodSeconds)
+
+ // TimeoutSeconds
+ probe.TimeoutSeconds = genruntime.ClonePointerToInt(source.TimeoutSeconds)
+
+ // Type
+ if source.Type != nil {
+ typeVar := genruntime.ToEnum(string(*source.Type), containerAppProbe_Type_Values)
+ probe.Type = &typeVar
+ } else {
+ probe.Type = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive
+// traffic.
+type ContainerAppProbe_STATUS struct {
+ // FailureThreshold: Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to
+ // 3. Minimum value is 1. Maximum value is 10.
+ FailureThreshold *int `json:"failureThreshold,omitempty"`
+
+ // HttpGet: HTTPGet specifies the http request to perform.
+ HttpGet *ContainerAppProbe_HttpGet_STATUS `json:"httpGet,omitempty"`
+
+ // InitialDelaySeconds: Number of seconds after the container has started before liveness probes are initiated. Minimum
+ // value is 1. Maximum value is 60.
+ InitialDelaySeconds *int `json:"initialDelaySeconds,omitempty"`
+
+ // PeriodSeconds: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is
+ // 240.
+ PeriodSeconds *int `json:"periodSeconds,omitempty"`
+
+ // SuccessThreshold: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults
+ // to 1. Must be 1 for liveness and startup. Minimum value is 1. Maximum value is 10.
+ SuccessThreshold *int `json:"successThreshold,omitempty"`
+
+ // TcpSocket: TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported.
+ TcpSocket *ContainerAppProbe_TcpSocket_STATUS `json:"tcpSocket,omitempty"`
+
+ // TerminationGracePeriodSeconds: Optional duration in seconds the pod needs to terminate gracefully upon probe failure.
+ // The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the
+ // time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for
+ // your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value
+ // overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop
+ // immediately via the kill signal (no opportunity to shut down). This is an alpha field and requires enabling
+ // ProbeTerminationGracePeriod feature gate. Maximum value is 3600 seconds (1 hour)
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+
+ // TimeoutSeconds: Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum
+ // value is 240.
+ TimeoutSeconds *int `json:"timeoutSeconds,omitempty"`
+
+ // Type: The type of probe.
+ Type *ContainerAppProbe_Type_STATUS `json:"type,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ContainerAppProbe_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (probe *ContainerAppProbe_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerAppProbe_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (probe *ContainerAppProbe_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerAppProbe_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerAppProbe_STATUS, got %T", armInput)
+ }
+
+ // Set property "FailureThreshold":
+ if typedInput.FailureThreshold != nil {
+ failureThreshold := *typedInput.FailureThreshold
+ probe.FailureThreshold = &failureThreshold
+ }
+
+ // Set property "HttpGet":
+ if typedInput.HttpGet != nil {
+ var httpGet1 ContainerAppProbe_HttpGet_STATUS
+ err := httpGet1.PopulateFromARM(owner, *typedInput.HttpGet)
+ if err != nil {
+ return err
+ }
+ httpGet := httpGet1
+ probe.HttpGet = &httpGet
+ }
+
+ // Set property "InitialDelaySeconds":
+ if typedInput.InitialDelaySeconds != nil {
+ initialDelaySeconds := *typedInput.InitialDelaySeconds
+ probe.InitialDelaySeconds = &initialDelaySeconds
+ }
+
+ // Set property "PeriodSeconds":
+ if typedInput.PeriodSeconds != nil {
+ periodSeconds := *typedInput.PeriodSeconds
+ probe.PeriodSeconds = &periodSeconds
+ }
+
+ // Set property "SuccessThreshold":
+ if typedInput.SuccessThreshold != nil {
+ successThreshold := *typedInput.SuccessThreshold
+ probe.SuccessThreshold = &successThreshold
+ }
+
+ // Set property "TcpSocket":
+ if typedInput.TcpSocket != nil {
+ var tcpSocket1 ContainerAppProbe_TcpSocket_STATUS
+ err := tcpSocket1.PopulateFromARM(owner, *typedInput.TcpSocket)
+ if err != nil {
+ return err
+ }
+ tcpSocket := tcpSocket1
+ probe.TcpSocket = &tcpSocket
+ }
+
+ // Set property "TerminationGracePeriodSeconds":
+ if typedInput.TerminationGracePeriodSeconds != nil {
+ terminationGracePeriodSeconds := *typedInput.TerminationGracePeriodSeconds
+ probe.TerminationGracePeriodSeconds = &terminationGracePeriodSeconds
+ }
+
+ // Set property "TimeoutSeconds":
+ if typedInput.TimeoutSeconds != nil {
+ timeoutSeconds := *typedInput.TimeoutSeconds
+ probe.TimeoutSeconds = &timeoutSeconds
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ var temp string
+ temp = string(*typedInput.Type)
+ typeVar := ContainerAppProbe_Type_STATUS(temp)
+ probe.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerAppProbe_STATUS populates our ContainerAppProbe_STATUS from the provided source ContainerAppProbe_STATUS
+func (probe *ContainerAppProbe_STATUS) AssignProperties_From_ContainerAppProbe_STATUS(source *storage.ContainerAppProbe_STATUS) error {
+
+ // FailureThreshold
+ probe.FailureThreshold = genruntime.ClonePointerToInt(source.FailureThreshold)
+
+ // HttpGet
+ if source.HttpGet != nil {
+ var httpGet ContainerAppProbe_HttpGet_STATUS
+ err := httpGet.AssignProperties_From_ContainerAppProbe_HttpGet_STATUS(source.HttpGet)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppProbe_HttpGet_STATUS() to populate field HttpGet")
+ }
+ probe.HttpGet = &httpGet
+ } else {
+ probe.HttpGet = nil
+ }
+
+ // InitialDelaySeconds
+ probe.InitialDelaySeconds = genruntime.ClonePointerToInt(source.InitialDelaySeconds)
+
+ // PeriodSeconds
+ probe.PeriodSeconds = genruntime.ClonePointerToInt(source.PeriodSeconds)
+
+ // SuccessThreshold
+ probe.SuccessThreshold = genruntime.ClonePointerToInt(source.SuccessThreshold)
+
+ // TcpSocket
+ if source.TcpSocket != nil {
+ var tcpSocket ContainerAppProbe_TcpSocket_STATUS
+ err := tcpSocket.AssignProperties_From_ContainerAppProbe_TcpSocket_STATUS(source.TcpSocket)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppProbe_TcpSocket_STATUS() to populate field TcpSocket")
+ }
+ probe.TcpSocket = &tcpSocket
+ } else {
+ probe.TcpSocket = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ probe.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(source.TerminationGracePeriodSeconds)
+
+ // TimeoutSeconds
+ probe.TimeoutSeconds = genruntime.ClonePointerToInt(source.TimeoutSeconds)
+
+ // Type
+ if source.Type != nil {
+ typeVar := *source.Type
+ typeTemp := genruntime.ToEnum(typeVar, containerAppProbe_Type_STATUS_Values)
+ probe.Type = &typeTemp
+ } else {
+ probe.Type = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppProbe_STATUS populates the provided destination ContainerAppProbe_STATUS from our ContainerAppProbe_STATUS
+func (probe *ContainerAppProbe_STATUS) AssignProperties_To_ContainerAppProbe_STATUS(destination *storage.ContainerAppProbe_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // FailureThreshold
+ destination.FailureThreshold = genruntime.ClonePointerToInt(probe.FailureThreshold)
+
+ // HttpGet
+ if probe.HttpGet != nil {
+ var httpGet storage.ContainerAppProbe_HttpGet_STATUS
+ err := probe.HttpGet.AssignProperties_To_ContainerAppProbe_HttpGet_STATUS(&httpGet)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppProbe_HttpGet_STATUS() to populate field HttpGet")
+ }
+ destination.HttpGet = &httpGet
+ } else {
+ destination.HttpGet = nil
+ }
+
+ // InitialDelaySeconds
+ destination.InitialDelaySeconds = genruntime.ClonePointerToInt(probe.InitialDelaySeconds)
+
+ // PeriodSeconds
+ destination.PeriodSeconds = genruntime.ClonePointerToInt(probe.PeriodSeconds)
+
+ // SuccessThreshold
+ destination.SuccessThreshold = genruntime.ClonePointerToInt(probe.SuccessThreshold)
+
+ // TcpSocket
+ if probe.TcpSocket != nil {
+ var tcpSocket storage.ContainerAppProbe_TcpSocket_STATUS
+ err := probe.TcpSocket.AssignProperties_To_ContainerAppProbe_TcpSocket_STATUS(&tcpSocket)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppProbe_TcpSocket_STATUS() to populate field TcpSocket")
+ }
+ destination.TcpSocket = &tcpSocket
+ } else {
+ destination.TcpSocket = nil
+ }
+
+ // TerminationGracePeriodSeconds
+ destination.TerminationGracePeriodSeconds = genruntime.ClonePointerToInt(probe.TerminationGracePeriodSeconds)
+
+ // TimeoutSeconds
+ destination.TimeoutSeconds = genruntime.ClonePointerToInt(probe.TimeoutSeconds)
+
+ // Type
+ if probe.Type != nil {
+ typeVar := string(*probe.Type)
+ destination.Type = &typeVar
+ } else {
+ destination.Type = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App container resource requirements.
+type ContainerResources struct {
+ // Cpu: Required CPU in cores, e.g. 0.5
+ Cpu *float64 `json:"cpu,omitempty"`
+
+ // Memory: Required memory, e.g. "250Mb"
+ Memory *string `json:"memory,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ContainerResources{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (resources *ContainerResources) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if resources == nil {
+ return nil, nil
+ }
+ result := &arm.ContainerResources{}
+
+ // Set property "Cpu":
+ if resources.Cpu != nil {
+ cpu := *resources.Cpu
+ result.Cpu = &cpu
+ }
+
+ // Set property "Memory":
+ if resources.Memory != nil {
+ memory := *resources.Memory
+ result.Memory = &memory
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (resources *ContainerResources) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerResources{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (resources *ContainerResources) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerResources)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerResources, got %T", armInput)
+ }
+
+ // Set property "Cpu":
+ if typedInput.Cpu != nil {
+ cpu := *typedInput.Cpu
+ resources.Cpu = &cpu
+ }
+
+ // Set property "Memory":
+ if typedInput.Memory != nil {
+ memory := *typedInput.Memory
+ resources.Memory = &memory
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerResources populates our ContainerResources from the provided source ContainerResources
+func (resources *ContainerResources) AssignProperties_From_ContainerResources(source *storage.ContainerResources) error {
+
+ // Cpu
+ if source.Cpu != nil {
+ cpu := *source.Cpu
+ resources.Cpu = &cpu
+ } else {
+ resources.Cpu = nil
+ }
+
+ // Memory
+ resources.Memory = genruntime.ClonePointerToString(source.Memory)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerResources populates the provided destination ContainerResources from our ContainerResources
+func (resources *ContainerResources) AssignProperties_To_ContainerResources(destination *storage.ContainerResources) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Cpu
+ if resources.Cpu != nil {
+ cpu := *resources.Cpu
+ destination.Cpu = &cpu
+ } else {
+ destination.Cpu = nil
+ }
+
+ // Memory
+ destination.Memory = genruntime.ClonePointerToString(resources.Memory)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ContainerResources_STATUS populates our ContainerResources from the provided source ContainerResources_STATUS
+func (resources *ContainerResources) Initialize_From_ContainerResources_STATUS(source *ContainerResources_STATUS) error {
+
+ // Cpu
+ if source.Cpu != nil {
+ cpu := *source.Cpu
+ resources.Cpu = &cpu
+ } else {
+ resources.Cpu = nil
+ }
+
+ // Memory
+ resources.Memory = genruntime.ClonePointerToString(source.Memory)
+
+ // No error
+ return nil
+}
+
+// Container App container resource requirements.
+type ContainerResources_STATUS struct {
+ // Cpu: Required CPU in cores, e.g. 0.5
+ Cpu *float64 `json:"cpu,omitempty"`
+
+ // EphemeralStorage: Ephemeral Storage, e.g. "1Gi"
+ EphemeralStorage *string `json:"ephemeralStorage,omitempty"`
+
+ // Memory: Required memory, e.g. "250Mb"
+ Memory *string `json:"memory,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ContainerResources_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (resources *ContainerResources_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerResources_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (resources *ContainerResources_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerResources_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerResources_STATUS, got %T", armInput)
+ }
+
+ // Set property "Cpu":
+ if typedInput.Cpu != nil {
+ cpu := *typedInput.Cpu
+ resources.Cpu = &cpu
+ }
+
+ // Set property "EphemeralStorage":
+ if typedInput.EphemeralStorage != nil {
+ ephemeralStorage := *typedInput.EphemeralStorage
+ resources.EphemeralStorage = &ephemeralStorage
+ }
+
+ // Set property "Memory":
+ if typedInput.Memory != nil {
+ memory := *typedInput.Memory
+ resources.Memory = &memory
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerResources_STATUS populates our ContainerResources_STATUS from the provided source ContainerResources_STATUS
+func (resources *ContainerResources_STATUS) AssignProperties_From_ContainerResources_STATUS(source *storage.ContainerResources_STATUS) error {
+
+ // Cpu
+ if source.Cpu != nil {
+ cpu := *source.Cpu
+ resources.Cpu = &cpu
+ } else {
+ resources.Cpu = nil
+ }
+
+ // EphemeralStorage
+ resources.EphemeralStorage = genruntime.ClonePointerToString(source.EphemeralStorage)
+
+ // Memory
+ resources.Memory = genruntime.ClonePointerToString(source.Memory)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerResources_STATUS populates the provided destination ContainerResources_STATUS from our ContainerResources_STATUS
+func (resources *ContainerResources_STATUS) AssignProperties_To_ContainerResources_STATUS(destination *storage.ContainerResources_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Cpu
+ if resources.Cpu != nil {
+ cpu := *resources.Cpu
+ destination.Cpu = &cpu
+ } else {
+ destination.Cpu = nil
+ }
+
+ // EphemeralStorage
+ destination.EphemeralStorage = genruntime.ClonePointerToString(resources.EphemeralStorage)
+
+ // Memory
+ destination.Memory = genruntime.ClonePointerToString(resources.Memory)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Cross-Origin-Resource-Sharing policy
+type CorsPolicy struct {
+ // AllowCredentials: Specifies whether the resource allows credentials
+ AllowCredentials *bool `json:"allowCredentials,omitempty"`
+
+ // AllowedHeaders: Specifies the content for the access-control-allow-headers header
+ AllowedHeaders []string `json:"allowedHeaders,omitempty"`
+
+ // AllowedMethods: Specifies the content for the access-control-allow-methods header
+ AllowedMethods []string `json:"allowedMethods,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // AllowedOrigins: Specifies the content for the access-control-allow-origins header
+ AllowedOrigins []string `json:"allowedOrigins,omitempty"`
+
+ // ExposeHeaders: Specifies the content for the access-control-expose-headers header
+ ExposeHeaders []string `json:"exposeHeaders,omitempty"`
+
+ // MaxAge: Specifies the content for the access-control-max-age header
+ MaxAge *int `json:"maxAge,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &CorsPolicy{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (policy *CorsPolicy) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if policy == nil {
+ return nil, nil
+ }
+ result := &arm.CorsPolicy{}
+
+ // Set property "AllowCredentials":
+ if policy.AllowCredentials != nil {
+ allowCredentials := *policy.AllowCredentials
+ result.AllowCredentials = &allowCredentials
+ }
+
+ // Set property "AllowedHeaders":
+ for _, item := range policy.AllowedHeaders {
+ result.AllowedHeaders = append(result.AllowedHeaders, item)
+ }
+
+ // Set property "AllowedMethods":
+ for _, item := range policy.AllowedMethods {
+ result.AllowedMethods = append(result.AllowedMethods, item)
+ }
+
+ // Set property "AllowedOrigins":
+ for _, item := range policy.AllowedOrigins {
+ result.AllowedOrigins = append(result.AllowedOrigins, item)
+ }
+
+ // Set property "ExposeHeaders":
+ for _, item := range policy.ExposeHeaders {
+ result.ExposeHeaders = append(result.ExposeHeaders, item)
+ }
+
+ // Set property "MaxAge":
+ if policy.MaxAge != nil {
+ maxAge := *policy.MaxAge
+ result.MaxAge = &maxAge
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (policy *CorsPolicy) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CorsPolicy{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (policy *CorsPolicy) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CorsPolicy)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CorsPolicy, got %T", armInput)
+ }
+
+ // Set property "AllowCredentials":
+ if typedInput.AllowCredentials != nil {
+ allowCredentials := *typedInput.AllowCredentials
+ policy.AllowCredentials = &allowCredentials
+ }
+
+ // Set property "AllowedHeaders":
+ for _, item := range typedInput.AllowedHeaders {
+ policy.AllowedHeaders = append(policy.AllowedHeaders, item)
+ }
+
+ // Set property "AllowedMethods":
+ for _, item := range typedInput.AllowedMethods {
+ policy.AllowedMethods = append(policy.AllowedMethods, item)
+ }
+
+ // Set property "AllowedOrigins":
+ for _, item := range typedInput.AllowedOrigins {
+ policy.AllowedOrigins = append(policy.AllowedOrigins, item)
+ }
+
+ // Set property "ExposeHeaders":
+ for _, item := range typedInput.ExposeHeaders {
+ policy.ExposeHeaders = append(policy.ExposeHeaders, item)
+ }
+
+ // Set property "MaxAge":
+ if typedInput.MaxAge != nil {
+ maxAge := *typedInput.MaxAge
+ policy.MaxAge = &maxAge
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CorsPolicy populates our CorsPolicy from the provided source CorsPolicy
+func (policy *CorsPolicy) AssignProperties_From_CorsPolicy(source *storage.CorsPolicy) error {
+
+ // AllowCredentials
+ if source.AllowCredentials != nil {
+ allowCredential := *source.AllowCredentials
+ policy.AllowCredentials = &allowCredential
+ } else {
+ policy.AllowCredentials = nil
+ }
+
+ // AllowedHeaders
+ policy.AllowedHeaders = genruntime.CloneSliceOfString(source.AllowedHeaders)
+
+ // AllowedMethods
+ policy.AllowedMethods = genruntime.CloneSliceOfString(source.AllowedMethods)
+
+ // AllowedOrigins
+ policy.AllowedOrigins = genruntime.CloneSliceOfString(source.AllowedOrigins)
+
+ // ExposeHeaders
+ policy.ExposeHeaders = genruntime.CloneSliceOfString(source.ExposeHeaders)
+
+ // MaxAge
+ policy.MaxAge = genruntime.ClonePointerToInt(source.MaxAge)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CorsPolicy populates the provided destination CorsPolicy from our CorsPolicy
+func (policy *CorsPolicy) AssignProperties_To_CorsPolicy(destination *storage.CorsPolicy) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowCredentials
+ if policy.AllowCredentials != nil {
+ allowCredential := *policy.AllowCredentials
+ destination.AllowCredentials = &allowCredential
+ } else {
+ destination.AllowCredentials = nil
+ }
+
+ // AllowedHeaders
+ destination.AllowedHeaders = genruntime.CloneSliceOfString(policy.AllowedHeaders)
+
+ // AllowedMethods
+ destination.AllowedMethods = genruntime.CloneSliceOfString(policy.AllowedMethods)
+
+ // AllowedOrigins
+ destination.AllowedOrigins = genruntime.CloneSliceOfString(policy.AllowedOrigins)
+
+ // ExposeHeaders
+ destination.ExposeHeaders = genruntime.CloneSliceOfString(policy.ExposeHeaders)
+
+ // MaxAge
+ destination.MaxAge = genruntime.ClonePointerToInt(policy.MaxAge)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_CorsPolicy_STATUS populates our CorsPolicy from the provided source CorsPolicy_STATUS
+func (policy *CorsPolicy) Initialize_From_CorsPolicy_STATUS(source *CorsPolicy_STATUS) error {
+
+ // AllowCredentials
+ if source.AllowCredentials != nil {
+ allowCredential := *source.AllowCredentials
+ policy.AllowCredentials = &allowCredential
+ } else {
+ policy.AllowCredentials = nil
+ }
+
+ // AllowedHeaders
+ policy.AllowedHeaders = genruntime.CloneSliceOfString(source.AllowedHeaders)
+
+ // AllowedMethods
+ policy.AllowedMethods = genruntime.CloneSliceOfString(source.AllowedMethods)
+
+ // AllowedOrigins
+ policy.AllowedOrigins = genruntime.CloneSliceOfString(source.AllowedOrigins)
+
+ // ExposeHeaders
+ policy.ExposeHeaders = genruntime.CloneSliceOfString(source.ExposeHeaders)
+
+ // MaxAge
+ policy.MaxAge = genruntime.ClonePointerToInt(source.MaxAge)
+
+ // No error
+ return nil
+}
+
+// Cross-Origin-Resource-Sharing policy
+type CorsPolicy_STATUS struct {
+ // AllowCredentials: Specifies whether the resource allows credentials
+ AllowCredentials *bool `json:"allowCredentials,omitempty"`
+
+ // AllowedHeaders: Specifies the content for the access-control-allow-headers header
+ AllowedHeaders []string `json:"allowedHeaders,omitempty"`
+
+ // AllowedMethods: Specifies the content for the access-control-allow-methods header
+ AllowedMethods []string `json:"allowedMethods,omitempty"`
+
+ // AllowedOrigins: Specifies the content for the access-control-allow-origins header
+ AllowedOrigins []string `json:"allowedOrigins,omitempty"`
+
+ // ExposeHeaders: Specifies the content for the access-control-expose-headers header
+ ExposeHeaders []string `json:"exposeHeaders,omitempty"`
+
+ // MaxAge: Specifies the content for the access-control-max-age header
+ MaxAge *int `json:"maxAge,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &CorsPolicy_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (policy *CorsPolicy_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CorsPolicy_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (policy *CorsPolicy_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CorsPolicy_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CorsPolicy_STATUS, got %T", armInput)
+ }
+
+ // Set property "AllowCredentials":
+ if typedInput.AllowCredentials != nil {
+ allowCredentials := *typedInput.AllowCredentials
+ policy.AllowCredentials = &allowCredentials
+ }
+
+ // Set property "AllowedHeaders":
+ for _, item := range typedInput.AllowedHeaders {
+ policy.AllowedHeaders = append(policy.AllowedHeaders, item)
+ }
+
+ // Set property "AllowedMethods":
+ for _, item := range typedInput.AllowedMethods {
+ policy.AllowedMethods = append(policy.AllowedMethods, item)
+ }
+
+ // Set property "AllowedOrigins":
+ for _, item := range typedInput.AllowedOrigins {
+ policy.AllowedOrigins = append(policy.AllowedOrigins, item)
+ }
+
+ // Set property "ExposeHeaders":
+ for _, item := range typedInput.ExposeHeaders {
+ policy.ExposeHeaders = append(policy.ExposeHeaders, item)
+ }
+
+ // Set property "MaxAge":
+ if typedInput.MaxAge != nil {
+ maxAge := *typedInput.MaxAge
+ policy.MaxAge = &maxAge
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CorsPolicy_STATUS populates our CorsPolicy_STATUS from the provided source CorsPolicy_STATUS
+func (policy *CorsPolicy_STATUS) AssignProperties_From_CorsPolicy_STATUS(source *storage.CorsPolicy_STATUS) error {
+
+ // AllowCredentials
+ if source.AllowCredentials != nil {
+ allowCredential := *source.AllowCredentials
+ policy.AllowCredentials = &allowCredential
+ } else {
+ policy.AllowCredentials = nil
+ }
+
+ // AllowedHeaders
+ policy.AllowedHeaders = genruntime.CloneSliceOfString(source.AllowedHeaders)
+
+ // AllowedMethods
+ policy.AllowedMethods = genruntime.CloneSliceOfString(source.AllowedMethods)
+
+ // AllowedOrigins
+ policy.AllowedOrigins = genruntime.CloneSliceOfString(source.AllowedOrigins)
+
+ // ExposeHeaders
+ policy.ExposeHeaders = genruntime.CloneSliceOfString(source.ExposeHeaders)
+
+ // MaxAge
+ policy.MaxAge = genruntime.ClonePointerToInt(source.MaxAge)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CorsPolicy_STATUS populates the provided destination CorsPolicy_STATUS from our CorsPolicy_STATUS
+func (policy *CorsPolicy_STATUS) AssignProperties_To_CorsPolicy_STATUS(destination *storage.CorsPolicy_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AllowCredentials
+ if policy.AllowCredentials != nil {
+ allowCredential := *policy.AllowCredentials
+ destination.AllowCredentials = &allowCredential
+ } else {
+ destination.AllowCredentials = nil
+ }
+
+ // AllowedHeaders
+ destination.AllowedHeaders = genruntime.CloneSliceOfString(policy.AllowedHeaders)
+
+ // AllowedMethods
+ destination.AllowedMethods = genruntime.CloneSliceOfString(policy.AllowedMethods)
+
+ // AllowedOrigins
+ destination.AllowedOrigins = genruntime.CloneSliceOfString(policy.AllowedOrigins)
+
+ // ExposeHeaders
+ destination.ExposeHeaders = genruntime.CloneSliceOfString(policy.ExposeHeaders)
+
+ // MaxAge
+ destination.MaxAge = genruntime.ClonePointerToInt(policy.MaxAge)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Custom Domain of a Container App
+type CustomDomain struct {
+ // BindingType: Custom Domain binding type.
+ BindingType *CustomDomain_BindingType `json:"bindingType,omitempty"`
+
+ // CertificateReference: Resource Id of the Certificate to be bound to this hostname. Must exist in the Managed Environment.
+ CertificateReference *genruntime.ResourceReference `armReference:"CertificateId" json:"certificateReference,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Name: Hostname.
+ Name *string `json:"name,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &CustomDomain{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (domain *CustomDomain) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if domain == nil {
+ return nil, nil
+ }
+ result := &arm.CustomDomain{}
+
+ // Set property "BindingType":
+ if domain.BindingType != nil {
+ var temp string
+ temp = string(*domain.BindingType)
+ bindingType := arm.CustomDomain_BindingType(temp)
+ result.BindingType = &bindingType
+ }
+
+ // Set property "CertificateId":
+ if domain.CertificateReference != nil {
+ certificateReferenceARMID, err := resolved.ResolvedReferences.Lookup(*domain.CertificateReference)
+ if err != nil {
+ return nil, err
+ }
+ certificateReference := certificateReferenceARMID
+ result.CertificateId = &certificateReference
+ }
+
+ // Set property "Name":
+ if domain.Name != nil {
+ name := *domain.Name
+ result.Name = &name
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (domain *CustomDomain) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CustomDomain{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (domain *CustomDomain) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CustomDomain)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CustomDomain, got %T", armInput)
+ }
+
+ // Set property "BindingType":
+ if typedInput.BindingType != nil {
+ var temp string
+ temp = string(*typedInput.BindingType)
+ bindingType := CustomDomain_BindingType(temp)
+ domain.BindingType = &bindingType
+ }
+
+ // no assignment for property "CertificateReference"
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ domain.Name = &name
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CustomDomain populates our CustomDomain from the provided source CustomDomain
+func (domain *CustomDomain) AssignProperties_From_CustomDomain(source *storage.CustomDomain) error {
+
+ // BindingType
+ if source.BindingType != nil {
+ bindingType := *source.BindingType
+ bindingTypeTemp := genruntime.ToEnum(bindingType, customDomain_BindingType_Values)
+ domain.BindingType = &bindingTypeTemp
+ } else {
+ domain.BindingType = nil
+ }
+
+ // CertificateReference
+ if source.CertificateReference != nil {
+ certificateReference := source.CertificateReference.Copy()
+ domain.CertificateReference = &certificateReference
+ } else {
+ domain.CertificateReference = nil
+ }
+
+ // Name
+ domain.Name = genruntime.ClonePointerToString(source.Name)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CustomDomain populates the provided destination CustomDomain from our CustomDomain
+func (domain *CustomDomain) AssignProperties_To_CustomDomain(destination *storage.CustomDomain) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // BindingType
+ if domain.BindingType != nil {
+ bindingType := string(*domain.BindingType)
+ destination.BindingType = &bindingType
+ } else {
+ destination.BindingType = nil
+ }
+
+ // CertificateReference
+ if domain.CertificateReference != nil {
+ certificateReference := domain.CertificateReference.Copy()
+ destination.CertificateReference = &certificateReference
+ } else {
+ destination.CertificateReference = nil
+ }
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(domain.Name)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_CustomDomain_STATUS populates our CustomDomain from the provided source CustomDomain_STATUS
+func (domain *CustomDomain) Initialize_From_CustomDomain_STATUS(source *CustomDomain_STATUS) error {
+
+ // BindingType
+ if source.BindingType != nil {
+ bindingType := genruntime.ToEnum(string(*source.BindingType), customDomain_BindingType_Values)
+ domain.BindingType = &bindingType
+ } else {
+ domain.BindingType = nil
+ }
+
+ // CertificateReference
+ if source.CertificateId != nil {
+ certificateReference := genruntime.CreateResourceReferenceFromARMID(*source.CertificateId)
+ domain.CertificateReference = &certificateReference
+ } else {
+ domain.CertificateReference = nil
+ }
+
+ // Name
+ domain.Name = genruntime.ClonePointerToString(source.Name)
+
+ // No error
+ return nil
+}
+
+// Custom Domain of a Container App
+type CustomDomain_STATUS struct {
+ // BindingType: Custom Domain binding type.
+ BindingType *CustomDomain_BindingType_STATUS `json:"bindingType,omitempty"`
+
+ // CertificateId: Resource Id of the Certificate to be bound to this hostname. Must exist in the Managed Environment.
+ CertificateId *string `json:"certificateId,omitempty"`
+
+ // Name: Hostname.
+ Name *string `json:"name,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &CustomDomain_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (domain *CustomDomain_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CustomDomain_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (domain *CustomDomain_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CustomDomain_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CustomDomain_STATUS, got %T", armInput)
+ }
+
+ // Set property "BindingType":
+ if typedInput.BindingType != nil {
+ var temp string
+ temp = string(*typedInput.BindingType)
+ bindingType := CustomDomain_BindingType_STATUS(temp)
+ domain.BindingType = &bindingType
+ }
+
+ // Set property "CertificateId":
+ if typedInput.CertificateId != nil {
+ certificateId := *typedInput.CertificateId
+ domain.CertificateId = &certificateId
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ domain.Name = &name
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CustomDomain_STATUS populates our CustomDomain_STATUS from the provided source CustomDomain_STATUS
+func (domain *CustomDomain_STATUS) AssignProperties_From_CustomDomain_STATUS(source *storage.CustomDomain_STATUS) error {
+
+ // BindingType
+ if source.BindingType != nil {
+ bindingType := *source.BindingType
+ bindingTypeTemp := genruntime.ToEnum(bindingType, customDomain_BindingType_STATUS_Values)
+ domain.BindingType = &bindingTypeTemp
+ } else {
+ domain.BindingType = nil
+ }
+
+ // CertificateId
+ domain.CertificateId = genruntime.ClonePointerToString(source.CertificateId)
+
+ // Name
+ domain.Name = genruntime.ClonePointerToString(source.Name)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CustomDomain_STATUS populates the provided destination CustomDomain_STATUS from our CustomDomain_STATUS
+func (domain *CustomDomain_STATUS) AssignProperties_To_CustomDomain_STATUS(destination *storage.CustomDomain_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // BindingType
+ if domain.BindingType != nil {
+ bindingType := string(*domain.BindingType)
+ destination.BindingType = &bindingType
+ } else {
+ destination.BindingType = nil
+ }
+
+ // CertificateId
+ destination.CertificateId = genruntime.ClonePointerToString(domain.CertificateId)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(domain.Name)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"grpc","http"}
+type Dapr_AppProtocol string
+
+const (
+ Dapr_AppProtocol_Grpc = Dapr_AppProtocol("grpc")
+ Dapr_AppProtocol_Http = Dapr_AppProtocol("http")
+)
+
+// Mapping from string to Dapr_AppProtocol
+var dapr_AppProtocol_Values = map[string]Dapr_AppProtocol{
+ "grpc": Dapr_AppProtocol_Grpc,
+ "http": Dapr_AppProtocol_Http,
+}
+
+type Dapr_AppProtocol_STATUS string
+
+const (
+ Dapr_AppProtocol_STATUS_Grpc = Dapr_AppProtocol_STATUS("grpc")
+ Dapr_AppProtocol_STATUS_Http = Dapr_AppProtocol_STATUS("http")
+)
+
+// Mapping from string to Dapr_AppProtocol_STATUS
+var dapr_AppProtocol_STATUS_Values = map[string]Dapr_AppProtocol_STATUS{
+ "grpc": Dapr_AppProtocol_STATUS_Grpc,
+ "http": Dapr_AppProtocol_STATUS_Http,
+}
+
+// +kubebuilder:validation:Enum={"debug","error","info","warn"}
+type Dapr_LogLevel string
+
+const (
+ Dapr_LogLevel_Debug = Dapr_LogLevel("debug")
+ Dapr_LogLevel_Error = Dapr_LogLevel("error")
+ Dapr_LogLevel_Info = Dapr_LogLevel("info")
+ Dapr_LogLevel_Warn = Dapr_LogLevel("warn")
+)
+
+// Mapping from string to Dapr_LogLevel
+var dapr_LogLevel_Values = map[string]Dapr_LogLevel{
+ "debug": Dapr_LogLevel_Debug,
+ "error": Dapr_LogLevel_Error,
+ "info": Dapr_LogLevel_Info,
+ "warn": Dapr_LogLevel_Warn,
+}
+
+type Dapr_LogLevel_STATUS string
+
+const (
+ Dapr_LogLevel_STATUS_Debug = Dapr_LogLevel_STATUS("debug")
+ Dapr_LogLevel_STATUS_Error = Dapr_LogLevel_STATUS("error")
+ Dapr_LogLevel_STATUS_Info = Dapr_LogLevel_STATUS("info")
+ Dapr_LogLevel_STATUS_Warn = Dapr_LogLevel_STATUS("warn")
+)
+
+// Mapping from string to Dapr_LogLevel_STATUS
+var dapr_LogLevel_STATUS_Values = map[string]Dapr_LogLevel_STATUS{
+ "debug": Dapr_LogLevel_STATUS_Debug,
+ "error": Dapr_LogLevel_STATUS_Error,
+ "info": Dapr_LogLevel_STATUS_Info,
+ "warn": Dapr_LogLevel_STATUS_Warn,
+}
+
+// Container App container environment variable.
+type EnvironmentVar struct {
+ // Name: Environment variable name.
+ Name *string `json:"name,omitempty"`
+
+ // SecretRef: Name of the Container App secret from which to pull the environment variable value.
+ SecretRef *string `json:"secretRef,omitempty"`
+
+ // Value: Non-secret environment variable value.
+ Value *string `json:"value,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &EnvironmentVar{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (environmentVar *EnvironmentVar) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if environmentVar == nil {
+ return nil, nil
+ }
+ result := &arm.EnvironmentVar{}
+
+ // Set property "Name":
+ if environmentVar.Name != nil {
+ name := *environmentVar.Name
+ result.Name = &name
+ }
+
+ // Set property "SecretRef":
+ if environmentVar.SecretRef != nil {
+ secretRef := *environmentVar.SecretRef
+ result.SecretRef = &secretRef
+ }
+
+ // Set property "Value":
+ if environmentVar.Value != nil {
+ value := *environmentVar.Value
+ result.Value = &value
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (environmentVar *EnvironmentVar) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.EnvironmentVar{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (environmentVar *EnvironmentVar) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.EnvironmentVar)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.EnvironmentVar, got %T", armInput)
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ environmentVar.Name = &name
+ }
+
+ // Set property "SecretRef":
+ if typedInput.SecretRef != nil {
+ secretRef := *typedInput.SecretRef
+ environmentVar.SecretRef = &secretRef
+ }
+
+ // Set property "Value":
+ if typedInput.Value != nil {
+ value := *typedInput.Value
+ environmentVar.Value = &value
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_EnvironmentVar populates our EnvironmentVar from the provided source EnvironmentVar
+func (environmentVar *EnvironmentVar) AssignProperties_From_EnvironmentVar(source *storage.EnvironmentVar) error {
+
+ // Name
+ environmentVar.Name = genruntime.ClonePointerToString(source.Name)
+
+ // SecretRef
+ environmentVar.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // Value
+ environmentVar.Value = genruntime.ClonePointerToString(source.Value)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_EnvironmentVar populates the provided destination EnvironmentVar from our EnvironmentVar
+func (environmentVar *EnvironmentVar) AssignProperties_To_EnvironmentVar(destination *storage.EnvironmentVar) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(environmentVar.Name)
+
+ // SecretRef
+ destination.SecretRef = genruntime.ClonePointerToString(environmentVar.SecretRef)
+
+ // Value
+ destination.Value = genruntime.ClonePointerToString(environmentVar.Value)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_EnvironmentVar_STATUS populates our EnvironmentVar from the provided source EnvironmentVar_STATUS
+func (environmentVar *EnvironmentVar) Initialize_From_EnvironmentVar_STATUS(source *EnvironmentVar_STATUS) error {
+
+ // Name
+ environmentVar.Name = genruntime.ClonePointerToString(source.Name)
+
+ // SecretRef
+ environmentVar.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // Value
+ environmentVar.Value = genruntime.ClonePointerToString(source.Value)
+
+ // No error
+ return nil
+}
+
+// Container App container environment variable.
+type EnvironmentVar_STATUS struct {
+ // Name: Environment variable name.
+ Name *string `json:"name,omitempty"`
+
+ // SecretRef: Name of the Container App secret from which to pull the environment variable value.
+ SecretRef *string `json:"secretRef,omitempty"`
+
+ // Value: Non-secret environment variable value.
+ Value *string `json:"value,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &EnvironmentVar_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (environmentVar *EnvironmentVar_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.EnvironmentVar_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (environmentVar *EnvironmentVar_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.EnvironmentVar_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.EnvironmentVar_STATUS, got %T", armInput)
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ environmentVar.Name = &name
+ }
+
+ // Set property "SecretRef":
+ if typedInput.SecretRef != nil {
+ secretRef := *typedInput.SecretRef
+ environmentVar.SecretRef = &secretRef
+ }
+
+ // Set property "Value":
+ if typedInput.Value != nil {
+ value := *typedInput.Value
+ environmentVar.Value = &value
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_EnvironmentVar_STATUS populates our EnvironmentVar_STATUS from the provided source EnvironmentVar_STATUS
+func (environmentVar *EnvironmentVar_STATUS) AssignProperties_From_EnvironmentVar_STATUS(source *storage.EnvironmentVar_STATUS) error {
+
+ // Name
+ environmentVar.Name = genruntime.ClonePointerToString(source.Name)
+
+ // SecretRef
+ environmentVar.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // Value
+ environmentVar.Value = genruntime.ClonePointerToString(source.Value)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_EnvironmentVar_STATUS populates the provided destination EnvironmentVar_STATUS from our EnvironmentVar_STATUS
+func (environmentVar *EnvironmentVar_STATUS) AssignProperties_To_EnvironmentVar_STATUS(destination *storage.EnvironmentVar_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(environmentVar.Name)
+
+ // SecretRef
+ destination.SecretRef = genruntime.ClonePointerToString(environmentVar.SecretRef)
+
+ // Value
+ destination.Value = genruntime.ClonePointerToString(environmentVar.Value)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"accept","ignore","require"}
+type Ingress_ClientCertificateMode string
+
+const (
+ Ingress_ClientCertificateMode_Accept = Ingress_ClientCertificateMode("accept")
+ Ingress_ClientCertificateMode_Ignore = Ingress_ClientCertificateMode("ignore")
+ Ingress_ClientCertificateMode_Require = Ingress_ClientCertificateMode("require")
+)
+
+// Mapping from string to Ingress_ClientCertificateMode
+var ingress_ClientCertificateMode_Values = map[string]Ingress_ClientCertificateMode{
+ "accept": Ingress_ClientCertificateMode_Accept,
+ "ignore": Ingress_ClientCertificateMode_Ignore,
+ "require": Ingress_ClientCertificateMode_Require,
+}
+
+type Ingress_ClientCertificateMode_STATUS string
+
+const (
+ Ingress_ClientCertificateMode_STATUS_Accept = Ingress_ClientCertificateMode_STATUS("accept")
+ Ingress_ClientCertificateMode_STATUS_Ignore = Ingress_ClientCertificateMode_STATUS("ignore")
+ Ingress_ClientCertificateMode_STATUS_Require = Ingress_ClientCertificateMode_STATUS("require")
+)
+
+// Mapping from string to Ingress_ClientCertificateMode_STATUS
+var ingress_ClientCertificateMode_STATUS_Values = map[string]Ingress_ClientCertificateMode_STATUS{
+ "accept": Ingress_ClientCertificateMode_STATUS_Accept,
+ "ignore": Ingress_ClientCertificateMode_STATUS_Ignore,
+ "require": Ingress_ClientCertificateMode_STATUS_Require,
+}
+
+type Ingress_StickySessions struct {
+ // Affinity: Sticky Session Affinity
+ Affinity *Ingress_StickySessions_Affinity `json:"affinity,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Ingress_StickySessions{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (sessions *Ingress_StickySessions) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if sessions == nil {
+ return nil, nil
+ }
+ result := &arm.Ingress_StickySessions{}
+
+ // Set property "Affinity":
+ if sessions.Affinity != nil {
+ var temp string
+ temp = string(*sessions.Affinity)
+ affinity := arm.Ingress_StickySessions_Affinity(temp)
+ result.Affinity = &affinity
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (sessions *Ingress_StickySessions) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Ingress_StickySessions{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (sessions *Ingress_StickySessions) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Ingress_StickySessions)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Ingress_StickySessions, got %T", armInput)
+ }
+
+ // Set property "Affinity":
+ if typedInput.Affinity != nil {
+ var temp string
+ temp = string(*typedInput.Affinity)
+ affinity := Ingress_StickySessions_Affinity(temp)
+ sessions.Affinity = &affinity
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Ingress_StickySessions populates our Ingress_StickySessions from the provided source Ingress_StickySessions
+func (sessions *Ingress_StickySessions) AssignProperties_From_Ingress_StickySessions(source *storage.Ingress_StickySessions) error {
+
+ // Affinity
+ if source.Affinity != nil {
+ affinity := *source.Affinity
+ affinityTemp := genruntime.ToEnum(affinity, ingress_StickySessions_Affinity_Values)
+ sessions.Affinity = &affinityTemp
+ } else {
+ sessions.Affinity = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Ingress_StickySessions populates the provided destination Ingress_StickySessions from our Ingress_StickySessions
+func (sessions *Ingress_StickySessions) AssignProperties_To_Ingress_StickySessions(destination *storage.Ingress_StickySessions) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Affinity
+ if sessions.Affinity != nil {
+ affinity := string(*sessions.Affinity)
+ destination.Affinity = &affinity
+ } else {
+ destination.Affinity = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Ingress_StickySessions_STATUS populates our Ingress_StickySessions from the provided source Ingress_StickySessions_STATUS
+func (sessions *Ingress_StickySessions) Initialize_From_Ingress_StickySessions_STATUS(source *Ingress_StickySessions_STATUS) error {
+
+ // Affinity
+ if source.Affinity != nil {
+ affinity := genruntime.ToEnum(string(*source.Affinity), ingress_StickySessions_Affinity_Values)
+ sessions.Affinity = &affinity
+ } else {
+ sessions.Affinity = nil
+ }
+
+ // No error
+ return nil
+}
+
+type Ingress_StickySessions_STATUS struct {
+ // Affinity: Sticky Session Affinity
+ Affinity *Ingress_StickySessions_Affinity_STATUS `json:"affinity,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Ingress_StickySessions_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (sessions *Ingress_StickySessions_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Ingress_StickySessions_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (sessions *Ingress_StickySessions_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Ingress_StickySessions_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Ingress_StickySessions_STATUS, got %T", armInput)
+ }
+
+ // Set property "Affinity":
+ if typedInput.Affinity != nil {
+ var temp string
+ temp = string(*typedInput.Affinity)
+ affinity := Ingress_StickySessions_Affinity_STATUS(temp)
+ sessions.Affinity = &affinity
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Ingress_StickySessions_STATUS populates our Ingress_StickySessions_STATUS from the provided source Ingress_StickySessions_STATUS
+func (sessions *Ingress_StickySessions_STATUS) AssignProperties_From_Ingress_StickySessions_STATUS(source *storage.Ingress_StickySessions_STATUS) error {
+
+ // Affinity
+ if source.Affinity != nil {
+ affinity := *source.Affinity
+ affinityTemp := genruntime.ToEnum(affinity, ingress_StickySessions_Affinity_STATUS_Values)
+ sessions.Affinity = &affinityTemp
+ } else {
+ sessions.Affinity = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Ingress_StickySessions_STATUS populates the provided destination Ingress_StickySessions_STATUS from our Ingress_StickySessions_STATUS
+func (sessions *Ingress_StickySessions_STATUS) AssignProperties_To_Ingress_StickySessions_STATUS(destination *storage.Ingress_StickySessions_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Affinity
+ if sessions.Affinity != nil {
+ affinity := string(*sessions.Affinity)
+ destination.Affinity = &affinity
+ } else {
+ destination.Affinity = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"auto","http","http2","tcp"}
+type Ingress_Transport string
+
+const (
+ Ingress_Transport_Auto = Ingress_Transport("auto")
+ Ingress_Transport_Http = Ingress_Transport("http")
+ Ingress_Transport_Http2 = Ingress_Transport("http2")
+ Ingress_Transport_Tcp = Ingress_Transport("tcp")
+)
+
+// Mapping from string to Ingress_Transport
+var ingress_Transport_Values = map[string]Ingress_Transport{
+ "auto": Ingress_Transport_Auto,
+ "http": Ingress_Transport_Http,
+ "http2": Ingress_Transport_Http2,
+ "tcp": Ingress_Transport_Tcp,
+}
+
+type Ingress_Transport_STATUS string
+
+const (
+ Ingress_Transport_STATUS_Auto = Ingress_Transport_STATUS("auto")
+ Ingress_Transport_STATUS_Http = Ingress_Transport_STATUS("http")
+ Ingress_Transport_STATUS_Http2 = Ingress_Transport_STATUS("http2")
+ Ingress_Transport_STATUS_Tcp = Ingress_Transport_STATUS("tcp")
+)
+
+// Mapping from string to Ingress_Transport_STATUS
+var ingress_Transport_STATUS_Values = map[string]Ingress_Transport_STATUS{
+ "auto": Ingress_Transport_STATUS_Auto,
+ "http": Ingress_Transport_STATUS_Http,
+ "http2": Ingress_Transport_STATUS_Http2,
+ "tcp": Ingress_Transport_STATUS_Tcp,
+}
+
+// Port mappings of container app ingress
+type IngressPortMapping struct {
+ // ExposedPort: Specifies the exposed port for the target port. If not specified, it defaults to target port
+ ExposedPort *int `json:"exposedPort,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // External: Specifies whether the app port is accessible outside of the environment
+ External *bool `json:"external,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // TargetPort: Specifies the port user's container listens on
+ TargetPort *int `json:"targetPort,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &IngressPortMapping{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (mapping *IngressPortMapping) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if mapping == nil {
+ return nil, nil
+ }
+ result := &arm.IngressPortMapping{}
+
+ // Set property "ExposedPort":
+ if mapping.ExposedPort != nil {
+ exposedPort := *mapping.ExposedPort
+ result.ExposedPort = &exposedPort
+ }
+
+ // Set property "External":
+ if mapping.External != nil {
+ external := *mapping.External
+ result.External = &external
+ }
+
+ // Set property "TargetPort":
+ if mapping.TargetPort != nil {
+ targetPort := *mapping.TargetPort
+ result.TargetPort = &targetPort
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (mapping *IngressPortMapping) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.IngressPortMapping{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (mapping *IngressPortMapping) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.IngressPortMapping)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.IngressPortMapping, got %T", armInput)
+ }
+
+ // Set property "ExposedPort":
+ if typedInput.ExposedPort != nil {
+ exposedPort := *typedInput.ExposedPort
+ mapping.ExposedPort = &exposedPort
+ }
+
+ // Set property "External":
+ if typedInput.External != nil {
+ external := *typedInput.External
+ mapping.External = &external
+ }
+
+ // Set property "TargetPort":
+ if typedInput.TargetPort != nil {
+ targetPort := *typedInput.TargetPort
+ mapping.TargetPort = &targetPort
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_IngressPortMapping populates our IngressPortMapping from the provided source IngressPortMapping
+func (mapping *IngressPortMapping) AssignProperties_From_IngressPortMapping(source *storage.IngressPortMapping) error {
+
+ // ExposedPort
+ mapping.ExposedPort = genruntime.ClonePointerToInt(source.ExposedPort)
+
+ // External
+ if source.External != nil {
+ external := *source.External
+ mapping.External = &external
+ } else {
+ mapping.External = nil
+ }
+
+ // TargetPort
+ mapping.TargetPort = genruntime.ClonePointerToInt(source.TargetPort)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_IngressPortMapping populates the provided destination IngressPortMapping from our IngressPortMapping
+func (mapping *IngressPortMapping) AssignProperties_To_IngressPortMapping(destination *storage.IngressPortMapping) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ExposedPort
+ destination.ExposedPort = genruntime.ClonePointerToInt(mapping.ExposedPort)
+
+ // External
+ if mapping.External != nil {
+ external := *mapping.External
+ destination.External = &external
+ } else {
+ destination.External = nil
+ }
+
+ // TargetPort
+ destination.TargetPort = genruntime.ClonePointerToInt(mapping.TargetPort)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_IngressPortMapping_STATUS populates our IngressPortMapping from the provided source IngressPortMapping_STATUS
+func (mapping *IngressPortMapping) Initialize_From_IngressPortMapping_STATUS(source *IngressPortMapping_STATUS) error {
+
+ // ExposedPort
+ mapping.ExposedPort = genruntime.ClonePointerToInt(source.ExposedPort)
+
+ // External
+ if source.External != nil {
+ external := *source.External
+ mapping.External = &external
+ } else {
+ mapping.External = nil
+ }
+
+ // TargetPort
+ mapping.TargetPort = genruntime.ClonePointerToInt(source.TargetPort)
+
+ // No error
+ return nil
+}
+
+// Port mappings of container app ingress
+type IngressPortMapping_STATUS struct {
+ // ExposedPort: Specifies the exposed port for the target port. If not specified, it defaults to target port
+ ExposedPort *int `json:"exposedPort,omitempty"`
+
+ // External: Specifies whether the app port is accessible outside of the environment
+ External *bool `json:"external,omitempty"`
+
+ // TargetPort: Specifies the port user's container listens on
+ TargetPort *int `json:"targetPort,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &IngressPortMapping_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (mapping *IngressPortMapping_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.IngressPortMapping_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (mapping *IngressPortMapping_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.IngressPortMapping_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.IngressPortMapping_STATUS, got %T", armInput)
+ }
+
+ // Set property "ExposedPort":
+ if typedInput.ExposedPort != nil {
+ exposedPort := *typedInput.ExposedPort
+ mapping.ExposedPort = &exposedPort
+ }
+
+ // Set property "External":
+ if typedInput.External != nil {
+ external := *typedInput.External
+ mapping.External = &external
+ }
+
+ // Set property "TargetPort":
+ if typedInput.TargetPort != nil {
+ targetPort := *typedInput.TargetPort
+ mapping.TargetPort = &targetPort
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_IngressPortMapping_STATUS populates our IngressPortMapping_STATUS from the provided source IngressPortMapping_STATUS
+func (mapping *IngressPortMapping_STATUS) AssignProperties_From_IngressPortMapping_STATUS(source *storage.IngressPortMapping_STATUS) error {
+
+ // ExposedPort
+ mapping.ExposedPort = genruntime.ClonePointerToInt(source.ExposedPort)
+
+ // External
+ if source.External != nil {
+ external := *source.External
+ mapping.External = &external
+ } else {
+ mapping.External = nil
+ }
+
+ // TargetPort
+ mapping.TargetPort = genruntime.ClonePointerToInt(source.TargetPort)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_IngressPortMapping_STATUS populates the provided destination IngressPortMapping_STATUS from our IngressPortMapping_STATUS
+func (mapping *IngressPortMapping_STATUS) AssignProperties_To_IngressPortMapping_STATUS(destination *storage.IngressPortMapping_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ExposedPort
+ destination.ExposedPort = genruntime.ClonePointerToInt(mapping.ExposedPort)
+
+ // External
+ if mapping.External != nil {
+ external := *mapping.External
+ destination.External = &external
+ } else {
+ destination.External = nil
+ }
+
+ // TargetPort
+ destination.TargetPort = genruntime.ClonePointerToInt(mapping.TargetPort)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Rule to restrict incoming IP address.
+type IpSecurityRestrictionRule struct {
+ // +kubebuilder:validation:Required
+ // Action: Allow or Deny rules to determine for incoming IP. Note: Rules can only consist of ALL Allow or ALL Deny
+ Action *IpSecurityRestrictionRule_Action `json:"action,omitempty"`
+
+ // Description: Describe the IP restriction rule that is being sent to the container-app. This is an optional field.
+ Description *string `json:"description,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // IpAddressRange: CIDR notation to match incoming IP address
+ IpAddressRange *string `json:"ipAddressRange,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Name: Name for the IP restriction rule.
+ Name *string `json:"name,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &IpSecurityRestrictionRule{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (rule *IpSecurityRestrictionRule) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if rule == nil {
+ return nil, nil
+ }
+ result := &arm.IpSecurityRestrictionRule{}
+
+ // Set property "Action":
+ if rule.Action != nil {
+ var temp string
+ temp = string(*rule.Action)
+ action := arm.IpSecurityRestrictionRule_Action(temp)
+ result.Action = &action
+ }
+
+ // Set property "Description":
+ if rule.Description != nil {
+ description := *rule.Description
+ result.Description = &description
+ }
+
+ // Set property "IpAddressRange":
+ if rule.IpAddressRange != nil {
+ ipAddressRange := *rule.IpAddressRange
+ result.IpAddressRange = &ipAddressRange
+ }
+
+ // Set property "Name":
+ if rule.Name != nil {
+ name := *rule.Name
+ result.Name = &name
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *IpSecurityRestrictionRule) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.IpSecurityRestrictionRule{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *IpSecurityRestrictionRule) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.IpSecurityRestrictionRule)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.IpSecurityRestrictionRule, got %T", armInput)
+ }
+
+ // Set property "Action":
+ if typedInput.Action != nil {
+ var temp string
+ temp = string(*typedInput.Action)
+ action := IpSecurityRestrictionRule_Action(temp)
+ rule.Action = &action
+ }
+
+ // Set property "Description":
+ if typedInput.Description != nil {
+ description := *typedInput.Description
+ rule.Description = &description
+ }
+
+ // Set property "IpAddressRange":
+ if typedInput.IpAddressRange != nil {
+ ipAddressRange := *typedInput.IpAddressRange
+ rule.IpAddressRange = &ipAddressRange
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ rule.Name = &name
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_IpSecurityRestrictionRule populates our IpSecurityRestrictionRule from the provided source IpSecurityRestrictionRule
+func (rule *IpSecurityRestrictionRule) AssignProperties_From_IpSecurityRestrictionRule(source *storage.IpSecurityRestrictionRule) error {
+
+ // Action
+ if source.Action != nil {
+ action := *source.Action
+ actionTemp := genruntime.ToEnum(action, ipSecurityRestrictionRule_Action_Values)
+ rule.Action = &actionTemp
+ } else {
+ rule.Action = nil
+ }
+
+ // Description
+ rule.Description = genruntime.ClonePointerToString(source.Description)
+
+ // IpAddressRange
+ rule.IpAddressRange = genruntime.ClonePointerToString(source.IpAddressRange)
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_IpSecurityRestrictionRule populates the provided destination IpSecurityRestrictionRule from our IpSecurityRestrictionRule
+func (rule *IpSecurityRestrictionRule) AssignProperties_To_IpSecurityRestrictionRule(destination *storage.IpSecurityRestrictionRule) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Action
+ if rule.Action != nil {
+ action := string(*rule.Action)
+ destination.Action = &action
+ } else {
+ destination.Action = nil
+ }
+
+ // Description
+ destination.Description = genruntime.ClonePointerToString(rule.Description)
+
+ // IpAddressRange
+ destination.IpAddressRange = genruntime.ClonePointerToString(rule.IpAddressRange)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(rule.Name)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_IpSecurityRestrictionRule_STATUS populates our IpSecurityRestrictionRule from the provided source IpSecurityRestrictionRule_STATUS
+func (rule *IpSecurityRestrictionRule) Initialize_From_IpSecurityRestrictionRule_STATUS(source *IpSecurityRestrictionRule_STATUS) error {
+
+ // Action
+ if source.Action != nil {
+ action := genruntime.ToEnum(string(*source.Action), ipSecurityRestrictionRule_Action_Values)
+ rule.Action = &action
+ } else {
+ rule.Action = nil
+ }
+
+ // Description
+ rule.Description = genruntime.ClonePointerToString(source.Description)
+
+ // IpAddressRange
+ rule.IpAddressRange = genruntime.ClonePointerToString(source.IpAddressRange)
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // No error
+ return nil
+}
+
+// Rule to restrict incoming IP address.
+type IpSecurityRestrictionRule_STATUS struct {
+ // Action: Allow or Deny rules to determine for incoming IP. Note: Rules can only consist of ALL Allow or ALL Deny
+ Action *IpSecurityRestrictionRule_Action_STATUS `json:"action,omitempty"`
+
+ // Description: Describe the IP restriction rule that is being sent to the container-app. This is an optional field.
+ Description *string `json:"description,omitempty"`
+
+ // IpAddressRange: CIDR notation to match incoming IP address
+ IpAddressRange *string `json:"ipAddressRange,omitempty"`
+
+ // Name: Name for the IP restriction rule.
+ Name *string `json:"name,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &IpSecurityRestrictionRule_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *IpSecurityRestrictionRule_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.IpSecurityRestrictionRule_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *IpSecurityRestrictionRule_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.IpSecurityRestrictionRule_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.IpSecurityRestrictionRule_STATUS, got %T", armInput)
+ }
+
+ // Set property "Action":
+ if typedInput.Action != nil {
+ var temp string
+ temp = string(*typedInput.Action)
+ action := IpSecurityRestrictionRule_Action_STATUS(temp)
+ rule.Action = &action
+ }
+
+ // Set property "Description":
+ if typedInput.Description != nil {
+ description := *typedInput.Description
+ rule.Description = &description
+ }
+
+ // Set property "IpAddressRange":
+ if typedInput.IpAddressRange != nil {
+ ipAddressRange := *typedInput.IpAddressRange
+ rule.IpAddressRange = &ipAddressRange
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ rule.Name = &name
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_IpSecurityRestrictionRule_STATUS populates our IpSecurityRestrictionRule_STATUS from the provided source IpSecurityRestrictionRule_STATUS
+func (rule *IpSecurityRestrictionRule_STATUS) AssignProperties_From_IpSecurityRestrictionRule_STATUS(source *storage.IpSecurityRestrictionRule_STATUS) error {
+
+ // Action
+ if source.Action != nil {
+ action := *source.Action
+ actionTemp := genruntime.ToEnum(action, ipSecurityRestrictionRule_Action_STATUS_Values)
+ rule.Action = &actionTemp
+ } else {
+ rule.Action = nil
+ }
+
+ // Description
+ rule.Description = genruntime.ClonePointerToString(source.Description)
+
+ // IpAddressRange
+ rule.IpAddressRange = genruntime.ClonePointerToString(source.IpAddressRange)
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_IpSecurityRestrictionRule_STATUS populates the provided destination IpSecurityRestrictionRule_STATUS from our IpSecurityRestrictionRule_STATUS
+func (rule *IpSecurityRestrictionRule_STATUS) AssignProperties_To_IpSecurityRestrictionRule_STATUS(destination *storage.IpSecurityRestrictionRule_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Action
+ if rule.Action != nil {
+ action := string(*rule.Action)
+ destination.Action = &action
+ } else {
+ destination.Action = nil
+ }
+
+ // Description
+ destination.Description = genruntime.ClonePointerToString(rule.Description)
+
+ // IpAddressRange
+ destination.IpAddressRange = genruntime.ClonePointerToString(rule.IpAddressRange)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(rule.Name)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App container scaling rule.
+type ScaleRule struct {
+ // AzureQueue: Azure Queue based scaling.
+ AzureQueue *QueueScaleRule `json:"azureQueue,omitempty"`
+
+ // Custom: Custom scale rule.
+ Custom *CustomScaleRule `json:"custom,omitempty"`
+
+ // Http: HTTP requests based scaling.
+ Http *HttpScaleRule `json:"http,omitempty"`
+
+ // Name: Scale Rule Name
+ Name *string `json:"name,omitempty"`
+
+ // Tcp: Tcp requests based scaling.
+ Tcp *TcpScaleRule `json:"tcp,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ScaleRule{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (rule *ScaleRule) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if rule == nil {
+ return nil, nil
+ }
+ result := &arm.ScaleRule{}
+
+ // Set property "AzureQueue":
+ if rule.AzureQueue != nil {
+ azureQueue_ARM, err := (*rule.AzureQueue).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ azureQueue := *azureQueue_ARM.(*arm.QueueScaleRule)
+ result.AzureQueue = &azureQueue
+ }
+
+ // Set property "Custom":
+ if rule.Custom != nil {
+ custom_ARM, err := (*rule.Custom).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ custom := *custom_ARM.(*arm.CustomScaleRule)
+ result.Custom = &custom
+ }
+
+ // Set property "Http":
+ if rule.Http != nil {
+ http_ARM, err := (*rule.Http).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ http := *http_ARM.(*arm.HttpScaleRule)
+ result.Http = &http
+ }
+
+ // Set property "Name":
+ if rule.Name != nil {
+ name := *rule.Name
+ result.Name = &name
+ }
+
+ // Set property "Tcp":
+ if rule.Tcp != nil {
+ tcp_ARM, err := (*rule.Tcp).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ tcp := *tcp_ARM.(*arm.TcpScaleRule)
+ result.Tcp = &tcp
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *ScaleRule) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ScaleRule{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *ScaleRule) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ScaleRule)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ScaleRule, got %T", armInput)
+ }
+
+ // Set property "AzureQueue":
+ if typedInput.AzureQueue != nil {
+ var azureQueue1 QueueScaleRule
+ err := azureQueue1.PopulateFromARM(owner, *typedInput.AzureQueue)
+ if err != nil {
+ return err
+ }
+ azureQueue := azureQueue1
+ rule.AzureQueue = &azureQueue
+ }
+
+ // Set property "Custom":
+ if typedInput.Custom != nil {
+ var custom1 CustomScaleRule
+ err := custom1.PopulateFromARM(owner, *typedInput.Custom)
+ if err != nil {
+ return err
+ }
+ custom := custom1
+ rule.Custom = &custom
+ }
+
+ // Set property "Http":
+ if typedInput.Http != nil {
+ var http1 HttpScaleRule
+ err := http1.PopulateFromARM(owner, *typedInput.Http)
+ if err != nil {
+ return err
+ }
+ http := http1
+ rule.Http = &http
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ rule.Name = &name
+ }
+
+ // Set property "Tcp":
+ if typedInput.Tcp != nil {
+ var tcp1 TcpScaleRule
+ err := tcp1.PopulateFromARM(owner, *typedInput.Tcp)
+ if err != nil {
+ return err
+ }
+ tcp := tcp1
+ rule.Tcp = &tcp
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ScaleRule populates our ScaleRule from the provided source ScaleRule
+func (rule *ScaleRule) AssignProperties_From_ScaleRule(source *storage.ScaleRule) error {
+
+ // AzureQueue
+ if source.AzureQueue != nil {
+ var azureQueue QueueScaleRule
+ err := azureQueue.AssignProperties_From_QueueScaleRule(source.AzureQueue)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_QueueScaleRule() to populate field AzureQueue")
+ }
+ rule.AzureQueue = &azureQueue
+ } else {
+ rule.AzureQueue = nil
+ }
+
+ // Custom
+ if source.Custom != nil {
+ var custom CustomScaleRule
+ err := custom.AssignProperties_From_CustomScaleRule(source.Custom)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CustomScaleRule() to populate field Custom")
+ }
+ rule.Custom = &custom
+ } else {
+ rule.Custom = nil
+ }
+
+ // Http
+ if source.Http != nil {
+ var http HttpScaleRule
+ err := http.AssignProperties_From_HttpScaleRule(source.Http)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_HttpScaleRule() to populate field Http")
+ }
+ rule.Http = &http
+ } else {
+ rule.Http = nil
+ }
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Tcp
+ if source.Tcp != nil {
+ var tcp TcpScaleRule
+ err := tcp.AssignProperties_From_TcpScaleRule(source.Tcp)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_TcpScaleRule() to populate field Tcp")
+ }
+ rule.Tcp = &tcp
+ } else {
+ rule.Tcp = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ScaleRule populates the provided destination ScaleRule from our ScaleRule
+func (rule *ScaleRule) AssignProperties_To_ScaleRule(destination *storage.ScaleRule) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AzureQueue
+ if rule.AzureQueue != nil {
+ var azureQueue storage.QueueScaleRule
+ err := rule.AzureQueue.AssignProperties_To_QueueScaleRule(&azureQueue)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_QueueScaleRule() to populate field AzureQueue")
+ }
+ destination.AzureQueue = &azureQueue
+ } else {
+ destination.AzureQueue = nil
+ }
+
+ // Custom
+ if rule.Custom != nil {
+ var custom storage.CustomScaleRule
+ err := rule.Custom.AssignProperties_To_CustomScaleRule(&custom)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CustomScaleRule() to populate field Custom")
+ }
+ destination.Custom = &custom
+ } else {
+ destination.Custom = nil
+ }
+
+ // Http
+ if rule.Http != nil {
+ var http storage.HttpScaleRule
+ err := rule.Http.AssignProperties_To_HttpScaleRule(&http)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_HttpScaleRule() to populate field Http")
+ }
+ destination.Http = &http
+ } else {
+ destination.Http = nil
+ }
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(rule.Name)
+
+ // Tcp
+ if rule.Tcp != nil {
+ var tcp storage.TcpScaleRule
+ err := rule.Tcp.AssignProperties_To_TcpScaleRule(&tcp)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_TcpScaleRule() to populate field Tcp")
+ }
+ destination.Tcp = &tcp
+ } else {
+ destination.Tcp = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ScaleRule_STATUS populates our ScaleRule from the provided source ScaleRule_STATUS
+func (rule *ScaleRule) Initialize_From_ScaleRule_STATUS(source *ScaleRule_STATUS) error {
+
+ // AzureQueue
+ if source.AzureQueue != nil {
+ var azureQueue QueueScaleRule
+ err := azureQueue.Initialize_From_QueueScaleRule_STATUS(source.AzureQueue)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_QueueScaleRule_STATUS() to populate field AzureQueue")
+ }
+ rule.AzureQueue = &azureQueue
+ } else {
+ rule.AzureQueue = nil
+ }
+
+ // Custom
+ if source.Custom != nil {
+ var custom CustomScaleRule
+ err := custom.Initialize_From_CustomScaleRule_STATUS(source.Custom)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_CustomScaleRule_STATUS() to populate field Custom")
+ }
+ rule.Custom = &custom
+ } else {
+ rule.Custom = nil
+ }
+
+ // Http
+ if source.Http != nil {
+ var http HttpScaleRule
+ err := http.Initialize_From_HttpScaleRule_STATUS(source.Http)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_HttpScaleRule_STATUS() to populate field Http")
+ }
+ rule.Http = &http
+ } else {
+ rule.Http = nil
+ }
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Tcp
+ if source.Tcp != nil {
+ var tcp TcpScaleRule
+ err := tcp.Initialize_From_TcpScaleRule_STATUS(source.Tcp)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_TcpScaleRule_STATUS() to populate field Tcp")
+ }
+ rule.Tcp = &tcp
+ } else {
+ rule.Tcp = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App container scaling rule.
+type ScaleRule_STATUS struct {
+ // AzureQueue: Azure Queue based scaling.
+ AzureQueue *QueueScaleRule_STATUS `json:"azureQueue,omitempty"`
+
+ // Custom: Custom scale rule.
+ Custom *CustomScaleRule_STATUS `json:"custom,omitempty"`
+
+ // Http: HTTP requests based scaling.
+ Http *HttpScaleRule_STATUS `json:"http,omitempty"`
+
+ // Name: Scale Rule Name
+ Name *string `json:"name,omitempty"`
+
+ // Tcp: Tcp requests based scaling.
+ Tcp *TcpScaleRule_STATUS `json:"tcp,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ScaleRule_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *ScaleRule_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ScaleRule_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *ScaleRule_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ScaleRule_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ScaleRule_STATUS, got %T", armInput)
+ }
+
+ // Set property "AzureQueue":
+ if typedInput.AzureQueue != nil {
+ var azureQueue1 QueueScaleRule_STATUS
+ err := azureQueue1.PopulateFromARM(owner, *typedInput.AzureQueue)
+ if err != nil {
+ return err
+ }
+ azureQueue := azureQueue1
+ rule.AzureQueue = &azureQueue
+ }
+
+ // Set property "Custom":
+ if typedInput.Custom != nil {
+ var custom1 CustomScaleRule_STATUS
+ err := custom1.PopulateFromARM(owner, *typedInput.Custom)
+ if err != nil {
+ return err
+ }
+ custom := custom1
+ rule.Custom = &custom
+ }
+
+ // Set property "Http":
+ if typedInput.Http != nil {
+ var http1 HttpScaleRule_STATUS
+ err := http1.PopulateFromARM(owner, *typedInput.Http)
+ if err != nil {
+ return err
+ }
+ http := http1
+ rule.Http = &http
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ rule.Name = &name
+ }
+
+ // Set property "Tcp":
+ if typedInput.Tcp != nil {
+ var tcp1 TcpScaleRule_STATUS
+ err := tcp1.PopulateFromARM(owner, *typedInput.Tcp)
+ if err != nil {
+ return err
+ }
+ tcp := tcp1
+ rule.Tcp = &tcp
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ScaleRule_STATUS populates our ScaleRule_STATUS from the provided source ScaleRule_STATUS
+func (rule *ScaleRule_STATUS) AssignProperties_From_ScaleRule_STATUS(source *storage.ScaleRule_STATUS) error {
+
+ // AzureQueue
+ if source.AzureQueue != nil {
+ var azureQueue QueueScaleRule_STATUS
+ err := azureQueue.AssignProperties_From_QueueScaleRule_STATUS(source.AzureQueue)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_QueueScaleRule_STATUS() to populate field AzureQueue")
+ }
+ rule.AzureQueue = &azureQueue
+ } else {
+ rule.AzureQueue = nil
+ }
+
+ // Custom
+ if source.Custom != nil {
+ var custom CustomScaleRule_STATUS
+ err := custom.AssignProperties_From_CustomScaleRule_STATUS(source.Custom)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CustomScaleRule_STATUS() to populate field Custom")
+ }
+ rule.Custom = &custom
+ } else {
+ rule.Custom = nil
+ }
+
+ // Http
+ if source.Http != nil {
+ var http HttpScaleRule_STATUS
+ err := http.AssignProperties_From_HttpScaleRule_STATUS(source.Http)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_HttpScaleRule_STATUS() to populate field Http")
+ }
+ rule.Http = &http
+ } else {
+ rule.Http = nil
+ }
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Tcp
+ if source.Tcp != nil {
+ var tcp TcpScaleRule_STATUS
+ err := tcp.AssignProperties_From_TcpScaleRule_STATUS(source.Tcp)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_TcpScaleRule_STATUS() to populate field Tcp")
+ }
+ rule.Tcp = &tcp
+ } else {
+ rule.Tcp = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ScaleRule_STATUS populates the provided destination ScaleRule_STATUS from our ScaleRule_STATUS
+func (rule *ScaleRule_STATUS) AssignProperties_To_ScaleRule_STATUS(destination *storage.ScaleRule_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AzureQueue
+ if rule.AzureQueue != nil {
+ var azureQueue storage.QueueScaleRule_STATUS
+ err := rule.AzureQueue.AssignProperties_To_QueueScaleRule_STATUS(&azureQueue)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_QueueScaleRule_STATUS() to populate field AzureQueue")
+ }
+ destination.AzureQueue = &azureQueue
+ } else {
+ destination.AzureQueue = nil
+ }
+
+ // Custom
+ if rule.Custom != nil {
+ var custom storage.CustomScaleRule_STATUS
+ err := rule.Custom.AssignProperties_To_CustomScaleRule_STATUS(&custom)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CustomScaleRule_STATUS() to populate field Custom")
+ }
+ destination.Custom = &custom
+ } else {
+ destination.Custom = nil
+ }
+
+ // Http
+ if rule.Http != nil {
+ var http storage.HttpScaleRule_STATUS
+ err := rule.Http.AssignProperties_To_HttpScaleRule_STATUS(&http)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_HttpScaleRule_STATUS() to populate field Http")
+ }
+ destination.Http = &http
+ } else {
+ destination.Http = nil
+ }
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(rule.Name)
+
+ // Tcp
+ if rule.Tcp != nil {
+ var tcp storage.TcpScaleRule_STATUS
+ err := rule.Tcp.AssignProperties_To_TcpScaleRule_STATUS(&tcp)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_TcpScaleRule_STATUS() to populate field Tcp")
+ }
+ destination.Tcp = &tcp
+ } else {
+ destination.Tcp = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Secret to be added to volume.
+type SecretVolumeItem struct {
+ // Path: Path to project secret to. If no path is provided, path defaults to name of secret listed in secretRef.
+ Path *string `json:"path,omitempty"`
+
+ // SecretRef: Name of the Container App secret from which to pull the secret value.
+ SecretRef *string `json:"secretRef,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &SecretVolumeItem{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (item *SecretVolumeItem) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if item == nil {
+ return nil, nil
+ }
+ result := &arm.SecretVolumeItem{}
+
+ // Set property "Path":
+ if item.Path != nil {
+ path := *item.Path
+ result.Path = &path
+ }
+
+ // Set property "SecretRef":
+ if item.SecretRef != nil {
+ secretRef := *item.SecretRef
+ result.SecretRef = &secretRef
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (item *SecretVolumeItem) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.SecretVolumeItem{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (item *SecretVolumeItem) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.SecretVolumeItem)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.SecretVolumeItem, got %T", armInput)
+ }
+
+ // Set property "Path":
+ if typedInput.Path != nil {
+ path := *typedInput.Path
+ item.Path = &path
+ }
+
+ // Set property "SecretRef":
+ if typedInput.SecretRef != nil {
+ secretRef := *typedInput.SecretRef
+ item.SecretRef = &secretRef
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_SecretVolumeItem populates our SecretVolumeItem from the provided source SecretVolumeItem
+func (item *SecretVolumeItem) AssignProperties_From_SecretVolumeItem(source *storage.SecretVolumeItem) error {
+
+ // Path
+ item.Path = genruntime.ClonePointerToString(source.Path)
+
+ // SecretRef
+ item.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_SecretVolumeItem populates the provided destination SecretVolumeItem from our SecretVolumeItem
+func (item *SecretVolumeItem) AssignProperties_To_SecretVolumeItem(destination *storage.SecretVolumeItem) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Path
+ destination.Path = genruntime.ClonePointerToString(item.Path)
+
+ // SecretRef
+ destination.SecretRef = genruntime.ClonePointerToString(item.SecretRef)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_SecretVolumeItem_STATUS populates our SecretVolumeItem from the provided source SecretVolumeItem_STATUS
+func (item *SecretVolumeItem) Initialize_From_SecretVolumeItem_STATUS(source *SecretVolumeItem_STATUS) error {
+
+ // Path
+ item.Path = genruntime.ClonePointerToString(source.Path)
+
+ // SecretRef
+ item.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // No error
+ return nil
+}
+
+// Secret to be added to volume.
+type SecretVolumeItem_STATUS struct {
+ // Path: Path to project secret to. If no path is provided, path defaults to name of secret listed in secretRef.
+ Path *string `json:"path,omitempty"`
+
+ // SecretRef: Name of the Container App secret from which to pull the secret value.
+ SecretRef *string `json:"secretRef,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &SecretVolumeItem_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (item *SecretVolumeItem_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.SecretVolumeItem_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (item *SecretVolumeItem_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.SecretVolumeItem_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.SecretVolumeItem_STATUS, got %T", armInput)
+ }
+
+ // Set property "Path":
+ if typedInput.Path != nil {
+ path := *typedInput.Path
+ item.Path = &path
+ }
+
+ // Set property "SecretRef":
+ if typedInput.SecretRef != nil {
+ secretRef := *typedInput.SecretRef
+ item.SecretRef = &secretRef
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_SecretVolumeItem_STATUS populates our SecretVolumeItem_STATUS from the provided source SecretVolumeItem_STATUS
+func (item *SecretVolumeItem_STATUS) AssignProperties_From_SecretVolumeItem_STATUS(source *storage.SecretVolumeItem_STATUS) error {
+
+ // Path
+ item.Path = genruntime.ClonePointerToString(source.Path)
+
+ // SecretRef
+ item.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_SecretVolumeItem_STATUS populates the provided destination SecretVolumeItem_STATUS from our SecretVolumeItem_STATUS
+func (item *SecretVolumeItem_STATUS) AssignProperties_To_SecretVolumeItem_STATUS(destination *storage.SecretVolumeItem_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Path
+ destination.Path = genruntime.ClonePointerToString(item.Path)
+
+ // SecretRef
+ destination.SecretRef = genruntime.ClonePointerToString(item.SecretRef)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Traffic weight assigned to a revision
+type TrafficWeight struct {
+ // Label: Associates a traffic label with a revision
+ Label *string `json:"label,omitempty"`
+
+ // LatestRevision: Indicates that the traffic weight belongs to a latest stable revision
+ LatestRevision *bool `json:"latestRevision,omitempty"`
+
+ // RevisionName: Name of a revision
+ RevisionName *string `json:"revisionName,omitempty"`
+
+ // Weight: Traffic weight assigned to a revision
+ Weight *int `json:"weight,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &TrafficWeight{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (weight *TrafficWeight) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if weight == nil {
+ return nil, nil
+ }
+ result := &arm.TrafficWeight{}
+
+ // Set property "Label":
+ if weight.Label != nil {
+ label := *weight.Label
+ result.Label = &label
+ }
+
+ // Set property "LatestRevision":
+ if weight.LatestRevision != nil {
+ latestRevision := *weight.LatestRevision
+ result.LatestRevision = &latestRevision
+ }
+
+ // Set property "RevisionName":
+ if weight.RevisionName != nil {
+ revisionName := *weight.RevisionName
+ result.RevisionName = &revisionName
+ }
+
+ // Set property "Weight":
+ if weight.Weight != nil {
+ weight1 := *weight.Weight
+ result.Weight = &weight1
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (weight *TrafficWeight) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.TrafficWeight{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (weight *TrafficWeight) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.TrafficWeight)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.TrafficWeight, got %T", armInput)
+ }
+
+ // Set property "Label":
+ if typedInput.Label != nil {
+ label := *typedInput.Label
+ weight.Label = &label
+ }
+
+ // Set property "LatestRevision":
+ if typedInput.LatestRevision != nil {
+ latestRevision := *typedInput.LatestRevision
+ weight.LatestRevision = &latestRevision
+ }
+
+ // Set property "RevisionName":
+ if typedInput.RevisionName != nil {
+ revisionName := *typedInput.RevisionName
+ weight.RevisionName = &revisionName
+ }
+
+ // Set property "Weight":
+ if typedInput.Weight != nil {
+ weight1 := *typedInput.Weight
+ weight.Weight = &weight1
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_TrafficWeight populates our TrafficWeight from the provided source TrafficWeight
+func (weight *TrafficWeight) AssignProperties_From_TrafficWeight(source *storage.TrafficWeight) error {
+
+ // Label
+ weight.Label = genruntime.ClonePointerToString(source.Label)
+
+ // LatestRevision
+ if source.LatestRevision != nil {
+ latestRevision := *source.LatestRevision
+ weight.LatestRevision = &latestRevision
+ } else {
+ weight.LatestRevision = nil
+ }
+
+ // RevisionName
+ weight.RevisionName = genruntime.ClonePointerToString(source.RevisionName)
+
+ // Weight
+ weight.Weight = genruntime.ClonePointerToInt(source.Weight)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_TrafficWeight populates the provided destination TrafficWeight from our TrafficWeight
+func (weight *TrafficWeight) AssignProperties_To_TrafficWeight(destination *storage.TrafficWeight) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Label
+ destination.Label = genruntime.ClonePointerToString(weight.Label)
+
+ // LatestRevision
+ if weight.LatestRevision != nil {
+ latestRevision := *weight.LatestRevision
+ destination.LatestRevision = &latestRevision
+ } else {
+ destination.LatestRevision = nil
+ }
+
+ // RevisionName
+ destination.RevisionName = genruntime.ClonePointerToString(weight.RevisionName)
+
+ // Weight
+ destination.Weight = genruntime.ClonePointerToInt(weight.Weight)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_TrafficWeight_STATUS populates our TrafficWeight from the provided source TrafficWeight_STATUS
+func (weight *TrafficWeight) Initialize_From_TrafficWeight_STATUS(source *TrafficWeight_STATUS) error {
+
+ // Label
+ weight.Label = genruntime.ClonePointerToString(source.Label)
+
+ // LatestRevision
+ if source.LatestRevision != nil {
+ latestRevision := *source.LatestRevision
+ weight.LatestRevision = &latestRevision
+ } else {
+ weight.LatestRevision = nil
+ }
+
+ // RevisionName
+ weight.RevisionName = genruntime.ClonePointerToString(source.RevisionName)
+
+ // Weight
+ weight.Weight = genruntime.ClonePointerToInt(source.Weight)
+
+ // No error
+ return nil
+}
+
+// Traffic weight assigned to a revision
+type TrafficWeight_STATUS struct {
+ // Label: Associates a traffic label with a revision
+ Label *string `json:"label,omitempty"`
+
+ // LatestRevision: Indicates that the traffic weight belongs to a latest stable revision
+ LatestRevision *bool `json:"latestRevision,omitempty"`
+
+ // RevisionName: Name of a revision
+ RevisionName *string `json:"revisionName,omitempty"`
+
+ // Weight: Traffic weight assigned to a revision
+ Weight *int `json:"weight,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &TrafficWeight_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (weight *TrafficWeight_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.TrafficWeight_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (weight *TrafficWeight_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.TrafficWeight_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.TrafficWeight_STATUS, got %T", armInput)
+ }
+
+ // Set property "Label":
+ if typedInput.Label != nil {
+ label := *typedInput.Label
+ weight.Label = &label
+ }
+
+ // Set property "LatestRevision":
+ if typedInput.LatestRevision != nil {
+ latestRevision := *typedInput.LatestRevision
+ weight.LatestRevision = &latestRevision
+ }
+
+ // Set property "RevisionName":
+ if typedInput.RevisionName != nil {
+ revisionName := *typedInput.RevisionName
+ weight.RevisionName = &revisionName
+ }
+
+ // Set property "Weight":
+ if typedInput.Weight != nil {
+ weight1 := *typedInput.Weight
+ weight.Weight = &weight1
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_TrafficWeight_STATUS populates our TrafficWeight_STATUS from the provided source TrafficWeight_STATUS
+func (weight *TrafficWeight_STATUS) AssignProperties_From_TrafficWeight_STATUS(source *storage.TrafficWeight_STATUS) error {
+
+ // Label
+ weight.Label = genruntime.ClonePointerToString(source.Label)
+
+ // LatestRevision
+ if source.LatestRevision != nil {
+ latestRevision := *source.LatestRevision
+ weight.LatestRevision = &latestRevision
+ } else {
+ weight.LatestRevision = nil
+ }
+
+ // RevisionName
+ weight.RevisionName = genruntime.ClonePointerToString(source.RevisionName)
+
+ // Weight
+ weight.Weight = genruntime.ClonePointerToInt(source.Weight)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_TrafficWeight_STATUS populates the provided destination TrafficWeight_STATUS from our TrafficWeight_STATUS
+func (weight *TrafficWeight_STATUS) AssignProperties_To_TrafficWeight_STATUS(destination *storage.TrafficWeight_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Label
+ destination.Label = genruntime.ClonePointerToString(weight.Label)
+
+ // LatestRevision
+ if weight.LatestRevision != nil {
+ latestRevision := *weight.LatestRevision
+ destination.LatestRevision = &latestRevision
+ } else {
+ destination.LatestRevision = nil
+ }
+
+ // RevisionName
+ destination.RevisionName = genruntime.ClonePointerToString(weight.RevisionName)
+
+ // Weight
+ destination.Weight = genruntime.ClonePointerToInt(weight.Weight)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"AzureFile","EmptyDir","Secret"}
+type Volume_StorageType string
+
+const (
+ Volume_StorageType_AzureFile = Volume_StorageType("AzureFile")
+ Volume_StorageType_EmptyDir = Volume_StorageType("EmptyDir")
+ Volume_StorageType_Secret = Volume_StorageType("Secret")
+)
+
+// Mapping from string to Volume_StorageType
+var volume_StorageType_Values = map[string]Volume_StorageType{
+ "azurefile": Volume_StorageType_AzureFile,
+ "emptydir": Volume_StorageType_EmptyDir,
+ "secret": Volume_StorageType_Secret,
+}
+
+type Volume_StorageType_STATUS string
+
+const (
+ Volume_StorageType_STATUS_AzureFile = Volume_StorageType_STATUS("AzureFile")
+ Volume_StorageType_STATUS_EmptyDir = Volume_StorageType_STATUS("EmptyDir")
+ Volume_StorageType_STATUS_Secret = Volume_StorageType_STATUS("Secret")
+)
+
+// Mapping from string to Volume_StorageType_STATUS
+var volume_StorageType_STATUS_Values = map[string]Volume_StorageType_STATUS{
+ "azurefile": Volume_StorageType_STATUS_AzureFile,
+ "emptydir": Volume_StorageType_STATUS_EmptyDir,
+ "secret": Volume_StorageType_STATUS_Secret,
+}
+
+// Volume mount for the Container App.
+type VolumeMount struct {
+ // MountPath: Path within the container at which the volume should be mounted.Must not contain ':'.
+ MountPath *string `json:"mountPath,omitempty"`
+
+ // SubPath: Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root).
+ SubPath *string `json:"subPath,omitempty"`
+
+ // VolumeName: This must match the Name of a Volume.
+ VolumeName *string `json:"volumeName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &VolumeMount{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (mount *VolumeMount) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if mount == nil {
+ return nil, nil
+ }
+ result := &arm.VolumeMount{}
+
+ // Set property "MountPath":
+ if mount.MountPath != nil {
+ mountPath := *mount.MountPath
+ result.MountPath = &mountPath
+ }
+
+ // Set property "SubPath":
+ if mount.SubPath != nil {
+ subPath := *mount.SubPath
+ result.SubPath = &subPath
+ }
+
+ // Set property "VolumeName":
+ if mount.VolumeName != nil {
+ volumeName := *mount.VolumeName
+ result.VolumeName = &volumeName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (mount *VolumeMount) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.VolumeMount{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (mount *VolumeMount) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.VolumeMount)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.VolumeMount, got %T", armInput)
+ }
+
+ // Set property "MountPath":
+ if typedInput.MountPath != nil {
+ mountPath := *typedInput.MountPath
+ mount.MountPath = &mountPath
+ }
+
+ // Set property "SubPath":
+ if typedInput.SubPath != nil {
+ subPath := *typedInput.SubPath
+ mount.SubPath = &subPath
+ }
+
+ // Set property "VolumeName":
+ if typedInput.VolumeName != nil {
+ volumeName := *typedInput.VolumeName
+ mount.VolumeName = &volumeName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_VolumeMount populates our VolumeMount from the provided source VolumeMount
+func (mount *VolumeMount) AssignProperties_From_VolumeMount(source *storage.VolumeMount) error {
+
+ // MountPath
+ mount.MountPath = genruntime.ClonePointerToString(source.MountPath)
+
+ // SubPath
+ mount.SubPath = genruntime.ClonePointerToString(source.SubPath)
+
+ // VolumeName
+ mount.VolumeName = genruntime.ClonePointerToString(source.VolumeName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_VolumeMount populates the provided destination VolumeMount from our VolumeMount
+func (mount *VolumeMount) AssignProperties_To_VolumeMount(destination *storage.VolumeMount) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MountPath
+ destination.MountPath = genruntime.ClonePointerToString(mount.MountPath)
+
+ // SubPath
+ destination.SubPath = genruntime.ClonePointerToString(mount.SubPath)
+
+ // VolumeName
+ destination.VolumeName = genruntime.ClonePointerToString(mount.VolumeName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_VolumeMount_STATUS populates our VolumeMount from the provided source VolumeMount_STATUS
+func (mount *VolumeMount) Initialize_From_VolumeMount_STATUS(source *VolumeMount_STATUS) error {
+
+ // MountPath
+ mount.MountPath = genruntime.ClonePointerToString(source.MountPath)
+
+ // SubPath
+ mount.SubPath = genruntime.ClonePointerToString(source.SubPath)
+
+ // VolumeName
+ mount.VolumeName = genruntime.ClonePointerToString(source.VolumeName)
+
+ // No error
+ return nil
+}
+
+// Volume mount for the Container App.
+type VolumeMount_STATUS struct {
+ // MountPath: Path within the container at which the volume should be mounted.Must not contain ':'.
+ MountPath *string `json:"mountPath,omitempty"`
+
+ // SubPath: Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root).
+ SubPath *string `json:"subPath,omitempty"`
+
+ // VolumeName: This must match the Name of a Volume.
+ VolumeName *string `json:"volumeName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &VolumeMount_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (mount *VolumeMount_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.VolumeMount_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (mount *VolumeMount_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.VolumeMount_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.VolumeMount_STATUS, got %T", armInput)
+ }
+
+ // Set property "MountPath":
+ if typedInput.MountPath != nil {
+ mountPath := *typedInput.MountPath
+ mount.MountPath = &mountPath
+ }
+
+ // Set property "SubPath":
+ if typedInput.SubPath != nil {
+ subPath := *typedInput.SubPath
+ mount.SubPath = &subPath
+ }
+
+ // Set property "VolumeName":
+ if typedInput.VolumeName != nil {
+ volumeName := *typedInput.VolumeName
+ mount.VolumeName = &volumeName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_VolumeMount_STATUS populates our VolumeMount_STATUS from the provided source VolumeMount_STATUS
+func (mount *VolumeMount_STATUS) AssignProperties_From_VolumeMount_STATUS(source *storage.VolumeMount_STATUS) error {
+
+ // MountPath
+ mount.MountPath = genruntime.ClonePointerToString(source.MountPath)
+
+ // SubPath
+ mount.SubPath = genruntime.ClonePointerToString(source.SubPath)
+
+ // VolumeName
+ mount.VolumeName = genruntime.ClonePointerToString(source.VolumeName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_VolumeMount_STATUS populates the provided destination VolumeMount_STATUS from our VolumeMount_STATUS
+func (mount *VolumeMount_STATUS) AssignProperties_To_VolumeMount_STATUS(destination *storage.VolumeMount_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MountPath
+ destination.MountPath = genruntime.ClonePointerToString(mount.MountPath)
+
+ // SubPath
+ destination.SubPath = genruntime.ClonePointerToString(mount.SubPath)
+
+ // VolumeName
+ destination.VolumeName = genruntime.ClonePointerToString(mount.VolumeName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ContainerAppProbe_HttpGet struct {
+ // Host: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
+ Host *string `json:"host,omitempty"`
+
+ // HttpHeaders: Custom headers to set in the request. HTTP allows repeated headers.
+ HttpHeaders []ContainerAppProbe_HttpGet_HttpHeaders `json:"httpHeaders,omitempty"`
+
+ // Path: Path to access on the HTTP server.
+ Path *string `json:"path,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Port: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an
+ // IANA_SVC_NAME.
+ Port *int `json:"port,omitempty"`
+
+ // Scheme: Scheme to use for connecting to the host. Defaults to HTTP.
+ Scheme *ContainerAppProbe_HttpGet_Scheme `json:"scheme,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ContainerAppProbe_HttpGet{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (httpGet *ContainerAppProbe_HttpGet) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if httpGet == nil {
+ return nil, nil
+ }
+ result := &arm.ContainerAppProbe_HttpGet{}
+
+ // Set property "Host":
+ if httpGet.Host != nil {
+ host := *httpGet.Host
+ result.Host = &host
+ }
+
+ // Set property "HttpHeaders":
+ for _, item := range httpGet.HttpHeaders {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.HttpHeaders = append(result.HttpHeaders, *item_ARM.(*arm.ContainerAppProbe_HttpGet_HttpHeaders))
+ }
+
+ // Set property "Path":
+ if httpGet.Path != nil {
+ path := *httpGet.Path
+ result.Path = &path
+ }
+
+ // Set property "Port":
+ if httpGet.Port != nil {
+ port := *httpGet.Port
+ result.Port = &port
+ }
+
+ // Set property "Scheme":
+ if httpGet.Scheme != nil {
+ var temp string
+ temp = string(*httpGet.Scheme)
+ scheme := arm.ContainerAppProbe_HttpGet_Scheme(temp)
+ result.Scheme = &scheme
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (httpGet *ContainerAppProbe_HttpGet) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerAppProbe_HttpGet{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (httpGet *ContainerAppProbe_HttpGet) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerAppProbe_HttpGet)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerAppProbe_HttpGet, got %T", armInput)
+ }
+
+ // Set property "Host":
+ if typedInput.Host != nil {
+ host := *typedInput.Host
+ httpGet.Host = &host
+ }
+
+ // Set property "HttpHeaders":
+ for _, item := range typedInput.HttpHeaders {
+ var item1 ContainerAppProbe_HttpGet_HttpHeaders
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ httpGet.HttpHeaders = append(httpGet.HttpHeaders, item1)
+ }
+
+ // Set property "Path":
+ if typedInput.Path != nil {
+ path := *typedInput.Path
+ httpGet.Path = &path
+ }
+
+ // Set property "Port":
+ if typedInput.Port != nil {
+ port := *typedInput.Port
+ httpGet.Port = &port
+ }
+
+ // Set property "Scheme":
+ if typedInput.Scheme != nil {
+ var temp string
+ temp = string(*typedInput.Scheme)
+ scheme := ContainerAppProbe_HttpGet_Scheme(temp)
+ httpGet.Scheme = &scheme
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerAppProbe_HttpGet populates our ContainerAppProbe_HttpGet from the provided source ContainerAppProbe_HttpGet
+func (httpGet *ContainerAppProbe_HttpGet) AssignProperties_From_ContainerAppProbe_HttpGet(source *storage.ContainerAppProbe_HttpGet) error {
+
+ // Host
+ httpGet.Host = genruntime.ClonePointerToString(source.Host)
+
+ // HttpHeaders
+ if source.HttpHeaders != nil {
+ httpHeaderList := make([]ContainerAppProbe_HttpGet_HttpHeaders, len(source.HttpHeaders))
+ for httpHeaderIndex, httpHeaderItem := range source.HttpHeaders {
+ // Shadow the loop variable to avoid aliasing
+ httpHeaderItem := httpHeaderItem
+ var httpHeader ContainerAppProbe_HttpGet_HttpHeaders
+ err := httpHeader.AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders(&httpHeaderItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders() to populate field HttpHeaders")
+ }
+ httpHeaderList[httpHeaderIndex] = httpHeader
+ }
+ httpGet.HttpHeaders = httpHeaderList
+ } else {
+ httpGet.HttpHeaders = nil
+ }
+
+ // Path
+ httpGet.Path = genruntime.ClonePointerToString(source.Path)
+
+ // Port
+ httpGet.Port = genruntime.ClonePointerToInt(source.Port)
+
+ // Scheme
+ if source.Scheme != nil {
+ scheme := *source.Scheme
+ schemeTemp := genruntime.ToEnum(scheme, containerAppProbe_HttpGet_Scheme_Values)
+ httpGet.Scheme = &schemeTemp
+ } else {
+ httpGet.Scheme = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppProbe_HttpGet populates the provided destination ContainerAppProbe_HttpGet from our ContainerAppProbe_HttpGet
+func (httpGet *ContainerAppProbe_HttpGet) AssignProperties_To_ContainerAppProbe_HttpGet(destination *storage.ContainerAppProbe_HttpGet) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Host
+ destination.Host = genruntime.ClonePointerToString(httpGet.Host)
+
+ // HttpHeaders
+ if httpGet.HttpHeaders != nil {
+ httpHeaderList := make([]storage.ContainerAppProbe_HttpGet_HttpHeaders, len(httpGet.HttpHeaders))
+ for httpHeaderIndex, httpHeaderItem := range httpGet.HttpHeaders {
+ // Shadow the loop variable to avoid aliasing
+ httpHeaderItem := httpHeaderItem
+ var httpHeader storage.ContainerAppProbe_HttpGet_HttpHeaders
+ err := httpHeaderItem.AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders(&httpHeader)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders() to populate field HttpHeaders")
+ }
+ httpHeaderList[httpHeaderIndex] = httpHeader
+ }
+ destination.HttpHeaders = httpHeaderList
+ } else {
+ destination.HttpHeaders = nil
+ }
+
+ // Path
+ destination.Path = genruntime.ClonePointerToString(httpGet.Path)
+
+ // Port
+ destination.Port = genruntime.ClonePointerToInt(httpGet.Port)
+
+ // Scheme
+ if httpGet.Scheme != nil {
+ scheme := string(*httpGet.Scheme)
+ destination.Scheme = &scheme
+ } else {
+ destination.Scheme = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ContainerAppProbe_HttpGet_STATUS populates our ContainerAppProbe_HttpGet from the provided source ContainerAppProbe_HttpGet_STATUS
+func (httpGet *ContainerAppProbe_HttpGet) Initialize_From_ContainerAppProbe_HttpGet_STATUS(source *ContainerAppProbe_HttpGet_STATUS) error {
+
+ // Host
+ httpGet.Host = genruntime.ClonePointerToString(source.Host)
+
+ // HttpHeaders
+ if source.HttpHeaders != nil {
+ httpHeaderList := make([]ContainerAppProbe_HttpGet_HttpHeaders, len(source.HttpHeaders))
+ for httpHeaderIndex, httpHeaderItem := range source.HttpHeaders {
+ // Shadow the loop variable to avoid aliasing
+ httpHeaderItem := httpHeaderItem
+ var httpHeader ContainerAppProbe_HttpGet_HttpHeaders
+ err := httpHeader.Initialize_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS(&httpHeaderItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS() to populate field HttpHeaders")
+ }
+ httpHeaderList[httpHeaderIndex] = httpHeader
+ }
+ httpGet.HttpHeaders = httpHeaderList
+ } else {
+ httpGet.HttpHeaders = nil
+ }
+
+ // Path
+ httpGet.Path = genruntime.ClonePointerToString(source.Path)
+
+ // Port
+ httpGet.Port = genruntime.ClonePointerToInt(source.Port)
+
+ // Scheme
+ if source.Scheme != nil {
+ scheme := genruntime.ToEnum(string(*source.Scheme), containerAppProbe_HttpGet_Scheme_Values)
+ httpGet.Scheme = &scheme
+ } else {
+ httpGet.Scheme = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ContainerAppProbe_HttpGet_STATUS struct {
+ // Host: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
+ Host *string `json:"host,omitempty"`
+
+ // HttpHeaders: Custom headers to set in the request. HTTP allows repeated headers.
+ HttpHeaders []ContainerAppProbe_HttpGet_HttpHeaders_STATUS `json:"httpHeaders,omitempty"`
+
+ // Path: Path to access on the HTTP server.
+ Path *string `json:"path,omitempty"`
+
+ // Port: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an
+ // IANA_SVC_NAME.
+ Port *int `json:"port,omitempty"`
+
+ // Scheme: Scheme to use for connecting to the host. Defaults to HTTP.
+ Scheme *ContainerAppProbe_HttpGet_Scheme_STATUS `json:"scheme,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ContainerAppProbe_HttpGet_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (httpGet *ContainerAppProbe_HttpGet_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerAppProbe_HttpGet_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (httpGet *ContainerAppProbe_HttpGet_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerAppProbe_HttpGet_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerAppProbe_HttpGet_STATUS, got %T", armInput)
+ }
+
+ // Set property "Host":
+ if typedInput.Host != nil {
+ host := *typedInput.Host
+ httpGet.Host = &host
+ }
+
+ // Set property "HttpHeaders":
+ for _, item := range typedInput.HttpHeaders {
+ var item1 ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ httpGet.HttpHeaders = append(httpGet.HttpHeaders, item1)
+ }
+
+ // Set property "Path":
+ if typedInput.Path != nil {
+ path := *typedInput.Path
+ httpGet.Path = &path
+ }
+
+ // Set property "Port":
+ if typedInput.Port != nil {
+ port := *typedInput.Port
+ httpGet.Port = &port
+ }
+
+ // Set property "Scheme":
+ if typedInput.Scheme != nil {
+ var temp string
+ temp = string(*typedInput.Scheme)
+ scheme := ContainerAppProbe_HttpGet_Scheme_STATUS(temp)
+ httpGet.Scheme = &scheme
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerAppProbe_HttpGet_STATUS populates our ContainerAppProbe_HttpGet_STATUS from the provided source ContainerAppProbe_HttpGet_STATUS
+func (httpGet *ContainerAppProbe_HttpGet_STATUS) AssignProperties_From_ContainerAppProbe_HttpGet_STATUS(source *storage.ContainerAppProbe_HttpGet_STATUS) error {
+
+ // Host
+ httpGet.Host = genruntime.ClonePointerToString(source.Host)
+
+ // HttpHeaders
+ if source.HttpHeaders != nil {
+ httpHeaderList := make([]ContainerAppProbe_HttpGet_HttpHeaders_STATUS, len(source.HttpHeaders))
+ for httpHeaderIndex, httpHeaderItem := range source.HttpHeaders {
+ // Shadow the loop variable to avoid aliasing
+ httpHeaderItem := httpHeaderItem
+ var httpHeader ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+ err := httpHeader.AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS(&httpHeaderItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS() to populate field HttpHeaders")
+ }
+ httpHeaderList[httpHeaderIndex] = httpHeader
+ }
+ httpGet.HttpHeaders = httpHeaderList
+ } else {
+ httpGet.HttpHeaders = nil
+ }
+
+ // Path
+ httpGet.Path = genruntime.ClonePointerToString(source.Path)
+
+ // Port
+ httpGet.Port = genruntime.ClonePointerToInt(source.Port)
+
+ // Scheme
+ if source.Scheme != nil {
+ scheme := *source.Scheme
+ schemeTemp := genruntime.ToEnum(scheme, containerAppProbe_HttpGet_Scheme_STATUS_Values)
+ httpGet.Scheme = &schemeTemp
+ } else {
+ httpGet.Scheme = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppProbe_HttpGet_STATUS populates the provided destination ContainerAppProbe_HttpGet_STATUS from our ContainerAppProbe_HttpGet_STATUS
+func (httpGet *ContainerAppProbe_HttpGet_STATUS) AssignProperties_To_ContainerAppProbe_HttpGet_STATUS(destination *storage.ContainerAppProbe_HttpGet_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Host
+ destination.Host = genruntime.ClonePointerToString(httpGet.Host)
+
+ // HttpHeaders
+ if httpGet.HttpHeaders != nil {
+ httpHeaderList := make([]storage.ContainerAppProbe_HttpGet_HttpHeaders_STATUS, len(httpGet.HttpHeaders))
+ for httpHeaderIndex, httpHeaderItem := range httpGet.HttpHeaders {
+ // Shadow the loop variable to avoid aliasing
+ httpHeaderItem := httpHeaderItem
+ var httpHeader storage.ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+ err := httpHeaderItem.AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders_STATUS(&httpHeader)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders_STATUS() to populate field HttpHeaders")
+ }
+ httpHeaderList[httpHeaderIndex] = httpHeader
+ }
+ destination.HttpHeaders = httpHeaderList
+ } else {
+ destination.HttpHeaders = nil
+ }
+
+ // Path
+ destination.Path = genruntime.ClonePointerToString(httpGet.Path)
+
+ // Port
+ destination.Port = genruntime.ClonePointerToInt(httpGet.Port)
+
+ // Scheme
+ if httpGet.Scheme != nil {
+ scheme := string(*httpGet.Scheme)
+ destination.Scheme = &scheme
+ } else {
+ destination.Scheme = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ContainerAppProbe_TcpSocket struct {
+ // Host: Optional: Host name to connect to, defaults to the pod IP.
+ Host *string `json:"host,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Port: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an
+ // IANA_SVC_NAME.
+ Port *int `json:"port,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ContainerAppProbe_TcpSocket{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (socket *ContainerAppProbe_TcpSocket) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if socket == nil {
+ return nil, nil
+ }
+ result := &arm.ContainerAppProbe_TcpSocket{}
+
+ // Set property "Host":
+ if socket.Host != nil {
+ host := *socket.Host
+ result.Host = &host
+ }
+
+ // Set property "Port":
+ if socket.Port != nil {
+ port := *socket.Port
+ result.Port = &port
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (socket *ContainerAppProbe_TcpSocket) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerAppProbe_TcpSocket{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (socket *ContainerAppProbe_TcpSocket) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerAppProbe_TcpSocket)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerAppProbe_TcpSocket, got %T", armInput)
+ }
+
+ // Set property "Host":
+ if typedInput.Host != nil {
+ host := *typedInput.Host
+ socket.Host = &host
+ }
+
+ // Set property "Port":
+ if typedInput.Port != nil {
+ port := *typedInput.Port
+ socket.Port = &port
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerAppProbe_TcpSocket populates our ContainerAppProbe_TcpSocket from the provided source ContainerAppProbe_TcpSocket
+func (socket *ContainerAppProbe_TcpSocket) AssignProperties_From_ContainerAppProbe_TcpSocket(source *storage.ContainerAppProbe_TcpSocket) error {
+
+ // Host
+ socket.Host = genruntime.ClonePointerToString(source.Host)
+
+ // Port
+ socket.Port = genruntime.ClonePointerToInt(source.Port)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppProbe_TcpSocket populates the provided destination ContainerAppProbe_TcpSocket from our ContainerAppProbe_TcpSocket
+func (socket *ContainerAppProbe_TcpSocket) AssignProperties_To_ContainerAppProbe_TcpSocket(destination *storage.ContainerAppProbe_TcpSocket) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Host
+ destination.Host = genruntime.ClonePointerToString(socket.Host)
+
+ // Port
+ destination.Port = genruntime.ClonePointerToInt(socket.Port)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ContainerAppProbe_TcpSocket_STATUS populates our ContainerAppProbe_TcpSocket from the provided source ContainerAppProbe_TcpSocket_STATUS
+func (socket *ContainerAppProbe_TcpSocket) Initialize_From_ContainerAppProbe_TcpSocket_STATUS(source *ContainerAppProbe_TcpSocket_STATUS) error {
+
+ // Host
+ socket.Host = genruntime.ClonePointerToString(source.Host)
+
+ // Port
+ socket.Port = genruntime.ClonePointerToInt(source.Port)
+
+ // No error
+ return nil
+}
+
+type ContainerAppProbe_TcpSocket_STATUS struct {
+ // Host: Optional: Host name to connect to, defaults to the pod IP.
+ Host *string `json:"host,omitempty"`
+
+ // Port: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an
+ // IANA_SVC_NAME.
+ Port *int `json:"port,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ContainerAppProbe_TcpSocket_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (socket *ContainerAppProbe_TcpSocket_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerAppProbe_TcpSocket_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (socket *ContainerAppProbe_TcpSocket_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerAppProbe_TcpSocket_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerAppProbe_TcpSocket_STATUS, got %T", armInput)
+ }
+
+ // Set property "Host":
+ if typedInput.Host != nil {
+ host := *typedInput.Host
+ socket.Host = &host
+ }
+
+ // Set property "Port":
+ if typedInput.Port != nil {
+ port := *typedInput.Port
+ socket.Port = &port
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerAppProbe_TcpSocket_STATUS populates our ContainerAppProbe_TcpSocket_STATUS from the provided source ContainerAppProbe_TcpSocket_STATUS
+func (socket *ContainerAppProbe_TcpSocket_STATUS) AssignProperties_From_ContainerAppProbe_TcpSocket_STATUS(source *storage.ContainerAppProbe_TcpSocket_STATUS) error {
+
+ // Host
+ socket.Host = genruntime.ClonePointerToString(source.Host)
+
+ // Port
+ socket.Port = genruntime.ClonePointerToInt(source.Port)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppProbe_TcpSocket_STATUS populates the provided destination ContainerAppProbe_TcpSocket_STATUS from our ContainerAppProbe_TcpSocket_STATUS
+func (socket *ContainerAppProbe_TcpSocket_STATUS) AssignProperties_To_ContainerAppProbe_TcpSocket_STATUS(destination *storage.ContainerAppProbe_TcpSocket_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Host
+ destination.Host = genruntime.ClonePointerToString(socket.Host)
+
+ // Port
+ destination.Port = genruntime.ClonePointerToInt(socket.Port)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"Liveness","Readiness","Startup"}
+type ContainerAppProbe_Type string
+
+const (
+ ContainerAppProbe_Type_Liveness = ContainerAppProbe_Type("Liveness")
+ ContainerAppProbe_Type_Readiness = ContainerAppProbe_Type("Readiness")
+ ContainerAppProbe_Type_Startup = ContainerAppProbe_Type("Startup")
+)
+
+// Mapping from string to ContainerAppProbe_Type
+var containerAppProbe_Type_Values = map[string]ContainerAppProbe_Type{
+ "liveness": ContainerAppProbe_Type_Liveness,
+ "readiness": ContainerAppProbe_Type_Readiness,
+ "startup": ContainerAppProbe_Type_Startup,
+}
+
+type ContainerAppProbe_Type_STATUS string
+
+const (
+ ContainerAppProbe_Type_STATUS_Liveness = ContainerAppProbe_Type_STATUS("Liveness")
+ ContainerAppProbe_Type_STATUS_Readiness = ContainerAppProbe_Type_STATUS("Readiness")
+ ContainerAppProbe_Type_STATUS_Startup = ContainerAppProbe_Type_STATUS("Startup")
+)
+
+// Mapping from string to ContainerAppProbe_Type_STATUS
+var containerAppProbe_Type_STATUS_Values = map[string]ContainerAppProbe_Type_STATUS{
+ "liveness": ContainerAppProbe_Type_STATUS_Liveness,
+ "readiness": ContainerAppProbe_Type_STATUS_Readiness,
+ "startup": ContainerAppProbe_Type_STATUS_Startup,
+}
+
+// +kubebuilder:validation:Enum={"Disabled","SniEnabled"}
+type CustomDomain_BindingType string
+
+const (
+ CustomDomain_BindingType_Disabled = CustomDomain_BindingType("Disabled")
+ CustomDomain_BindingType_SniEnabled = CustomDomain_BindingType("SniEnabled")
+)
+
+// Mapping from string to CustomDomain_BindingType
+var customDomain_BindingType_Values = map[string]CustomDomain_BindingType{
+ "disabled": CustomDomain_BindingType_Disabled,
+ "snienabled": CustomDomain_BindingType_SniEnabled,
+}
+
+type CustomDomain_BindingType_STATUS string
+
+const (
+ CustomDomain_BindingType_STATUS_Disabled = CustomDomain_BindingType_STATUS("Disabled")
+ CustomDomain_BindingType_STATUS_SniEnabled = CustomDomain_BindingType_STATUS("SniEnabled")
+)
+
+// Mapping from string to CustomDomain_BindingType_STATUS
+var customDomain_BindingType_STATUS_Values = map[string]CustomDomain_BindingType_STATUS{
+ "disabled": CustomDomain_BindingType_STATUS_Disabled,
+ "snienabled": CustomDomain_BindingType_STATUS_SniEnabled,
+}
+
+// Container App container Custom scaling rule.
+type CustomScaleRule struct {
+ // Auth: Authentication secrets for the custom scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe custom scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+
+ // Type: Type of the custom scale rule
+ // eg: azure-servicebus, redis etc.
+ Type *string `json:"type,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &CustomScaleRule{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (rule *CustomScaleRule) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if rule == nil {
+ return nil, nil
+ }
+ result := &arm.CustomScaleRule{}
+
+ // Set property "Auth":
+ for _, item := range rule.Auth {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Auth = append(result.Auth, *item_ARM.(*arm.ScaleRuleAuth))
+ }
+
+ // Set property "Metadata":
+ if rule.Metadata != nil {
+ result.Metadata = make(map[string]string, len(rule.Metadata))
+ for key, value := range rule.Metadata {
+ result.Metadata[key] = value
+ }
+ }
+
+ // Set property "Type":
+ if rule.Type != nil {
+ typeVar := *rule.Type
+ result.Type = &typeVar
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *CustomScaleRule) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CustomScaleRule{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *CustomScaleRule) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CustomScaleRule)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CustomScaleRule, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "Metadata":
+ if typedInput.Metadata != nil {
+ rule.Metadata = make(map[string]string, len(typedInput.Metadata))
+ for key, value := range typedInput.Metadata {
+ rule.Metadata[key] = value
+ }
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ rule.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CustomScaleRule populates our CustomScaleRule from the provided source CustomScaleRule
+func (rule *CustomScaleRule) AssignProperties_From_CustomScaleRule(source *storage.CustomScaleRule) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.AssignProperties_From_ScaleRuleAuth(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // Type
+ rule.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CustomScaleRule populates the provided destination CustomScaleRule from our CustomScaleRule
+func (rule *CustomScaleRule) AssignProperties_To_CustomScaleRule(destination *storage.CustomScaleRule) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth
+ err := authItem.AssignProperties_To_ScaleRuleAuth(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // Metadata
+ destination.Metadata = genruntime.CloneMapOfStringToString(rule.Metadata)
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(rule.Type)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_CustomScaleRule_STATUS populates our CustomScaleRule from the provided source CustomScaleRule_STATUS
+func (rule *CustomScaleRule) Initialize_From_CustomScaleRule_STATUS(source *CustomScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.Initialize_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // Type
+ rule.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// Container App container Custom scaling rule.
+type CustomScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the custom scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe custom scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+
+ // Type: Type of the custom scale rule
+ // eg: azure-servicebus, redis etc.
+ Type *string `json:"type,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &CustomScaleRule_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *CustomScaleRule_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CustomScaleRule_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *CustomScaleRule_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CustomScaleRule_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CustomScaleRule_STATUS, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "Metadata":
+ if typedInput.Metadata != nil {
+ rule.Metadata = make(map[string]string, len(typedInput.Metadata))
+ for key, value := range typedInput.Metadata {
+ rule.Metadata[key] = value
+ }
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ rule.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CustomScaleRule_STATUS populates our CustomScaleRule_STATUS from the provided source CustomScaleRule_STATUS
+func (rule *CustomScaleRule_STATUS) AssignProperties_From_CustomScaleRule_STATUS(source *storage.CustomScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth_STATUS, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth_STATUS
+ err := auth.AssignProperties_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // Type
+ rule.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CustomScaleRule_STATUS populates the provided destination CustomScaleRule_STATUS from our CustomScaleRule_STATUS
+func (rule *CustomScaleRule_STATUS) AssignProperties_To_CustomScaleRule_STATUS(destination *storage.CustomScaleRule_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth_STATUS, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth_STATUS
+ err := authItem.AssignProperties_To_ScaleRuleAuth_STATUS(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // Metadata
+ destination.Metadata = genruntime.CloneMapOfStringToString(rule.Metadata)
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(rule.Type)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App container Http scaling rule.
+type HttpScaleRule struct {
+ // Auth: Authentication secrets for the custom scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe http scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &HttpScaleRule{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (rule *HttpScaleRule) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if rule == nil {
+ return nil, nil
+ }
+ result := &arm.HttpScaleRule{}
+
+ // Set property "Auth":
+ for _, item := range rule.Auth {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Auth = append(result.Auth, *item_ARM.(*arm.ScaleRuleAuth))
+ }
+
+ // Set property "Metadata":
+ if rule.Metadata != nil {
+ result.Metadata = make(map[string]string, len(rule.Metadata))
+ for key, value := range rule.Metadata {
+ result.Metadata[key] = value
+ }
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *HttpScaleRule) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.HttpScaleRule{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *HttpScaleRule) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.HttpScaleRule)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.HttpScaleRule, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "Metadata":
+ if typedInput.Metadata != nil {
+ rule.Metadata = make(map[string]string, len(typedInput.Metadata))
+ for key, value := range typedInput.Metadata {
+ rule.Metadata[key] = value
+ }
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_HttpScaleRule populates our HttpScaleRule from the provided source HttpScaleRule
+func (rule *HttpScaleRule) AssignProperties_From_HttpScaleRule(source *storage.HttpScaleRule) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.AssignProperties_From_ScaleRuleAuth(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_HttpScaleRule populates the provided destination HttpScaleRule from our HttpScaleRule
+func (rule *HttpScaleRule) AssignProperties_To_HttpScaleRule(destination *storage.HttpScaleRule) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth
+ err := authItem.AssignProperties_To_ScaleRuleAuth(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // Metadata
+ destination.Metadata = genruntime.CloneMapOfStringToString(rule.Metadata)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_HttpScaleRule_STATUS populates our HttpScaleRule from the provided source HttpScaleRule_STATUS
+func (rule *HttpScaleRule) Initialize_From_HttpScaleRule_STATUS(source *HttpScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.Initialize_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // No error
+ return nil
+}
+
+// Container App container Http scaling rule.
+type HttpScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the custom scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe http scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &HttpScaleRule_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *HttpScaleRule_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.HttpScaleRule_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *HttpScaleRule_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.HttpScaleRule_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.HttpScaleRule_STATUS, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "Metadata":
+ if typedInput.Metadata != nil {
+ rule.Metadata = make(map[string]string, len(typedInput.Metadata))
+ for key, value := range typedInput.Metadata {
+ rule.Metadata[key] = value
+ }
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_HttpScaleRule_STATUS populates our HttpScaleRule_STATUS from the provided source HttpScaleRule_STATUS
+func (rule *HttpScaleRule_STATUS) AssignProperties_From_HttpScaleRule_STATUS(source *storage.HttpScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth_STATUS, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth_STATUS
+ err := auth.AssignProperties_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_HttpScaleRule_STATUS populates the provided destination HttpScaleRule_STATUS from our HttpScaleRule_STATUS
+func (rule *HttpScaleRule_STATUS) AssignProperties_To_HttpScaleRule_STATUS(destination *storage.HttpScaleRule_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth_STATUS, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth_STATUS
+ err := authItem.AssignProperties_To_ScaleRuleAuth_STATUS(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // Metadata
+ destination.Metadata = genruntime.CloneMapOfStringToString(rule.Metadata)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"none","sticky"}
+type Ingress_StickySessions_Affinity string
+
+const (
+ Ingress_StickySessions_Affinity_None = Ingress_StickySessions_Affinity("none")
+ Ingress_StickySessions_Affinity_Sticky = Ingress_StickySessions_Affinity("sticky")
+)
+
+// Mapping from string to Ingress_StickySessions_Affinity
+var ingress_StickySessions_Affinity_Values = map[string]Ingress_StickySessions_Affinity{
+ "none": Ingress_StickySessions_Affinity_None,
+ "sticky": Ingress_StickySessions_Affinity_Sticky,
+}
+
+type Ingress_StickySessions_Affinity_STATUS string
+
+const (
+ Ingress_StickySessions_Affinity_STATUS_None = Ingress_StickySessions_Affinity_STATUS("none")
+ Ingress_StickySessions_Affinity_STATUS_Sticky = Ingress_StickySessions_Affinity_STATUS("sticky")
+)
+
+// Mapping from string to Ingress_StickySessions_Affinity_STATUS
+var ingress_StickySessions_Affinity_STATUS_Values = map[string]Ingress_StickySessions_Affinity_STATUS{
+ "none": Ingress_StickySessions_Affinity_STATUS_None,
+ "sticky": Ingress_StickySessions_Affinity_STATUS_Sticky,
+}
+
+// +kubebuilder:validation:Enum={"Allow","Deny"}
+type IpSecurityRestrictionRule_Action string
+
+const (
+ IpSecurityRestrictionRule_Action_Allow = IpSecurityRestrictionRule_Action("Allow")
+ IpSecurityRestrictionRule_Action_Deny = IpSecurityRestrictionRule_Action("Deny")
+)
+
+// Mapping from string to IpSecurityRestrictionRule_Action
+var ipSecurityRestrictionRule_Action_Values = map[string]IpSecurityRestrictionRule_Action{
+ "allow": IpSecurityRestrictionRule_Action_Allow,
+ "deny": IpSecurityRestrictionRule_Action_Deny,
+}
+
+type IpSecurityRestrictionRule_Action_STATUS string
+
+const (
+ IpSecurityRestrictionRule_Action_STATUS_Allow = IpSecurityRestrictionRule_Action_STATUS("Allow")
+ IpSecurityRestrictionRule_Action_STATUS_Deny = IpSecurityRestrictionRule_Action_STATUS("Deny")
+)
+
+// Mapping from string to IpSecurityRestrictionRule_Action_STATUS
+var ipSecurityRestrictionRule_Action_STATUS_Values = map[string]IpSecurityRestrictionRule_Action_STATUS{
+ "allow": IpSecurityRestrictionRule_Action_STATUS_Allow,
+ "deny": IpSecurityRestrictionRule_Action_STATUS_Deny,
+}
+
+// Container App container Azure Queue based scaling rule.
+type QueueScaleRule struct {
+ // Auth: Authentication secrets for the queue scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // QueueLength: Queue length.
+ QueueLength *int `json:"queueLength,omitempty"`
+
+ // QueueName: Queue name.
+ QueueName *string `json:"queueName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &QueueScaleRule{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (rule *QueueScaleRule) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if rule == nil {
+ return nil, nil
+ }
+ result := &arm.QueueScaleRule{}
+
+ // Set property "Auth":
+ for _, item := range rule.Auth {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Auth = append(result.Auth, *item_ARM.(*arm.ScaleRuleAuth))
+ }
+
+ // Set property "QueueLength":
+ if rule.QueueLength != nil {
+ queueLength := *rule.QueueLength
+ result.QueueLength = &queueLength
+ }
+
+ // Set property "QueueName":
+ if rule.QueueName != nil {
+ queueName := *rule.QueueName
+ result.QueueName = &queueName
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *QueueScaleRule) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.QueueScaleRule{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *QueueScaleRule) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.QueueScaleRule)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.QueueScaleRule, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "QueueLength":
+ if typedInput.QueueLength != nil {
+ queueLength := *typedInput.QueueLength
+ rule.QueueLength = &queueLength
+ }
+
+ // Set property "QueueName":
+ if typedInput.QueueName != nil {
+ queueName := *typedInput.QueueName
+ rule.QueueName = &queueName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_QueueScaleRule populates our QueueScaleRule from the provided source QueueScaleRule
+func (rule *QueueScaleRule) AssignProperties_From_QueueScaleRule(source *storage.QueueScaleRule) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.AssignProperties_From_ScaleRuleAuth(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // QueueLength
+ rule.QueueLength = genruntime.ClonePointerToInt(source.QueueLength)
+
+ // QueueName
+ rule.QueueName = genruntime.ClonePointerToString(source.QueueName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_QueueScaleRule populates the provided destination QueueScaleRule from our QueueScaleRule
+func (rule *QueueScaleRule) AssignProperties_To_QueueScaleRule(destination *storage.QueueScaleRule) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth
+ err := authItem.AssignProperties_To_ScaleRuleAuth(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // QueueLength
+ destination.QueueLength = genruntime.ClonePointerToInt(rule.QueueLength)
+
+ // QueueName
+ destination.QueueName = genruntime.ClonePointerToString(rule.QueueName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_QueueScaleRule_STATUS populates our QueueScaleRule from the provided source QueueScaleRule_STATUS
+func (rule *QueueScaleRule) Initialize_From_QueueScaleRule_STATUS(source *QueueScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.Initialize_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // QueueLength
+ rule.QueueLength = genruntime.ClonePointerToInt(source.QueueLength)
+
+ // QueueName
+ rule.QueueName = genruntime.ClonePointerToString(source.QueueName)
+
+ // No error
+ return nil
+}
+
+// Container App container Azure Queue based scaling rule.
+type QueueScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the queue scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // QueueLength: Queue length.
+ QueueLength *int `json:"queueLength,omitempty"`
+
+ // QueueName: Queue name.
+ QueueName *string `json:"queueName,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &QueueScaleRule_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *QueueScaleRule_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.QueueScaleRule_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *QueueScaleRule_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.QueueScaleRule_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.QueueScaleRule_STATUS, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "QueueLength":
+ if typedInput.QueueLength != nil {
+ queueLength := *typedInput.QueueLength
+ rule.QueueLength = &queueLength
+ }
+
+ // Set property "QueueName":
+ if typedInput.QueueName != nil {
+ queueName := *typedInput.QueueName
+ rule.QueueName = &queueName
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_QueueScaleRule_STATUS populates our QueueScaleRule_STATUS from the provided source QueueScaleRule_STATUS
+func (rule *QueueScaleRule_STATUS) AssignProperties_From_QueueScaleRule_STATUS(source *storage.QueueScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth_STATUS, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth_STATUS
+ err := auth.AssignProperties_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // QueueLength
+ rule.QueueLength = genruntime.ClonePointerToInt(source.QueueLength)
+
+ // QueueName
+ rule.QueueName = genruntime.ClonePointerToString(source.QueueName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_QueueScaleRule_STATUS populates the provided destination QueueScaleRule_STATUS from our QueueScaleRule_STATUS
+func (rule *QueueScaleRule_STATUS) AssignProperties_To_QueueScaleRule_STATUS(destination *storage.QueueScaleRule_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth_STATUS, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth_STATUS
+ err := authItem.AssignProperties_To_ScaleRuleAuth_STATUS(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // QueueLength
+ destination.QueueLength = genruntime.ClonePointerToInt(rule.QueueLength)
+
+ // QueueName
+ destination.QueueName = genruntime.ClonePointerToString(rule.QueueName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container App container Tcp scaling rule.
+type TcpScaleRule struct {
+ // Auth: Authentication secrets for the tcp scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe tcp scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &TcpScaleRule{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (rule *TcpScaleRule) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if rule == nil {
+ return nil, nil
+ }
+ result := &arm.TcpScaleRule{}
+
+ // Set property "Auth":
+ for _, item := range rule.Auth {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Auth = append(result.Auth, *item_ARM.(*arm.ScaleRuleAuth))
+ }
+
+ // Set property "Metadata":
+ if rule.Metadata != nil {
+ result.Metadata = make(map[string]string, len(rule.Metadata))
+ for key, value := range rule.Metadata {
+ result.Metadata[key] = value
+ }
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *TcpScaleRule) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.TcpScaleRule{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *TcpScaleRule) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.TcpScaleRule)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.TcpScaleRule, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "Metadata":
+ if typedInput.Metadata != nil {
+ rule.Metadata = make(map[string]string, len(typedInput.Metadata))
+ for key, value := range typedInput.Metadata {
+ rule.Metadata[key] = value
+ }
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_TcpScaleRule populates our TcpScaleRule from the provided source TcpScaleRule
+func (rule *TcpScaleRule) AssignProperties_From_TcpScaleRule(source *storage.TcpScaleRule) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.AssignProperties_From_ScaleRuleAuth(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_TcpScaleRule populates the provided destination TcpScaleRule from our TcpScaleRule
+func (rule *TcpScaleRule) AssignProperties_To_TcpScaleRule(destination *storage.TcpScaleRule) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth
+ err := authItem.AssignProperties_To_ScaleRuleAuth(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // Metadata
+ destination.Metadata = genruntime.CloneMapOfStringToString(rule.Metadata)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_TcpScaleRule_STATUS populates our TcpScaleRule from the provided source TcpScaleRule_STATUS
+func (rule *TcpScaleRule) Initialize_From_TcpScaleRule_STATUS(source *TcpScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.Initialize_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // No error
+ return nil
+}
+
+// Container App container Tcp scaling rule.
+type TcpScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the tcp scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe tcp scale rule.
+ Metadata map[string]string `json:"metadata,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &TcpScaleRule_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *TcpScaleRule_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.TcpScaleRule_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *TcpScaleRule_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.TcpScaleRule_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.TcpScaleRule_STATUS, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "Metadata":
+ if typedInput.Metadata != nil {
+ rule.Metadata = make(map[string]string, len(typedInput.Metadata))
+ for key, value := range typedInput.Metadata {
+ rule.Metadata[key] = value
+ }
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_TcpScaleRule_STATUS populates our TcpScaleRule_STATUS from the provided source TcpScaleRule_STATUS
+func (rule *TcpScaleRule_STATUS) AssignProperties_From_TcpScaleRule_STATUS(source *storage.TcpScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth_STATUS, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth_STATUS
+ err := auth.AssignProperties_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ rule.Metadata = genruntime.CloneMapOfStringToString(source.Metadata)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_TcpScaleRule_STATUS populates the provided destination TcpScaleRule_STATUS from our TcpScaleRule_STATUS
+func (rule *TcpScaleRule_STATUS) AssignProperties_To_TcpScaleRule_STATUS(destination *storage.TcpScaleRule_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth_STATUS, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth_STATUS
+ err := authItem.AssignProperties_To_ScaleRuleAuth_STATUS(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // Metadata
+ destination.Metadata = genruntime.CloneMapOfStringToString(rule.Metadata)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ContainerAppProbe_HttpGet_HttpHeaders struct {
+ // +kubebuilder:validation:Required
+ // Name: The header field name
+ Name *string `json:"name,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Value: The header field value
+ Value *string `json:"value,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ContainerAppProbe_HttpGet_HttpHeaders{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if headers == nil {
+ return nil, nil
+ }
+ result := &arm.ContainerAppProbe_HttpGet_HttpHeaders{}
+
+ // Set property "Name":
+ if headers.Name != nil {
+ name := *headers.Name
+ result.Name = &name
+ }
+
+ // Set property "Value":
+ if headers.Value != nil {
+ value := *headers.Value
+ result.Value = &value
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerAppProbe_HttpGet_HttpHeaders{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerAppProbe_HttpGet_HttpHeaders)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerAppProbe_HttpGet_HttpHeaders, got %T", armInput)
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ headers.Name = &name
+ }
+
+ // Set property "Value":
+ if typedInput.Value != nil {
+ value := *typedInput.Value
+ headers.Value = &value
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders populates our ContainerAppProbe_HttpGet_HttpHeaders from the provided source ContainerAppProbe_HttpGet_HttpHeaders
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders) AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders(source *storage.ContainerAppProbe_HttpGet_HttpHeaders) error {
+
+ // Name
+ headers.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Value
+ headers.Value = genruntime.ClonePointerToString(source.Value)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders populates the provided destination ContainerAppProbe_HttpGet_HttpHeaders from our ContainerAppProbe_HttpGet_HttpHeaders
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders) AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders(destination *storage.ContainerAppProbe_HttpGet_HttpHeaders) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(headers.Name)
+
+ // Value
+ destination.Value = genruntime.ClonePointerToString(headers.Value)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS populates our ContainerAppProbe_HttpGet_HttpHeaders from the provided source ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders) Initialize_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS(source *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) error {
+
+ // Name
+ headers.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Value
+ headers.Value = genruntime.ClonePointerToString(source.Value)
+
+ // No error
+ return nil
+}
+
+type ContainerAppProbe_HttpGet_HttpHeaders_STATUS struct {
+ // Name: The header field name
+ Name *string `json:"name,omitempty"`
+
+ // Value: The header field value
+ Value *string `json:"value,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ContainerAppProbe_HttpGet_HttpHeaders_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ContainerAppProbe_HttpGet_HttpHeaders_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ContainerAppProbe_HttpGet_HttpHeaders_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ContainerAppProbe_HttpGet_HttpHeaders_STATUS, got %T", armInput)
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ headers.Name = &name
+ }
+
+ // Set property "Value":
+ if typedInput.Value != nil {
+ value := *typedInput.Value
+ headers.Value = &value
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS populates our ContainerAppProbe_HttpGet_HttpHeaders_STATUS from the provided source ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS(source *storage.ContainerAppProbe_HttpGet_HttpHeaders_STATUS) error {
+
+ // Name
+ headers.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Value
+ headers.Value = genruntime.ClonePointerToString(source.Value)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders_STATUS populates the provided destination ContainerAppProbe_HttpGet_HttpHeaders_STATUS from our ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+func (headers *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders_STATUS(destination *storage.ContainerAppProbe_HttpGet_HttpHeaders_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(headers.Name)
+
+ // Value
+ destination.Value = genruntime.ClonePointerToString(headers.Value)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"HTTP","HTTPS"}
+type ContainerAppProbe_HttpGet_Scheme string
+
+const (
+ ContainerAppProbe_HttpGet_Scheme_HTTP = ContainerAppProbe_HttpGet_Scheme("HTTP")
+ ContainerAppProbe_HttpGet_Scheme_HTTPS = ContainerAppProbe_HttpGet_Scheme("HTTPS")
+)
+
+// Mapping from string to ContainerAppProbe_HttpGet_Scheme
+var containerAppProbe_HttpGet_Scheme_Values = map[string]ContainerAppProbe_HttpGet_Scheme{
+ "http": ContainerAppProbe_HttpGet_Scheme_HTTP,
+ "https": ContainerAppProbe_HttpGet_Scheme_HTTPS,
+}
+
+type ContainerAppProbe_HttpGet_Scheme_STATUS string
+
+const (
+ ContainerAppProbe_HttpGet_Scheme_STATUS_HTTP = ContainerAppProbe_HttpGet_Scheme_STATUS("HTTP")
+ ContainerAppProbe_HttpGet_Scheme_STATUS_HTTPS = ContainerAppProbe_HttpGet_Scheme_STATUS("HTTPS")
+)
+
+// Mapping from string to ContainerAppProbe_HttpGet_Scheme_STATUS
+var containerAppProbe_HttpGet_Scheme_STATUS_Values = map[string]ContainerAppProbe_HttpGet_Scheme_STATUS{
+ "http": ContainerAppProbe_HttpGet_Scheme_STATUS_HTTP,
+ "https": ContainerAppProbe_HttpGet_Scheme_STATUS_HTTPS,
+}
+
+// Auth Secrets for Scale Rule
+type ScaleRuleAuth struct {
+ // SecretRef: Name of the secret from which to pull the auth params.
+ SecretRef *string `json:"secretRef,omitempty"`
+
+ // TriggerParameter: Trigger Parameter that uses the secret
+ TriggerParameter *string `json:"triggerParameter,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ScaleRuleAuth{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (auth *ScaleRuleAuth) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if auth == nil {
+ return nil, nil
+ }
+ result := &arm.ScaleRuleAuth{}
+
+ // Set property "SecretRef":
+ if auth.SecretRef != nil {
+ secretRef := *auth.SecretRef
+ result.SecretRef = &secretRef
+ }
+
+ // Set property "TriggerParameter":
+ if auth.TriggerParameter != nil {
+ triggerParameter := *auth.TriggerParameter
+ result.TriggerParameter = &triggerParameter
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (auth *ScaleRuleAuth) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ScaleRuleAuth{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (auth *ScaleRuleAuth) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ScaleRuleAuth)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ScaleRuleAuth, got %T", armInput)
+ }
+
+ // Set property "SecretRef":
+ if typedInput.SecretRef != nil {
+ secretRef := *typedInput.SecretRef
+ auth.SecretRef = &secretRef
+ }
+
+ // Set property "TriggerParameter":
+ if typedInput.TriggerParameter != nil {
+ triggerParameter := *typedInput.TriggerParameter
+ auth.TriggerParameter = &triggerParameter
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ScaleRuleAuth populates our ScaleRuleAuth from the provided source ScaleRuleAuth
+func (auth *ScaleRuleAuth) AssignProperties_From_ScaleRuleAuth(source *storage.ScaleRuleAuth) error {
+
+ // SecretRef
+ auth.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // TriggerParameter
+ auth.TriggerParameter = genruntime.ClonePointerToString(source.TriggerParameter)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ScaleRuleAuth populates the provided destination ScaleRuleAuth from our ScaleRuleAuth
+func (auth *ScaleRuleAuth) AssignProperties_To_ScaleRuleAuth(destination *storage.ScaleRuleAuth) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // SecretRef
+ destination.SecretRef = genruntime.ClonePointerToString(auth.SecretRef)
+
+ // TriggerParameter
+ destination.TriggerParameter = genruntime.ClonePointerToString(auth.TriggerParameter)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ScaleRuleAuth_STATUS populates our ScaleRuleAuth from the provided source ScaleRuleAuth_STATUS
+func (auth *ScaleRuleAuth) Initialize_From_ScaleRuleAuth_STATUS(source *ScaleRuleAuth_STATUS) error {
+
+ // SecretRef
+ auth.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // TriggerParameter
+ auth.TriggerParameter = genruntime.ClonePointerToString(source.TriggerParameter)
+
+ // No error
+ return nil
+}
+
+// Auth Secrets for Scale Rule
+type ScaleRuleAuth_STATUS struct {
+ // SecretRef: Name of the secret from which to pull the auth params.
+ SecretRef *string `json:"secretRef,omitempty"`
+
+ // TriggerParameter: Trigger Parameter that uses the secret
+ TriggerParameter *string `json:"triggerParameter,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ScaleRuleAuth_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (auth *ScaleRuleAuth_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ScaleRuleAuth_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (auth *ScaleRuleAuth_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ScaleRuleAuth_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ScaleRuleAuth_STATUS, got %T", armInput)
+ }
+
+ // Set property "SecretRef":
+ if typedInput.SecretRef != nil {
+ secretRef := *typedInput.SecretRef
+ auth.SecretRef = &secretRef
+ }
+
+ // Set property "TriggerParameter":
+ if typedInput.TriggerParameter != nil {
+ triggerParameter := *typedInput.TriggerParameter
+ auth.TriggerParameter = &triggerParameter
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ScaleRuleAuth_STATUS populates our ScaleRuleAuth_STATUS from the provided source ScaleRuleAuth_STATUS
+func (auth *ScaleRuleAuth_STATUS) AssignProperties_From_ScaleRuleAuth_STATUS(source *storage.ScaleRuleAuth_STATUS) error {
+
+ // SecretRef
+ auth.SecretRef = genruntime.ClonePointerToString(source.SecretRef)
+
+ // TriggerParameter
+ auth.TriggerParameter = genruntime.ClonePointerToString(source.TriggerParameter)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ScaleRuleAuth_STATUS populates the provided destination ScaleRuleAuth_STATUS from our ScaleRuleAuth_STATUS
+func (auth *ScaleRuleAuth_STATUS) AssignProperties_To_ScaleRuleAuth_STATUS(destination *storage.ScaleRuleAuth_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // SecretRef
+ destination.SecretRef = genruntime.ClonePointerToString(auth.SecretRef)
+
+ // TriggerParameter
+ destination.TriggerParameter = genruntime.ClonePointerToString(auth.TriggerParameter)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+func init() {
+ SchemeBuilder.Register(&ContainerApp{}, &ContainerAppList{})
+}
diff --git a/v2/api/app/v1api20240301/container_app_types_gen_test.go b/v2/api/app/v1api20240301/container_app_types_gen_test.go
new file mode 100644
index 00000000000..ba8a81fbbdb
--- /dev/null
+++ b/v2/api/app/v1api20240301/container_app_types_gen_test.go
@@ -0,0 +1,8433 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package v1api20240301
+
+import (
+ "encoding/json"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/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_BaseContainer_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from BaseContainer to BaseContainer via AssignProperties_To_BaseContainer & AssignProperties_From_BaseContainer returns original",
+ prop.ForAll(RunPropertyAssignmentTestForBaseContainer, BaseContainerGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForBaseContainer tests if a specific instance of BaseContainer can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForBaseContainer(subject BaseContainer) 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.BaseContainer
+ err := copied.AssignProperties_To_BaseContainer(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual BaseContainer
+ err = actual.AssignProperties_From_BaseContainer(&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_BaseContainer_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 BaseContainer via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBaseContainer, BaseContainerGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBaseContainer runs a test to see if a specific instance of BaseContainer round trips to JSON and back losslessly
+func RunJSONSerializationTestForBaseContainer(subject BaseContainer) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BaseContainer
+ 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 BaseContainer instances for property testing - lazily instantiated by BaseContainerGenerator()
+var baseContainerGenerator gopter.Gen
+
+// BaseContainerGenerator returns a generator of BaseContainer instances for property testing.
+// We first initialize baseContainerGenerator 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 BaseContainerGenerator() gopter.Gen {
+ if baseContainerGenerator != nil {
+ return baseContainerGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer(generators)
+ baseContainerGenerator = gen.Struct(reflect.TypeOf(BaseContainer{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer(generators)
+ AddRelatedPropertyGeneratorsForBaseContainer(generators)
+ baseContainerGenerator = gen.Struct(reflect.TypeOf(BaseContainer{}), generators)
+
+ return baseContainerGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBaseContainer is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBaseContainer(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForBaseContainer is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForBaseContainer(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVarGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResourcesGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMountGenerator())
+}
+
+func Test_BaseContainer_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from BaseContainer_STATUS to BaseContainer_STATUS via AssignProperties_To_BaseContainer_STATUS & AssignProperties_From_BaseContainer_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForBaseContainer_STATUS, BaseContainer_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForBaseContainer_STATUS tests if a specific instance of BaseContainer_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForBaseContainer_STATUS(subject BaseContainer_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.BaseContainer_STATUS
+ err := copied.AssignProperties_To_BaseContainer_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual BaseContainer_STATUS
+ err = actual.AssignProperties_From_BaseContainer_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_BaseContainer_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 BaseContainer_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBaseContainer_STATUS, BaseContainer_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBaseContainer_STATUS runs a test to see if a specific instance of BaseContainer_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForBaseContainer_STATUS(subject BaseContainer_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BaseContainer_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 BaseContainer_STATUS instances for property testing - lazily instantiated by
+// BaseContainer_STATUSGenerator()
+var baseContainer_STATUSGenerator gopter.Gen
+
+// BaseContainer_STATUSGenerator returns a generator of BaseContainer_STATUS instances for property testing.
+// We first initialize baseContainer_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 BaseContainer_STATUSGenerator() gopter.Gen {
+ if baseContainer_STATUSGenerator != nil {
+ return baseContainer_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer_STATUS(generators)
+ baseContainer_STATUSGenerator = gen.Struct(reflect.TypeOf(BaseContainer_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer_STATUS(generators)
+ AddRelatedPropertyGeneratorsForBaseContainer_STATUS(generators)
+ baseContainer_STATUSGenerator = gen.Struct(reflect.TypeOf(BaseContainer_STATUS{}), generators)
+
+ return baseContainer_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBaseContainer_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBaseContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForBaseContainer_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForBaseContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVar_STATUSGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResources_STATUSGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMount_STATUSGenerator())
+}
+
+func Test_Configuration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Configuration to Configuration via AssignProperties_To_Configuration & AssignProperties_From_Configuration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForConfiguration, ConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForConfiguration tests if a specific instance of Configuration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForConfiguration(subject Configuration) 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.Configuration
+ err := copied.AssignProperties_To_Configuration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Configuration
+ err = actual.AssignProperties_From_Configuration(&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_Configuration_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 Configuration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForConfiguration, ConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForConfiguration runs a test to see if a specific instance of Configuration round trips to JSON and back losslessly
+func RunJSONSerializationTestForConfiguration(subject Configuration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Configuration
+ 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 Configuration instances for property testing - lazily instantiated by ConfigurationGenerator()
+var configurationGenerator gopter.Gen
+
+// ConfigurationGenerator returns a generator of Configuration instances for property testing.
+// We first initialize configurationGenerator 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 ConfigurationGenerator() gopter.Gen {
+ if configurationGenerator != nil {
+ return configurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration(generators)
+ configurationGenerator = gen.Struct(reflect.TypeOf(Configuration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration(generators)
+ AddRelatedPropertyGeneratorsForConfiguration(generators)
+ configurationGenerator = gen.Struct(reflect.TypeOf(Configuration{}), generators)
+
+ return configurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForConfiguration(gens map[string]gopter.Gen) {
+ gens["ActiveRevisionsMode"] = gen.PtrOf(gen.OneConstOf(Configuration_ActiveRevisionsMode_Multiple, Configuration_ActiveRevisionsMode_Single))
+ gens["MaxInactiveRevisions"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForConfiguration(gens map[string]gopter.Gen) {
+ gens["Dapr"] = gen.PtrOf(DaprGenerator())
+ gens["Ingress"] = gen.PtrOf(IngressGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentialsGenerator())
+ gens["Secrets"] = gen.SliceOf(SecretGenerator())
+ gens["Service"] = gen.PtrOf(ServiceGenerator())
+}
+
+func Test_Configuration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Configuration_STATUS to Configuration_STATUS via AssignProperties_To_Configuration_STATUS & AssignProperties_From_Configuration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForConfiguration_STATUS, Configuration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForConfiguration_STATUS tests if a specific instance of Configuration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForConfiguration_STATUS(subject Configuration_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.Configuration_STATUS
+ err := copied.AssignProperties_To_Configuration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Configuration_STATUS
+ err = actual.AssignProperties_From_Configuration_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_Configuration_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 Configuration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForConfiguration_STATUS, Configuration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForConfiguration_STATUS runs a test to see if a specific instance of Configuration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForConfiguration_STATUS(subject Configuration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Configuration_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 Configuration_STATUS instances for property testing - lazily instantiated by
+// Configuration_STATUSGenerator()
+var configuration_STATUSGenerator gopter.Gen
+
+// Configuration_STATUSGenerator returns a generator of Configuration_STATUS instances for property testing.
+// We first initialize configuration_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 Configuration_STATUSGenerator() gopter.Gen {
+ if configuration_STATUSGenerator != nil {
+ return configuration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration_STATUS(generators)
+ configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(Configuration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForConfiguration_STATUS(generators)
+ configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(Configuration_STATUS{}), generators)
+
+ return configuration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["ActiveRevisionsMode"] = gen.PtrOf(gen.OneConstOf(Configuration_ActiveRevisionsMode_STATUS_Multiple, Configuration_ActiveRevisionsMode_STATUS_Single))
+ gens["MaxInactiveRevisions"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Dapr"] = gen.PtrOf(Dapr_STATUSGenerator())
+ gens["Ingress"] = gen.PtrOf(Ingress_STATUSGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentials_STATUSGenerator())
+ gens["Secrets"] = gen.SliceOf(Secret_STATUSGenerator())
+ gens["Service"] = gen.PtrOf(Service_STATUSGenerator())
+}
+
+func Test_Container_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Container to Container via AssignProperties_To_Container & AssignProperties_From_Container returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainer, ContainerGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainer tests if a specific instance of Container can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainer(subject Container) 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.Container
+ err := copied.AssignProperties_To_Container(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Container
+ err = actual.AssignProperties_From_Container(&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_Container_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 Container via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainer, ContainerGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainer runs a test to see if a specific instance of Container round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainer(subject Container) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Container
+ 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 Container instances for property testing - lazily instantiated by ContainerGenerator()
+var containerGenerator gopter.Gen
+
+// ContainerGenerator returns a generator of Container instances for property testing.
+// We first initialize containerGenerator 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 ContainerGenerator() gopter.Gen {
+ if containerGenerator != nil {
+ return containerGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer(generators)
+ containerGenerator = gen.Struct(reflect.TypeOf(Container{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer(generators)
+ AddRelatedPropertyGeneratorsForContainer(generators)
+ containerGenerator = gen.Struct(reflect.TypeOf(Container{}), generators)
+
+ return containerGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainer is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainer(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainer is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainer(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVarGenerator())
+ gens["Probes"] = gen.SliceOf(ContainerAppProbeGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResourcesGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMountGenerator())
+}
+
+func Test_ContainerApp_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 ContainerApp to hub returns original",
+ prop.ForAll(RunResourceConversionTestForContainerApp, ContainerAppGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunResourceConversionTestForContainerApp tests if a specific instance of ContainerApp round trips to the hub storage version and back losslessly
+func RunResourceConversionTestForContainerApp(subject ContainerApp) string {
+ // Copy subject to make sure conversion doesn't modify it
+ copied := subject.DeepCopy()
+
+ // Convert to our hub version
+ var hub storage.ContainerApp
+ err := copied.ConvertTo(&hub)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Convert from our hub version
+ var actual ContainerApp
+ 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_ContainerApp_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerApp to ContainerApp via AssignProperties_To_ContainerApp & AssignProperties_From_ContainerApp returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerApp, ContainerAppGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerApp tests if a specific instance of ContainerApp can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerApp(subject ContainerApp) 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.ContainerApp
+ err := copied.AssignProperties_To_ContainerApp(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerApp
+ err = actual.AssignProperties_From_ContainerApp(&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_ContainerApp_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 ContainerApp via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp, ContainerAppGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp runs a test to see if a specific instance of ContainerApp round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp(subject ContainerApp) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp
+ 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 ContainerApp instances for property testing - lazily instantiated by ContainerAppGenerator()
+var containerAppGenerator gopter.Gen
+
+// ContainerAppGenerator returns a generator of ContainerApp instances for property testing.
+func ContainerAppGenerator() gopter.Gen {
+ if containerAppGenerator != nil {
+ return containerAppGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForContainerApp(generators)
+ containerAppGenerator = gen.Struct(reflect.TypeOf(ContainerApp{}), generators)
+
+ return containerAppGenerator
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp(gens map[string]gopter.Gen) {
+ gens["Spec"] = ContainerApp_SpecGenerator()
+ gens["Status"] = ContainerApp_STATUSGenerator()
+}
+
+func Test_ContainerAppOperatorConfigMaps_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppOperatorConfigMaps to ContainerAppOperatorConfigMaps via AssignProperties_To_ContainerAppOperatorConfigMaps & AssignProperties_From_ContainerAppOperatorConfigMaps returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppOperatorConfigMaps, ContainerAppOperatorConfigMapsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppOperatorConfigMaps tests if a specific instance of ContainerAppOperatorConfigMaps can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppOperatorConfigMaps(subject ContainerAppOperatorConfigMaps) 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.ContainerAppOperatorConfigMaps
+ err := copied.AssignProperties_To_ContainerAppOperatorConfigMaps(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppOperatorConfigMaps
+ err = actual.AssignProperties_From_ContainerAppOperatorConfigMaps(&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_ContainerAppOperatorConfigMaps_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 ContainerAppOperatorConfigMaps via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppOperatorConfigMaps, ContainerAppOperatorConfigMapsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppOperatorConfigMaps runs a test to see if a specific instance of ContainerAppOperatorConfigMaps round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppOperatorConfigMaps(subject ContainerAppOperatorConfigMaps) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppOperatorConfigMaps
+ 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 ContainerAppOperatorConfigMaps instances for property testing - lazily instantiated by
+// ContainerAppOperatorConfigMapsGenerator()
+var containerAppOperatorConfigMapsGenerator gopter.Gen
+
+// ContainerAppOperatorConfigMapsGenerator returns a generator of ContainerAppOperatorConfigMaps instances for property testing.
+func ContainerAppOperatorConfigMapsGenerator() gopter.Gen {
+ if containerAppOperatorConfigMapsGenerator != nil {
+ return containerAppOperatorConfigMapsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ containerAppOperatorConfigMapsGenerator = gen.Struct(reflect.TypeOf(ContainerAppOperatorConfigMaps{}), generators)
+
+ return containerAppOperatorConfigMapsGenerator
+}
+
+func Test_ContainerAppOperatorSpec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppOperatorSpec to ContainerAppOperatorSpec via AssignProperties_To_ContainerAppOperatorSpec & AssignProperties_From_ContainerAppOperatorSpec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppOperatorSpec, ContainerAppOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppOperatorSpec tests if a specific instance of ContainerAppOperatorSpec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppOperatorSpec(subject ContainerAppOperatorSpec) 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.ContainerAppOperatorSpec
+ err := copied.AssignProperties_To_ContainerAppOperatorSpec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppOperatorSpec
+ err = actual.AssignProperties_From_ContainerAppOperatorSpec(&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_ContainerAppOperatorSpec_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 ContainerAppOperatorSpec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppOperatorSpec, ContainerAppOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppOperatorSpec runs a test to see if a specific instance of ContainerAppOperatorSpec round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppOperatorSpec(subject ContainerAppOperatorSpec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppOperatorSpec
+ 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 ContainerAppOperatorSpec instances for property testing - lazily instantiated by
+// ContainerAppOperatorSpecGenerator()
+var containerAppOperatorSpecGenerator gopter.Gen
+
+// ContainerAppOperatorSpecGenerator returns a generator of ContainerAppOperatorSpec instances for property testing.
+func ContainerAppOperatorSpecGenerator() gopter.Gen {
+ if containerAppOperatorSpecGenerator != nil {
+ return containerAppOperatorSpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForContainerAppOperatorSpec(generators)
+ containerAppOperatorSpecGenerator = gen.Struct(reflect.TypeOf(ContainerAppOperatorSpec{}), generators)
+
+ return containerAppOperatorSpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppOperatorSpec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppOperatorSpec(gens map[string]gopter.Gen) {
+ gens["ConfigMaps"] = gen.PtrOf(ContainerAppOperatorConfigMapsGenerator())
+}
+
+func Test_ContainerAppProbe_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppProbe to ContainerAppProbe via AssignProperties_To_ContainerAppProbe & AssignProperties_From_ContainerAppProbe returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppProbe, ContainerAppProbeGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppProbe tests if a specific instance of ContainerAppProbe can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppProbe(subject ContainerAppProbe) 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.ContainerAppProbe
+ err := copied.AssignProperties_To_ContainerAppProbe(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppProbe
+ err = actual.AssignProperties_From_ContainerAppProbe(&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_ContainerAppProbe_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 ContainerAppProbe via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe, ContainerAppProbeGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe runs a test to see if a specific instance of ContainerAppProbe round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe(subject ContainerAppProbe) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe
+ 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 ContainerAppProbe instances for property testing - lazily instantiated by ContainerAppProbeGenerator()
+var containerAppProbeGenerator gopter.Gen
+
+// ContainerAppProbeGenerator returns a generator of ContainerAppProbe instances for property testing.
+// We first initialize containerAppProbeGenerator 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 ContainerAppProbeGenerator() gopter.Gen {
+ if containerAppProbeGenerator != nil {
+ return containerAppProbeGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe(generators)
+ containerAppProbeGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe(generators)
+ containerAppProbeGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe{}), generators)
+
+ return containerAppProbeGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe(gens map[string]gopter.Gen) {
+ gens["FailureThreshold"] = gen.PtrOf(gen.Int())
+ gens["InitialDelaySeconds"] = gen.PtrOf(gen.Int())
+ gens["PeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["SuccessThreshold"] = gen.PtrOf(gen.Int())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["TimeoutSeconds"] = gen.PtrOf(gen.Int())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(ContainerAppProbe_Type_Liveness, ContainerAppProbe_Type_Readiness, ContainerAppProbe_Type_Startup))
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe(gens map[string]gopter.Gen) {
+ gens["HttpGet"] = gen.PtrOf(ContainerAppProbe_HttpGetGenerator())
+ gens["TcpSocket"] = gen.PtrOf(ContainerAppProbe_TcpSocketGenerator())
+}
+
+func Test_ContainerAppProbe_HttpGet_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppProbe_HttpGet to ContainerAppProbe_HttpGet via AssignProperties_To_ContainerAppProbe_HttpGet & AssignProperties_From_ContainerAppProbe_HttpGet returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppProbe_HttpGet, ContainerAppProbe_HttpGetGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppProbe_HttpGet tests if a specific instance of ContainerAppProbe_HttpGet can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppProbe_HttpGet(subject ContainerAppProbe_HttpGet) 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.ContainerAppProbe_HttpGet
+ err := copied.AssignProperties_To_ContainerAppProbe_HttpGet(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppProbe_HttpGet
+ err = actual.AssignProperties_From_ContainerAppProbe_HttpGet(&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_ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet, ContainerAppProbe_HttpGetGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet runs a test to see if a specific instance of ContainerAppProbe_HttpGet round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet(subject ContainerAppProbe_HttpGet) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet
+ 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 ContainerAppProbe_HttpGet instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGetGenerator()
+var containerAppProbe_HttpGetGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGetGenerator returns a generator of ContainerAppProbe_HttpGet instances for property testing.
+// We first initialize containerAppProbe_HttpGetGenerator 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 ContainerAppProbe_HttpGetGenerator() gopter.Gen {
+ if containerAppProbe_HttpGetGenerator != nil {
+ return containerAppProbe_HttpGetGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ containerAppProbe_HttpGetGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ containerAppProbe_HttpGetGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet{}), generators)
+
+ return containerAppProbe_HttpGetGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+ gens["Scheme"] = gen.PtrOf(gen.OneConstOf(ContainerAppProbe_HttpGet_Scheme_HTTP, ContainerAppProbe_HttpGet_Scheme_HTTPS))
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet(gens map[string]gopter.Gen) {
+ gens["HttpHeaders"] = gen.SliceOf(ContainerAppProbe_HttpGet_HttpHeadersGenerator())
+}
+
+func Test_ContainerAppProbe_HttpGet_HttpHeaders_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppProbe_HttpGet_HttpHeaders to ContainerAppProbe_HttpGet_HttpHeaders via AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders & AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppProbe_HttpGet_HttpHeaders, ContainerAppProbe_HttpGet_HttpHeadersGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppProbe_HttpGet_HttpHeaders tests if a specific instance of ContainerAppProbe_HttpGet_HttpHeaders can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppProbe_HttpGet_HttpHeaders(subject ContainerAppProbe_HttpGet_HttpHeaders) 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.ContainerAppProbe_HttpGet_HttpHeaders
+ err := copied.AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppProbe_HttpGet_HttpHeaders
+ err = actual.AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders(&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_ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders, ContainerAppProbe_HttpGet_HttpHeadersGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders runs a test to see if a specific instance of ContainerAppProbe_HttpGet_HttpHeaders round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders(subject ContainerAppProbe_HttpGet_HttpHeaders) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_HttpHeaders
+ 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 ContainerAppProbe_HttpGet_HttpHeaders instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_HttpHeadersGenerator()
+var containerAppProbe_HttpGet_HttpHeadersGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_HttpHeadersGenerator returns a generator of ContainerAppProbe_HttpGet_HttpHeaders instances for property testing.
+func ContainerAppProbe_HttpGet_HttpHeadersGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_HttpHeadersGenerator != nil {
+ return containerAppProbe_HttpGet_HttpHeadersGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders(generators)
+ containerAppProbe_HttpGet_HttpHeadersGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_HttpHeaders{}), generators)
+
+ return containerAppProbe_HttpGet_HttpHeadersGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerAppProbe_HttpGet_HttpHeaders_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppProbe_HttpGet_HttpHeaders_STATUS to ContainerAppProbe_HttpGet_HttpHeaders_STATUS via AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders_STATUS & AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS, ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS tests if a specific instance of ContainerAppProbe_HttpGet_HttpHeaders_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS(subject ContainerAppProbe_HttpGet_HttpHeaders_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.ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+ err := copied.AssignProperties_To_ContainerAppProbe_HttpGet_HttpHeaders_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+ err = actual.AssignProperties_From_ContainerAppProbe_HttpGet_HttpHeaders_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_ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS, ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS runs a test to see if a specific instance of ContainerAppProbe_HttpGet_HttpHeaders_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS(subject ContainerAppProbe_HttpGet_HttpHeaders_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator()
+var containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator returns a generator of ContainerAppProbe_HttpGet_HttpHeaders_STATUS instances for property testing.
+func ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator != nil {
+ return containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS(generators)
+ containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_HttpHeaders_STATUS{}), generators)
+
+ return containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerAppProbe_HttpGet_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppProbe_HttpGet_STATUS to ContainerAppProbe_HttpGet_STATUS via AssignProperties_To_ContainerAppProbe_HttpGet_STATUS & AssignProperties_From_ContainerAppProbe_HttpGet_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppProbe_HttpGet_STATUS, ContainerAppProbe_HttpGet_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppProbe_HttpGet_STATUS tests if a specific instance of ContainerAppProbe_HttpGet_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppProbe_HttpGet_STATUS(subject ContainerAppProbe_HttpGet_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.ContainerAppProbe_HttpGet_STATUS
+ err := copied.AssignProperties_To_ContainerAppProbe_HttpGet_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppProbe_HttpGet_STATUS
+ err = actual.AssignProperties_From_ContainerAppProbe_HttpGet_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_ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS, ContainerAppProbe_HttpGet_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS runs a test to see if a specific instance of ContainerAppProbe_HttpGet_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS(subject ContainerAppProbe_HttpGet_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_STATUSGenerator()
+var containerAppProbe_HttpGet_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_STATUSGenerator returns a generator of ContainerAppProbe_HttpGet_STATUS instances for property testing.
+// We first initialize containerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_STATUSGenerator != nil {
+ return containerAppProbe_HttpGet_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ containerAppProbe_HttpGet_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ containerAppProbe_HttpGet_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_STATUS{}), generators)
+
+ return containerAppProbe_HttpGet_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+ gens["Scheme"] = gen.PtrOf(gen.OneConstOf(ContainerAppProbe_HttpGet_Scheme_STATUS_HTTP, ContainerAppProbe_HttpGet_Scheme_STATUS_HTTPS))
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(gens map[string]gopter.Gen) {
+ gens["HttpHeaders"] = gen.SliceOf(ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator())
+}
+
+func Test_ContainerAppProbe_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppProbe_STATUS to ContainerAppProbe_STATUS via AssignProperties_To_ContainerAppProbe_STATUS & AssignProperties_From_ContainerAppProbe_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppProbe_STATUS, ContainerAppProbe_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppProbe_STATUS tests if a specific instance of ContainerAppProbe_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppProbe_STATUS(subject ContainerAppProbe_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.ContainerAppProbe_STATUS
+ err := copied.AssignProperties_To_ContainerAppProbe_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppProbe_STATUS
+ err = actual.AssignProperties_From_ContainerAppProbe_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_ContainerAppProbe_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 ContainerAppProbe_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_STATUS, ContainerAppProbe_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_STATUS runs a test to see if a specific instance of ContainerAppProbe_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_STATUS(subject ContainerAppProbe_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_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 ContainerAppProbe_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_STATUSGenerator()
+var containerAppProbe_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_STATUSGenerator returns a generator of ContainerAppProbe_STATUS instances for property testing.
+// We first initialize containerAppProbe_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 ContainerAppProbe_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_STATUSGenerator != nil {
+ return containerAppProbe_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ containerAppProbe_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ containerAppProbe_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_STATUS{}), generators)
+
+ return containerAppProbe_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(gens map[string]gopter.Gen) {
+ gens["FailureThreshold"] = gen.PtrOf(gen.Int())
+ gens["InitialDelaySeconds"] = gen.PtrOf(gen.Int())
+ gens["PeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["SuccessThreshold"] = gen.PtrOf(gen.Int())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["TimeoutSeconds"] = gen.PtrOf(gen.Int())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(ContainerAppProbe_Type_STATUS_Liveness, ContainerAppProbe_Type_STATUS_Readiness, ContainerAppProbe_Type_STATUS_Startup))
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS(gens map[string]gopter.Gen) {
+ gens["HttpGet"] = gen.PtrOf(ContainerAppProbe_HttpGet_STATUSGenerator())
+ gens["TcpSocket"] = gen.PtrOf(ContainerAppProbe_TcpSocket_STATUSGenerator())
+}
+
+func Test_ContainerAppProbe_TcpSocket_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppProbe_TcpSocket to ContainerAppProbe_TcpSocket via AssignProperties_To_ContainerAppProbe_TcpSocket & AssignProperties_From_ContainerAppProbe_TcpSocket returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppProbe_TcpSocket, ContainerAppProbe_TcpSocketGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppProbe_TcpSocket tests if a specific instance of ContainerAppProbe_TcpSocket can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppProbe_TcpSocket(subject ContainerAppProbe_TcpSocket) 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.ContainerAppProbe_TcpSocket
+ err := copied.AssignProperties_To_ContainerAppProbe_TcpSocket(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppProbe_TcpSocket
+ err = actual.AssignProperties_From_ContainerAppProbe_TcpSocket(&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_ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_TcpSocket, ContainerAppProbe_TcpSocketGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_TcpSocket runs a test to see if a specific instance of ContainerAppProbe_TcpSocket round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_TcpSocket(subject ContainerAppProbe_TcpSocket) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_TcpSocket
+ 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 ContainerAppProbe_TcpSocket instances for property testing - lazily instantiated by
+// ContainerAppProbe_TcpSocketGenerator()
+var containerAppProbe_TcpSocketGenerator gopter.Gen
+
+// ContainerAppProbe_TcpSocketGenerator returns a generator of ContainerAppProbe_TcpSocket instances for property testing.
+func ContainerAppProbe_TcpSocketGenerator() gopter.Gen {
+ if containerAppProbe_TcpSocketGenerator != nil {
+ return containerAppProbe_TcpSocketGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket(generators)
+ containerAppProbe_TcpSocketGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_TcpSocket{}), generators)
+
+ return containerAppProbe_TcpSocketGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+}
+
+func Test_ContainerAppProbe_TcpSocket_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerAppProbe_TcpSocket_STATUS to ContainerAppProbe_TcpSocket_STATUS via AssignProperties_To_ContainerAppProbe_TcpSocket_STATUS & AssignProperties_From_ContainerAppProbe_TcpSocket_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerAppProbe_TcpSocket_STATUS, ContainerAppProbe_TcpSocket_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerAppProbe_TcpSocket_STATUS tests if a specific instance of ContainerAppProbe_TcpSocket_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerAppProbe_TcpSocket_STATUS(subject ContainerAppProbe_TcpSocket_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.ContainerAppProbe_TcpSocket_STATUS
+ err := copied.AssignProperties_To_ContainerAppProbe_TcpSocket_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerAppProbe_TcpSocket_STATUS
+ err = actual.AssignProperties_From_ContainerAppProbe_TcpSocket_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_ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS, ContainerAppProbe_TcpSocket_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS runs a test to see if a specific instance of ContainerAppProbe_TcpSocket_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS(subject ContainerAppProbe_TcpSocket_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_TcpSocket_STATUSGenerator()
+var containerAppProbe_TcpSocket_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_TcpSocket_STATUSGenerator returns a generator of ContainerAppProbe_TcpSocket_STATUS instances for property testing.
+func ContainerAppProbe_TcpSocket_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_TcpSocket_STATUSGenerator != nil {
+ return containerAppProbe_TcpSocket_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS(generators)
+ containerAppProbe_TcpSocket_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_TcpSocket_STATUS{}), generators)
+
+ return containerAppProbe_TcpSocket_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+}
+
+func Test_ContainerApp_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerApp_STATUS to ContainerApp_STATUS via AssignProperties_To_ContainerApp_STATUS & AssignProperties_From_ContainerApp_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerApp_STATUS, ContainerApp_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerApp_STATUS tests if a specific instance of ContainerApp_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerApp_STATUS(subject ContainerApp_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.ContainerApp_STATUS
+ err := copied.AssignProperties_To_ContainerApp_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerApp_STATUS
+ err = actual.AssignProperties_From_ContainerApp_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_ContainerApp_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 ContainerApp_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp_STATUS, ContainerApp_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp_STATUS runs a test to see if a specific instance of ContainerApp_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp_STATUS(subject ContainerApp_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp_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 ContainerApp_STATUS instances for property testing - lazily instantiated by
+// ContainerApp_STATUSGenerator()
+var containerApp_STATUSGenerator gopter.Gen
+
+// ContainerApp_STATUSGenerator returns a generator of ContainerApp_STATUS instances for property testing.
+// We first initialize containerApp_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 ContainerApp_STATUSGenerator() gopter.Gen {
+ if containerApp_STATUSGenerator != nil {
+ return containerApp_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_STATUS(generators)
+ containerApp_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApp_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerApp_STATUS(generators)
+ containerApp_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApp_STATUS{}), generators)
+
+ return containerApp_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerApp_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerApp_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomDomainVerificationId"] = gen.PtrOf(gen.AlphaString())
+ gens["EnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestReadyRevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevisionFqdn"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["ManagedBy"] = gen.PtrOf(gen.AlphaString())
+ gens["ManagedEnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["OutboundIpAddresses"] = gen.SliceOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.OneConstOf(
+ ContainerApp_Properties_ProvisioningState_STATUS_Canceled,
+ ContainerApp_Properties_ProvisioningState_STATUS_Deleting,
+ ContainerApp_Properties_ProvisioningState_STATUS_Failed,
+ ContainerApp_Properties_ProvisioningState_STATUS_InProgress,
+ ContainerApp_Properties_ProvisioningState_STATUS_Succeeded))
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp_STATUS(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(Configuration_STATUSGenerator())
+ gens["ExtendedLocation"] = gen.PtrOf(ExtendedLocation_STATUSGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentity_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+ gens["Template"] = gen.PtrOf(Template_STATUSGenerator())
+}
+
+func Test_ContainerApp_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerApp_Spec to ContainerApp_Spec via AssignProperties_To_ContainerApp_Spec & AssignProperties_From_ContainerApp_Spec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerApp_Spec, ContainerApp_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerApp_Spec tests if a specific instance of ContainerApp_Spec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerApp_Spec(subject ContainerApp_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.ContainerApp_Spec
+ err := copied.AssignProperties_To_ContainerApp_Spec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerApp_Spec
+ err = actual.AssignProperties_From_ContainerApp_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_ContainerApp_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 ContainerApp_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp_Spec, ContainerApp_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp_Spec runs a test to see if a specific instance of ContainerApp_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp_Spec(subject ContainerApp_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp_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 ContainerApp_Spec instances for property testing - lazily instantiated by ContainerApp_SpecGenerator()
+var containerApp_SpecGenerator gopter.Gen
+
+// ContainerApp_SpecGenerator returns a generator of ContainerApp_Spec instances for property testing.
+// We first initialize containerApp_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 ContainerApp_SpecGenerator() gopter.Gen {
+ if containerApp_SpecGenerator != nil {
+ return containerApp_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Spec(generators)
+ containerApp_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Spec(generators)
+ AddRelatedPropertyGeneratorsForContainerApp_Spec(generators)
+ containerApp_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Spec{}), generators)
+
+ return containerApp_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerApp_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerApp_Spec(gens map[string]gopter.Gen) {
+ gens["AzureName"] = gen.AlphaString()
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp_Spec(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(ConfigurationGenerator())
+ gens["ExtendedLocation"] = gen.PtrOf(ExtendedLocationGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentityGenerator())
+ gens["OperatorSpec"] = gen.PtrOf(ContainerAppOperatorSpecGenerator())
+ gens["Template"] = gen.PtrOf(TemplateGenerator())
+}
+
+func Test_ContainerResources_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerResources to ContainerResources via AssignProperties_To_ContainerResources & AssignProperties_From_ContainerResources returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerResources, ContainerResourcesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerResources tests if a specific instance of ContainerResources can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerResources(subject ContainerResources) 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.ContainerResources
+ err := copied.AssignProperties_To_ContainerResources(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerResources
+ err = actual.AssignProperties_From_ContainerResources(&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_ContainerResources_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 ContainerResources via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerResources, ContainerResourcesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerResources runs a test to see if a specific instance of ContainerResources round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerResources(subject ContainerResources) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerResources
+ 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 ContainerResources instances for property testing - lazily instantiated by ContainerResourcesGenerator()
+var containerResourcesGenerator gopter.Gen
+
+// ContainerResourcesGenerator returns a generator of ContainerResources instances for property testing.
+func ContainerResourcesGenerator() gopter.Gen {
+ if containerResourcesGenerator != nil {
+ return containerResourcesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerResources(generators)
+ containerResourcesGenerator = gen.Struct(reflect.TypeOf(ContainerResources{}), generators)
+
+ return containerResourcesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerResources is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerResources(gens map[string]gopter.Gen) {
+ gens["Cpu"] = gen.PtrOf(gen.Float64())
+ gens["Memory"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerResources_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ContainerResources_STATUS to ContainerResources_STATUS via AssignProperties_To_ContainerResources_STATUS & AssignProperties_From_ContainerResources_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainerResources_STATUS, ContainerResources_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainerResources_STATUS tests if a specific instance of ContainerResources_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainerResources_STATUS(subject ContainerResources_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.ContainerResources_STATUS
+ err := copied.AssignProperties_To_ContainerResources_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ContainerResources_STATUS
+ err = actual.AssignProperties_From_ContainerResources_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_ContainerResources_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 ContainerResources_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerResources_STATUS, ContainerResources_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerResources_STATUS runs a test to see if a specific instance of ContainerResources_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerResources_STATUS(subject ContainerResources_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerResources_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 ContainerResources_STATUS instances for property testing - lazily instantiated by
+// ContainerResources_STATUSGenerator()
+var containerResources_STATUSGenerator gopter.Gen
+
+// ContainerResources_STATUSGenerator returns a generator of ContainerResources_STATUS instances for property testing.
+func ContainerResources_STATUSGenerator() gopter.Gen {
+ if containerResources_STATUSGenerator != nil {
+ return containerResources_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerResources_STATUS(generators)
+ containerResources_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerResources_STATUS{}), generators)
+
+ return containerResources_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerResources_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerResources_STATUS(gens map[string]gopter.Gen) {
+ gens["Cpu"] = gen.PtrOf(gen.Float64())
+ gens["EphemeralStorage"] = gen.PtrOf(gen.AlphaString())
+ gens["Memory"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Container_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Container_STATUS to Container_STATUS via AssignProperties_To_Container_STATUS & AssignProperties_From_Container_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForContainer_STATUS, Container_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForContainer_STATUS tests if a specific instance of Container_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForContainer_STATUS(subject Container_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.Container_STATUS
+ err := copied.AssignProperties_To_Container_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Container_STATUS
+ err = actual.AssignProperties_From_Container_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_Container_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 Container_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainer_STATUS, Container_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainer_STATUS runs a test to see if a specific instance of Container_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainer_STATUS(subject Container_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Container_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 Container_STATUS instances for property testing - lazily instantiated by Container_STATUSGenerator()
+var container_STATUSGenerator gopter.Gen
+
+// Container_STATUSGenerator returns a generator of Container_STATUS instances for property testing.
+// We first initialize container_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 Container_STATUSGenerator() gopter.Gen {
+ if container_STATUSGenerator != nil {
+ return container_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer_STATUS(generators)
+ container_STATUSGenerator = gen.Struct(reflect.TypeOf(Container_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainer_STATUS(generators)
+ container_STATUSGenerator = gen.Struct(reflect.TypeOf(Container_STATUS{}), generators)
+
+ return container_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainer_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainer_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVar_STATUSGenerator())
+ gens["Probes"] = gen.SliceOf(ContainerAppProbe_STATUSGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResources_STATUSGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMount_STATUSGenerator())
+}
+
+func Test_CorsPolicy_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CorsPolicy to CorsPolicy via AssignProperties_To_CorsPolicy & AssignProperties_From_CorsPolicy returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCorsPolicy, CorsPolicyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCorsPolicy tests if a specific instance of CorsPolicy can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCorsPolicy(subject CorsPolicy) 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.CorsPolicy
+ err := copied.AssignProperties_To_CorsPolicy(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CorsPolicy
+ err = actual.AssignProperties_From_CorsPolicy(&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_CorsPolicy_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 CorsPolicy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCorsPolicy, CorsPolicyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCorsPolicy runs a test to see if a specific instance of CorsPolicy round trips to JSON and back losslessly
+func RunJSONSerializationTestForCorsPolicy(subject CorsPolicy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CorsPolicy
+ 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 CorsPolicy instances for property testing - lazily instantiated by CorsPolicyGenerator()
+var corsPolicyGenerator gopter.Gen
+
+// CorsPolicyGenerator returns a generator of CorsPolicy instances for property testing.
+func CorsPolicyGenerator() gopter.Gen {
+ if corsPolicyGenerator != nil {
+ return corsPolicyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCorsPolicy(generators)
+ corsPolicyGenerator = gen.Struct(reflect.TypeOf(CorsPolicy{}), generators)
+
+ return corsPolicyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCorsPolicy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCorsPolicy(gens map[string]gopter.Gen) {
+ gens["AllowCredentials"] = gen.PtrOf(gen.Bool())
+ gens["AllowedHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedMethods"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedOrigins"] = gen.SliceOf(gen.AlphaString())
+ gens["ExposeHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["MaxAge"] = gen.PtrOf(gen.Int())
+}
+
+func Test_CorsPolicy_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CorsPolicy_STATUS to CorsPolicy_STATUS via AssignProperties_To_CorsPolicy_STATUS & AssignProperties_From_CorsPolicy_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCorsPolicy_STATUS, CorsPolicy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCorsPolicy_STATUS tests if a specific instance of CorsPolicy_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCorsPolicy_STATUS(subject CorsPolicy_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.CorsPolicy_STATUS
+ err := copied.AssignProperties_To_CorsPolicy_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CorsPolicy_STATUS
+ err = actual.AssignProperties_From_CorsPolicy_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_CorsPolicy_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 CorsPolicy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCorsPolicy_STATUS, CorsPolicy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCorsPolicy_STATUS runs a test to see if a specific instance of CorsPolicy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCorsPolicy_STATUS(subject CorsPolicy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CorsPolicy_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 CorsPolicy_STATUS instances for property testing - lazily instantiated by CorsPolicy_STATUSGenerator()
+var corsPolicy_STATUSGenerator gopter.Gen
+
+// CorsPolicy_STATUSGenerator returns a generator of CorsPolicy_STATUS instances for property testing.
+func CorsPolicy_STATUSGenerator() gopter.Gen {
+ if corsPolicy_STATUSGenerator != nil {
+ return corsPolicy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCorsPolicy_STATUS(generators)
+ corsPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(CorsPolicy_STATUS{}), generators)
+
+ return corsPolicy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCorsPolicy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCorsPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowCredentials"] = gen.PtrOf(gen.Bool())
+ gens["AllowedHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedMethods"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedOrigins"] = gen.SliceOf(gen.AlphaString())
+ gens["ExposeHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["MaxAge"] = gen.PtrOf(gen.Int())
+}
+
+func Test_CustomDomain_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CustomDomain to CustomDomain via AssignProperties_To_CustomDomain & AssignProperties_From_CustomDomain returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCustomDomain, CustomDomainGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCustomDomain tests if a specific instance of CustomDomain can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCustomDomain(subject CustomDomain) 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.CustomDomain
+ err := copied.AssignProperties_To_CustomDomain(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CustomDomain
+ err = actual.AssignProperties_From_CustomDomain(&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_CustomDomain_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 CustomDomain via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomain, CustomDomainGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomain runs a test to see if a specific instance of CustomDomain round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomain(subject CustomDomain) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomain
+ 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 CustomDomain instances for property testing - lazily instantiated by CustomDomainGenerator()
+var customDomainGenerator gopter.Gen
+
+// CustomDomainGenerator returns a generator of CustomDomain instances for property testing.
+func CustomDomainGenerator() gopter.Gen {
+ if customDomainGenerator != nil {
+ return customDomainGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomain(generators)
+ customDomainGenerator = gen.Struct(reflect.TypeOf(CustomDomain{}), generators)
+
+ return customDomainGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomain is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomain(gens map[string]gopter.Gen) {
+ gens["BindingType"] = gen.PtrOf(gen.OneConstOf(CustomDomain_BindingType_Disabled, CustomDomain_BindingType_SniEnabled))
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomDomain_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CustomDomain_STATUS to CustomDomain_STATUS via AssignProperties_To_CustomDomain_STATUS & AssignProperties_From_CustomDomain_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCustomDomain_STATUS, CustomDomain_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCustomDomain_STATUS tests if a specific instance of CustomDomain_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCustomDomain_STATUS(subject CustomDomain_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.CustomDomain_STATUS
+ err := copied.AssignProperties_To_CustomDomain_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CustomDomain_STATUS
+ err = actual.AssignProperties_From_CustomDomain_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_CustomDomain_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 CustomDomain_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomain_STATUS, CustomDomain_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomain_STATUS runs a test to see if a specific instance of CustomDomain_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomain_STATUS(subject CustomDomain_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomain_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 CustomDomain_STATUS instances for property testing - lazily instantiated by
+// CustomDomain_STATUSGenerator()
+var customDomain_STATUSGenerator gopter.Gen
+
+// CustomDomain_STATUSGenerator returns a generator of CustomDomain_STATUS instances for property testing.
+func CustomDomain_STATUSGenerator() gopter.Gen {
+ if customDomain_STATUSGenerator != nil {
+ return customDomain_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomain_STATUS(generators)
+ customDomain_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomDomain_STATUS{}), generators)
+
+ return customDomain_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomain_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomain_STATUS(gens map[string]gopter.Gen) {
+ gens["BindingType"] = gen.PtrOf(gen.OneConstOf(CustomDomain_BindingType_STATUS_Disabled, CustomDomain_BindingType_STATUS_SniEnabled))
+ gens["CertificateId"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomScaleRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CustomScaleRule to CustomScaleRule via AssignProperties_To_CustomScaleRule & AssignProperties_From_CustomScaleRule returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCustomScaleRule, CustomScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCustomScaleRule tests if a specific instance of CustomScaleRule can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCustomScaleRule(subject CustomScaleRule) 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.CustomScaleRule
+ err := copied.AssignProperties_To_CustomScaleRule(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CustomScaleRule
+ err = actual.AssignProperties_From_CustomScaleRule(&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_CustomScaleRule_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 CustomScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomScaleRule, CustomScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomScaleRule runs a test to see if a specific instance of CustomScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomScaleRule(subject CustomScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomScaleRule
+ 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 CustomScaleRule instances for property testing - lazily instantiated by CustomScaleRuleGenerator()
+var customScaleRuleGenerator gopter.Gen
+
+// CustomScaleRuleGenerator returns a generator of CustomScaleRule instances for property testing.
+// We first initialize customScaleRuleGenerator 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 CustomScaleRuleGenerator() gopter.Gen {
+ if customScaleRuleGenerator != nil {
+ return customScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule(generators)
+ customScaleRuleGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule(generators)
+ AddRelatedPropertyGeneratorsForCustomScaleRule(generators)
+ customScaleRuleGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule{}), generators)
+
+ return customScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForCustomScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_CustomScaleRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CustomScaleRule_STATUS to CustomScaleRule_STATUS via AssignProperties_To_CustomScaleRule_STATUS & AssignProperties_From_CustomScaleRule_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCustomScaleRule_STATUS, CustomScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCustomScaleRule_STATUS tests if a specific instance of CustomScaleRule_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCustomScaleRule_STATUS(subject CustomScaleRule_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.CustomScaleRule_STATUS
+ err := copied.AssignProperties_To_CustomScaleRule_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CustomScaleRule_STATUS
+ err = actual.AssignProperties_From_CustomScaleRule_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_CustomScaleRule_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 CustomScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomScaleRule_STATUS, CustomScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomScaleRule_STATUS runs a test to see if a specific instance of CustomScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomScaleRule_STATUS(subject CustomScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomScaleRule_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 CustomScaleRule_STATUS instances for property testing - lazily instantiated by
+// CustomScaleRule_STATUSGenerator()
+var customScaleRule_STATUSGenerator gopter.Gen
+
+// CustomScaleRule_STATUSGenerator returns a generator of CustomScaleRule_STATUS instances for property testing.
+// We first initialize customScaleRule_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 CustomScaleRule_STATUSGenerator() gopter.Gen {
+ if customScaleRule_STATUSGenerator != nil {
+ return customScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ customScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ customScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule_STATUS{}), generators)
+
+ return customScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_Dapr_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Dapr to Dapr via AssignProperties_To_Dapr & AssignProperties_From_Dapr returns original",
+ prop.ForAll(RunPropertyAssignmentTestForDapr, DaprGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForDapr tests if a specific instance of Dapr can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForDapr(subject Dapr) 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.Dapr
+ err := copied.AssignProperties_To_Dapr(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Dapr
+ err = actual.AssignProperties_From_Dapr(&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_Dapr_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 Dapr via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDapr, DaprGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDapr runs a test to see if a specific instance of Dapr round trips to JSON and back losslessly
+func RunJSONSerializationTestForDapr(subject Dapr) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Dapr
+ 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 Dapr instances for property testing - lazily instantiated by DaprGenerator()
+var daprGenerator gopter.Gen
+
+// DaprGenerator returns a generator of Dapr instances for property testing.
+func DaprGenerator() gopter.Gen {
+ if daprGenerator != nil {
+ return daprGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDapr(generators)
+ daprGenerator = gen.Struct(reflect.TypeOf(Dapr{}), generators)
+
+ return daprGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDapr is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDapr(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppPort"] = gen.PtrOf(gen.Int())
+ gens["AppProtocol"] = gen.PtrOf(gen.OneConstOf(Dapr_AppProtocol_Grpc, Dapr_AppProtocol_Http))
+ gens["EnableApiLogging"] = gen.PtrOf(gen.Bool())
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["HttpMaxRequestSize"] = gen.PtrOf(gen.Int())
+ gens["HttpReadBufferSize"] = gen.PtrOf(gen.Int())
+ gens["LogLevel"] = gen.PtrOf(gen.OneConstOf(
+ Dapr_LogLevel_Debug,
+ Dapr_LogLevel_Error,
+ Dapr_LogLevel_Info,
+ Dapr_LogLevel_Warn))
+}
+
+func Test_Dapr_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Dapr_STATUS to Dapr_STATUS via AssignProperties_To_Dapr_STATUS & AssignProperties_From_Dapr_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForDapr_STATUS, Dapr_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForDapr_STATUS tests if a specific instance of Dapr_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForDapr_STATUS(subject Dapr_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.Dapr_STATUS
+ err := copied.AssignProperties_To_Dapr_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Dapr_STATUS
+ err = actual.AssignProperties_From_Dapr_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_Dapr_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 Dapr_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDapr_STATUS, Dapr_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDapr_STATUS runs a test to see if a specific instance of Dapr_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDapr_STATUS(subject Dapr_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Dapr_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 Dapr_STATUS instances for property testing - lazily instantiated by Dapr_STATUSGenerator()
+var dapr_STATUSGenerator gopter.Gen
+
+// Dapr_STATUSGenerator returns a generator of Dapr_STATUS instances for property testing.
+func Dapr_STATUSGenerator() gopter.Gen {
+ if dapr_STATUSGenerator != nil {
+ return dapr_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDapr_STATUS(generators)
+ dapr_STATUSGenerator = gen.Struct(reflect.TypeOf(Dapr_STATUS{}), generators)
+
+ return dapr_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDapr_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDapr_STATUS(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppPort"] = gen.PtrOf(gen.Int())
+ gens["AppProtocol"] = gen.PtrOf(gen.OneConstOf(Dapr_AppProtocol_STATUS_Grpc, Dapr_AppProtocol_STATUS_Http))
+ gens["EnableApiLogging"] = gen.PtrOf(gen.Bool())
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["HttpMaxRequestSize"] = gen.PtrOf(gen.Int())
+ gens["HttpReadBufferSize"] = gen.PtrOf(gen.Int())
+ gens["LogLevel"] = gen.PtrOf(gen.OneConstOf(
+ Dapr_LogLevel_STATUS_Debug,
+ Dapr_LogLevel_STATUS_Error,
+ Dapr_LogLevel_STATUS_Info,
+ Dapr_LogLevel_STATUS_Warn))
+}
+
+func Test_EnvironmentVar_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from EnvironmentVar to EnvironmentVar via AssignProperties_To_EnvironmentVar & AssignProperties_From_EnvironmentVar returns original",
+ prop.ForAll(RunPropertyAssignmentTestForEnvironmentVar, EnvironmentVarGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForEnvironmentVar tests if a specific instance of EnvironmentVar can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForEnvironmentVar(subject EnvironmentVar) 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.EnvironmentVar
+ err := copied.AssignProperties_To_EnvironmentVar(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual EnvironmentVar
+ err = actual.AssignProperties_From_EnvironmentVar(&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_EnvironmentVar_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 EnvironmentVar via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEnvironmentVar, EnvironmentVarGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEnvironmentVar runs a test to see if a specific instance of EnvironmentVar round trips to JSON and back losslessly
+func RunJSONSerializationTestForEnvironmentVar(subject EnvironmentVar) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EnvironmentVar
+ 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 EnvironmentVar instances for property testing - lazily instantiated by EnvironmentVarGenerator()
+var environmentVarGenerator gopter.Gen
+
+// EnvironmentVarGenerator returns a generator of EnvironmentVar instances for property testing.
+func EnvironmentVarGenerator() gopter.Gen {
+ if environmentVarGenerator != nil {
+ return environmentVarGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEnvironmentVar(generators)
+ environmentVarGenerator = gen.Struct(reflect.TypeOf(EnvironmentVar{}), generators)
+
+ return environmentVarGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEnvironmentVar is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEnvironmentVar(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_EnvironmentVar_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from EnvironmentVar_STATUS to EnvironmentVar_STATUS via AssignProperties_To_EnvironmentVar_STATUS & AssignProperties_From_EnvironmentVar_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForEnvironmentVar_STATUS, EnvironmentVar_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForEnvironmentVar_STATUS tests if a specific instance of EnvironmentVar_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForEnvironmentVar_STATUS(subject EnvironmentVar_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.EnvironmentVar_STATUS
+ err := copied.AssignProperties_To_EnvironmentVar_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual EnvironmentVar_STATUS
+ err = actual.AssignProperties_From_EnvironmentVar_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_EnvironmentVar_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 EnvironmentVar_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEnvironmentVar_STATUS, EnvironmentVar_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEnvironmentVar_STATUS runs a test to see if a specific instance of EnvironmentVar_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForEnvironmentVar_STATUS(subject EnvironmentVar_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EnvironmentVar_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 EnvironmentVar_STATUS instances for property testing - lazily instantiated by
+// EnvironmentVar_STATUSGenerator()
+var environmentVar_STATUSGenerator gopter.Gen
+
+// EnvironmentVar_STATUSGenerator returns a generator of EnvironmentVar_STATUS instances for property testing.
+func EnvironmentVar_STATUSGenerator() gopter.Gen {
+ if environmentVar_STATUSGenerator != nil {
+ return environmentVar_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS(generators)
+ environmentVar_STATUSGenerator = gen.Struct(reflect.TypeOf(EnvironmentVar_STATUS{}), generators)
+
+ return environmentVar_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ExtendedLocation_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ExtendedLocation to ExtendedLocation via AssignProperties_To_ExtendedLocation & AssignProperties_From_ExtendedLocation returns original",
+ prop.ForAll(RunPropertyAssignmentTestForExtendedLocation, ExtendedLocationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForExtendedLocation tests if a specific instance of ExtendedLocation can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForExtendedLocation(subject ExtendedLocation) 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.ExtendedLocation
+ err := copied.AssignProperties_To_ExtendedLocation(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ExtendedLocation
+ err = actual.AssignProperties_From_ExtendedLocation(&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_ExtendedLocation_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 ExtendedLocation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForExtendedLocation, ExtendedLocationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForExtendedLocation runs a test to see if a specific instance of ExtendedLocation round trips to JSON and back losslessly
+func RunJSONSerializationTestForExtendedLocation(subject ExtendedLocation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ExtendedLocation
+ 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 ExtendedLocation instances for property testing - lazily instantiated by ExtendedLocationGenerator()
+var extendedLocationGenerator gopter.Gen
+
+// ExtendedLocationGenerator returns a generator of ExtendedLocation instances for property testing.
+func ExtendedLocationGenerator() gopter.Gen {
+ if extendedLocationGenerator != nil {
+ return extendedLocationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForExtendedLocation(generators)
+ extendedLocationGenerator = gen.Struct(reflect.TypeOf(ExtendedLocation{}), generators)
+
+ return extendedLocationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForExtendedLocation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForExtendedLocation(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(ExtendedLocationType_CustomLocation))
+}
+
+func Test_ExtendedLocation_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ExtendedLocation_STATUS to ExtendedLocation_STATUS via AssignProperties_To_ExtendedLocation_STATUS & AssignProperties_From_ExtendedLocation_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForExtendedLocation_STATUS, ExtendedLocation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForExtendedLocation_STATUS tests if a specific instance of ExtendedLocation_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForExtendedLocation_STATUS(subject ExtendedLocation_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.ExtendedLocation_STATUS
+ err := copied.AssignProperties_To_ExtendedLocation_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ExtendedLocation_STATUS
+ err = actual.AssignProperties_From_ExtendedLocation_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_ExtendedLocation_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 ExtendedLocation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForExtendedLocation_STATUS, ExtendedLocation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForExtendedLocation_STATUS runs a test to see if a specific instance of ExtendedLocation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForExtendedLocation_STATUS(subject ExtendedLocation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ExtendedLocation_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 ExtendedLocation_STATUS instances for property testing - lazily instantiated by
+// ExtendedLocation_STATUSGenerator()
+var extendedLocation_STATUSGenerator gopter.Gen
+
+// ExtendedLocation_STATUSGenerator returns a generator of ExtendedLocation_STATUS instances for property testing.
+func ExtendedLocation_STATUSGenerator() gopter.Gen {
+ if extendedLocation_STATUSGenerator != nil {
+ return extendedLocation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForExtendedLocation_STATUS(generators)
+ extendedLocation_STATUSGenerator = gen.Struct(reflect.TypeOf(ExtendedLocation_STATUS{}), generators)
+
+ return extendedLocation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForExtendedLocation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForExtendedLocation_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(ExtendedLocationType_STATUS_CustomLocation))
+}
+
+func Test_HttpScaleRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from HttpScaleRule to HttpScaleRule via AssignProperties_To_HttpScaleRule & AssignProperties_From_HttpScaleRule returns original",
+ prop.ForAll(RunPropertyAssignmentTestForHttpScaleRule, HttpScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForHttpScaleRule tests if a specific instance of HttpScaleRule can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForHttpScaleRule(subject HttpScaleRule) 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.HttpScaleRule
+ err := copied.AssignProperties_To_HttpScaleRule(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual HttpScaleRule
+ err = actual.AssignProperties_From_HttpScaleRule(&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_HttpScaleRule_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 HttpScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpScaleRule, HttpScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpScaleRule runs a test to see if a specific instance of HttpScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpScaleRule(subject HttpScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpScaleRule
+ 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 HttpScaleRule instances for property testing - lazily instantiated by HttpScaleRuleGenerator()
+var httpScaleRuleGenerator gopter.Gen
+
+// HttpScaleRuleGenerator returns a generator of HttpScaleRule instances for property testing.
+// We first initialize httpScaleRuleGenerator 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 HttpScaleRuleGenerator() gopter.Gen {
+ if httpScaleRuleGenerator != nil {
+ return httpScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule(generators)
+ httpScaleRuleGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule(generators)
+ AddRelatedPropertyGeneratorsForHttpScaleRule(generators)
+ httpScaleRuleGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule{}), generators)
+
+ return httpScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForHttpScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_HttpScaleRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from HttpScaleRule_STATUS to HttpScaleRule_STATUS via AssignProperties_To_HttpScaleRule_STATUS & AssignProperties_From_HttpScaleRule_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForHttpScaleRule_STATUS, HttpScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForHttpScaleRule_STATUS tests if a specific instance of HttpScaleRule_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForHttpScaleRule_STATUS(subject HttpScaleRule_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.HttpScaleRule_STATUS
+ err := copied.AssignProperties_To_HttpScaleRule_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual HttpScaleRule_STATUS
+ err = actual.AssignProperties_From_HttpScaleRule_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_HttpScaleRule_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 HttpScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpScaleRule_STATUS, HttpScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpScaleRule_STATUS runs a test to see if a specific instance of HttpScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpScaleRule_STATUS(subject HttpScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpScaleRule_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 HttpScaleRule_STATUS instances for property testing - lazily instantiated by
+// HttpScaleRule_STATUSGenerator()
+var httpScaleRule_STATUSGenerator gopter.Gen
+
+// HttpScaleRule_STATUSGenerator returns a generator of HttpScaleRule_STATUS instances for property testing.
+// We first initialize httpScaleRule_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 HttpScaleRule_STATUSGenerator() gopter.Gen {
+ if httpScaleRule_STATUSGenerator != nil {
+ return httpScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ httpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ httpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule_STATUS{}), generators)
+
+ return httpScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_Ingress_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Ingress to Ingress via AssignProperties_To_Ingress & AssignProperties_From_Ingress returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIngress, IngressGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIngress tests if a specific instance of Ingress can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIngress(subject Ingress) 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.Ingress
+ err := copied.AssignProperties_To_Ingress(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Ingress
+ err = actual.AssignProperties_From_Ingress(&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_Ingress_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 Ingress via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress, IngressGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress runs a test to see if a specific instance of Ingress round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress(subject Ingress) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress
+ 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 Ingress instances for property testing - lazily instantiated by IngressGenerator()
+var ingressGenerator gopter.Gen
+
+// IngressGenerator returns a generator of Ingress instances for property testing.
+// We first initialize ingressGenerator 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 IngressGenerator() gopter.Gen {
+ if ingressGenerator != nil {
+ return ingressGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress(generators)
+ ingressGenerator = gen.Struct(reflect.TypeOf(Ingress{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress(generators)
+ AddRelatedPropertyGeneratorsForIngress(generators)
+ ingressGenerator = gen.Struct(reflect.TypeOf(Ingress{}), generators)
+
+ return ingressGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress(gens map[string]gopter.Gen) {
+ gens["AllowInsecure"] = gen.PtrOf(gen.Bool())
+ gens["ClientCertificateMode"] = gen.PtrOf(gen.OneConstOf(Ingress_ClientCertificateMode_Accept, Ingress_ClientCertificateMode_Ignore, Ingress_ClientCertificateMode_Require))
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+ gens["Transport"] = gen.PtrOf(gen.OneConstOf(
+ Ingress_Transport_Auto,
+ Ingress_Transport_Http,
+ Ingress_Transport_Http2,
+ Ingress_Transport_Tcp))
+}
+
+// AddRelatedPropertyGeneratorsForIngress is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIngress(gens map[string]gopter.Gen) {
+ gens["AdditionalPortMappings"] = gen.SliceOf(IngressPortMappingGenerator())
+ gens["CorsPolicy"] = gen.PtrOf(CorsPolicyGenerator())
+ gens["CustomDomains"] = gen.SliceOf(CustomDomainGenerator())
+ gens["IpSecurityRestrictions"] = gen.SliceOf(IpSecurityRestrictionRuleGenerator())
+ gens["StickySessions"] = gen.PtrOf(Ingress_StickySessionsGenerator())
+ gens["Traffic"] = gen.SliceOf(TrafficWeightGenerator())
+}
+
+func Test_IngressPortMapping_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from IngressPortMapping to IngressPortMapping via AssignProperties_To_IngressPortMapping & AssignProperties_From_IngressPortMapping returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIngressPortMapping, IngressPortMappingGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIngressPortMapping tests if a specific instance of IngressPortMapping can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIngressPortMapping(subject IngressPortMapping) 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.IngressPortMapping
+ err := copied.AssignProperties_To_IngressPortMapping(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual IngressPortMapping
+ err = actual.AssignProperties_From_IngressPortMapping(&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_IngressPortMapping_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 IngressPortMapping via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngressPortMapping, IngressPortMappingGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngressPortMapping runs a test to see if a specific instance of IngressPortMapping round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngressPortMapping(subject IngressPortMapping) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IngressPortMapping
+ 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 IngressPortMapping instances for property testing - lazily instantiated by IngressPortMappingGenerator()
+var ingressPortMappingGenerator gopter.Gen
+
+// IngressPortMappingGenerator returns a generator of IngressPortMapping instances for property testing.
+func IngressPortMappingGenerator() gopter.Gen {
+ if ingressPortMappingGenerator != nil {
+ return ingressPortMappingGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngressPortMapping(generators)
+ ingressPortMappingGenerator = gen.Struct(reflect.TypeOf(IngressPortMapping{}), generators)
+
+ return ingressPortMappingGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngressPortMapping is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngressPortMapping(gens map[string]gopter.Gen) {
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+}
+
+func Test_IngressPortMapping_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from IngressPortMapping_STATUS to IngressPortMapping_STATUS via AssignProperties_To_IngressPortMapping_STATUS & AssignProperties_From_IngressPortMapping_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIngressPortMapping_STATUS, IngressPortMapping_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIngressPortMapping_STATUS tests if a specific instance of IngressPortMapping_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIngressPortMapping_STATUS(subject IngressPortMapping_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.IngressPortMapping_STATUS
+ err := copied.AssignProperties_To_IngressPortMapping_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual IngressPortMapping_STATUS
+ err = actual.AssignProperties_From_IngressPortMapping_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_IngressPortMapping_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 IngressPortMapping_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngressPortMapping_STATUS, IngressPortMapping_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngressPortMapping_STATUS runs a test to see if a specific instance of IngressPortMapping_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngressPortMapping_STATUS(subject IngressPortMapping_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IngressPortMapping_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 IngressPortMapping_STATUS instances for property testing - lazily instantiated by
+// IngressPortMapping_STATUSGenerator()
+var ingressPortMapping_STATUSGenerator gopter.Gen
+
+// IngressPortMapping_STATUSGenerator returns a generator of IngressPortMapping_STATUS instances for property testing.
+func IngressPortMapping_STATUSGenerator() gopter.Gen {
+ if ingressPortMapping_STATUSGenerator != nil {
+ return ingressPortMapping_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS(generators)
+ ingressPortMapping_STATUSGenerator = gen.Struct(reflect.TypeOf(IngressPortMapping_STATUS{}), generators)
+
+ return ingressPortMapping_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS(gens map[string]gopter.Gen) {
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+}
+
+func Test_Ingress_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Ingress_STATUS to Ingress_STATUS via AssignProperties_To_Ingress_STATUS & AssignProperties_From_Ingress_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIngress_STATUS, Ingress_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIngress_STATUS tests if a specific instance of Ingress_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIngress_STATUS(subject Ingress_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.Ingress_STATUS
+ err := copied.AssignProperties_To_Ingress_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Ingress_STATUS
+ err = actual.AssignProperties_From_Ingress_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_Ingress_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 Ingress_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_STATUS, Ingress_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_STATUS runs a test to see if a specific instance of Ingress_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_STATUS(subject Ingress_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_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 Ingress_STATUS instances for property testing - lazily instantiated by Ingress_STATUSGenerator()
+var ingress_STATUSGenerator gopter.Gen
+
+// Ingress_STATUSGenerator returns a generator of Ingress_STATUS instances for property testing.
+// We first initialize ingress_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 Ingress_STATUSGenerator() gopter.Gen {
+ if ingress_STATUSGenerator != nil {
+ return ingress_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_STATUS(generators)
+ ingress_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_STATUS(generators)
+ AddRelatedPropertyGeneratorsForIngress_STATUS(generators)
+ ingress_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_STATUS{}), generators)
+
+ return ingress_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowInsecure"] = gen.PtrOf(gen.Bool())
+ gens["ClientCertificateMode"] = gen.PtrOf(gen.OneConstOf(Ingress_ClientCertificateMode_STATUS_Accept, Ingress_ClientCertificateMode_STATUS_Ignore, Ingress_ClientCertificateMode_STATUS_Require))
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["Fqdn"] = gen.PtrOf(gen.AlphaString())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+ gens["Transport"] = gen.PtrOf(gen.OneConstOf(
+ Ingress_Transport_STATUS_Auto,
+ Ingress_Transport_STATUS_Http,
+ Ingress_Transport_STATUS_Http2,
+ Ingress_Transport_STATUS_Tcp))
+}
+
+// AddRelatedPropertyGeneratorsForIngress_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIngress_STATUS(gens map[string]gopter.Gen) {
+ gens["AdditionalPortMappings"] = gen.SliceOf(IngressPortMapping_STATUSGenerator())
+ gens["CorsPolicy"] = gen.PtrOf(CorsPolicy_STATUSGenerator())
+ gens["CustomDomains"] = gen.SliceOf(CustomDomain_STATUSGenerator())
+ gens["IpSecurityRestrictions"] = gen.SliceOf(IpSecurityRestrictionRule_STATUSGenerator())
+ gens["StickySessions"] = gen.PtrOf(Ingress_StickySessions_STATUSGenerator())
+ gens["Traffic"] = gen.SliceOf(TrafficWeight_STATUSGenerator())
+}
+
+func Test_Ingress_StickySessions_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Ingress_StickySessions to Ingress_StickySessions via AssignProperties_To_Ingress_StickySessions & AssignProperties_From_Ingress_StickySessions returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIngress_StickySessions, Ingress_StickySessionsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIngress_StickySessions tests if a specific instance of Ingress_StickySessions can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIngress_StickySessions(subject Ingress_StickySessions) 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.Ingress_StickySessions
+ err := copied.AssignProperties_To_Ingress_StickySessions(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Ingress_StickySessions
+ err = actual.AssignProperties_From_Ingress_StickySessions(&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_Ingress_StickySessions_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 Ingress_StickySessions via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_StickySessions, Ingress_StickySessionsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_StickySessions runs a test to see if a specific instance of Ingress_StickySessions round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_StickySessions(subject Ingress_StickySessions) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_StickySessions
+ 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 Ingress_StickySessions instances for property testing - lazily instantiated by
+// Ingress_StickySessionsGenerator()
+var ingress_StickySessionsGenerator gopter.Gen
+
+// Ingress_StickySessionsGenerator returns a generator of Ingress_StickySessions instances for property testing.
+func Ingress_StickySessionsGenerator() gopter.Gen {
+ if ingress_StickySessionsGenerator != nil {
+ return ingress_StickySessionsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_StickySessions(generators)
+ ingress_StickySessionsGenerator = gen.Struct(reflect.TypeOf(Ingress_StickySessions{}), generators)
+
+ return ingress_StickySessionsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_StickySessions is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_StickySessions(gens map[string]gopter.Gen) {
+ gens["Affinity"] = gen.PtrOf(gen.OneConstOf(Ingress_StickySessions_Affinity_None, Ingress_StickySessions_Affinity_Sticky))
+}
+
+func Test_Ingress_StickySessions_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Ingress_StickySessions_STATUS to Ingress_StickySessions_STATUS via AssignProperties_To_Ingress_StickySessions_STATUS & AssignProperties_From_Ingress_StickySessions_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIngress_StickySessions_STATUS, Ingress_StickySessions_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIngress_StickySessions_STATUS tests if a specific instance of Ingress_StickySessions_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIngress_StickySessions_STATUS(subject Ingress_StickySessions_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.Ingress_StickySessions_STATUS
+ err := copied.AssignProperties_To_Ingress_StickySessions_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Ingress_StickySessions_STATUS
+ err = actual.AssignProperties_From_Ingress_StickySessions_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_Ingress_StickySessions_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 Ingress_StickySessions_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_StickySessions_STATUS, Ingress_StickySessions_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_StickySessions_STATUS runs a test to see if a specific instance of Ingress_StickySessions_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_StickySessions_STATUS(subject Ingress_StickySessions_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_StickySessions_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 Ingress_StickySessions_STATUS instances for property testing - lazily instantiated by
+// Ingress_StickySessions_STATUSGenerator()
+var ingress_StickySessions_STATUSGenerator gopter.Gen
+
+// Ingress_StickySessions_STATUSGenerator returns a generator of Ingress_StickySessions_STATUS instances for property testing.
+func Ingress_StickySessions_STATUSGenerator() gopter.Gen {
+ if ingress_StickySessions_STATUSGenerator != nil {
+ return ingress_StickySessions_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS(generators)
+ ingress_StickySessions_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_StickySessions_STATUS{}), generators)
+
+ return ingress_StickySessions_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS(gens map[string]gopter.Gen) {
+ gens["Affinity"] = gen.PtrOf(gen.OneConstOf(Ingress_StickySessions_Affinity_STATUS_None, Ingress_StickySessions_Affinity_STATUS_Sticky))
+}
+
+func Test_IpSecurityRestrictionRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from IpSecurityRestrictionRule to IpSecurityRestrictionRule via AssignProperties_To_IpSecurityRestrictionRule & AssignProperties_From_IpSecurityRestrictionRule returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIpSecurityRestrictionRule, IpSecurityRestrictionRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIpSecurityRestrictionRule tests if a specific instance of IpSecurityRestrictionRule can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIpSecurityRestrictionRule(subject IpSecurityRestrictionRule) 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.IpSecurityRestrictionRule
+ err := copied.AssignProperties_To_IpSecurityRestrictionRule(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual IpSecurityRestrictionRule
+ err = actual.AssignProperties_From_IpSecurityRestrictionRule(&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_IpSecurityRestrictionRule_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 IpSecurityRestrictionRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIpSecurityRestrictionRule, IpSecurityRestrictionRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIpSecurityRestrictionRule runs a test to see if a specific instance of IpSecurityRestrictionRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForIpSecurityRestrictionRule(subject IpSecurityRestrictionRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IpSecurityRestrictionRule
+ 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 IpSecurityRestrictionRule instances for property testing - lazily instantiated by
+// IpSecurityRestrictionRuleGenerator()
+var ipSecurityRestrictionRuleGenerator gopter.Gen
+
+// IpSecurityRestrictionRuleGenerator returns a generator of IpSecurityRestrictionRule instances for property testing.
+func IpSecurityRestrictionRuleGenerator() gopter.Gen {
+ if ipSecurityRestrictionRuleGenerator != nil {
+ return ipSecurityRestrictionRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule(generators)
+ ipSecurityRestrictionRuleGenerator = gen.Struct(reflect.TypeOf(IpSecurityRestrictionRule{}), generators)
+
+ return ipSecurityRestrictionRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule(gens map[string]gopter.Gen) {
+ gens["Action"] = gen.PtrOf(gen.OneConstOf(IpSecurityRestrictionRule_Action_Allow, IpSecurityRestrictionRule_Action_Deny))
+ gens["Description"] = gen.PtrOf(gen.AlphaString())
+ gens["IpAddressRange"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_IpSecurityRestrictionRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from IpSecurityRestrictionRule_STATUS to IpSecurityRestrictionRule_STATUS via AssignProperties_To_IpSecurityRestrictionRule_STATUS & AssignProperties_From_IpSecurityRestrictionRule_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForIpSecurityRestrictionRule_STATUS, IpSecurityRestrictionRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForIpSecurityRestrictionRule_STATUS tests if a specific instance of IpSecurityRestrictionRule_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForIpSecurityRestrictionRule_STATUS(subject IpSecurityRestrictionRule_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.IpSecurityRestrictionRule_STATUS
+ err := copied.AssignProperties_To_IpSecurityRestrictionRule_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual IpSecurityRestrictionRule_STATUS
+ err = actual.AssignProperties_From_IpSecurityRestrictionRule_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_IpSecurityRestrictionRule_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 IpSecurityRestrictionRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS, IpSecurityRestrictionRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS runs a test to see if a specific instance of IpSecurityRestrictionRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS(subject IpSecurityRestrictionRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IpSecurityRestrictionRule_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 IpSecurityRestrictionRule_STATUS instances for property testing - lazily instantiated by
+// IpSecurityRestrictionRule_STATUSGenerator()
+var ipSecurityRestrictionRule_STATUSGenerator gopter.Gen
+
+// IpSecurityRestrictionRule_STATUSGenerator returns a generator of IpSecurityRestrictionRule_STATUS instances for property testing.
+func IpSecurityRestrictionRule_STATUSGenerator() gopter.Gen {
+ if ipSecurityRestrictionRule_STATUSGenerator != nil {
+ return ipSecurityRestrictionRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS(generators)
+ ipSecurityRestrictionRule_STATUSGenerator = gen.Struct(reflect.TypeOf(IpSecurityRestrictionRule_STATUS{}), generators)
+
+ return ipSecurityRestrictionRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Action"] = gen.PtrOf(gen.OneConstOf(IpSecurityRestrictionRule_Action_STATUS_Allow, IpSecurityRestrictionRule_Action_STATUS_Deny))
+ gens["Description"] = gen.PtrOf(gen.AlphaString())
+ gens["IpAddressRange"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ManagedServiceIdentity_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedServiceIdentity to ManagedServiceIdentity via AssignProperties_To_ManagedServiceIdentity & AssignProperties_From_ManagedServiceIdentity returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedServiceIdentity, ManagedServiceIdentityGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedServiceIdentity tests if a specific instance of ManagedServiceIdentity can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedServiceIdentity(subject ManagedServiceIdentity) 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.ManagedServiceIdentity
+ err := copied.AssignProperties_To_ManagedServiceIdentity(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedServiceIdentity
+ err = actual.AssignProperties_From_ManagedServiceIdentity(&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_ManagedServiceIdentity_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 ManagedServiceIdentity via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedServiceIdentity, ManagedServiceIdentityGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedServiceIdentity runs a test to see if a specific instance of ManagedServiceIdentity round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedServiceIdentity(subject ManagedServiceIdentity) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedServiceIdentity
+ 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 ManagedServiceIdentity instances for property testing - lazily instantiated by
+// ManagedServiceIdentityGenerator()
+var managedServiceIdentityGenerator gopter.Gen
+
+// ManagedServiceIdentityGenerator returns a generator of ManagedServiceIdentity instances for property testing.
+// We first initialize managedServiceIdentityGenerator 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 ManagedServiceIdentityGenerator() gopter.Gen {
+ if managedServiceIdentityGenerator != nil {
+ return managedServiceIdentityGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity(generators)
+ managedServiceIdentityGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity(generators)
+ AddRelatedPropertyGeneratorsForManagedServiceIdentity(generators)
+ managedServiceIdentityGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity{}), generators)
+
+ return managedServiceIdentityGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedServiceIdentity is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedServiceIdentity(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(
+ ManagedServiceIdentityType_None,
+ ManagedServiceIdentityType_SystemAssigned,
+ ManagedServiceIdentityType_SystemAssignedUserAssigned,
+ ManagedServiceIdentityType_UserAssigned))
+}
+
+// AddRelatedPropertyGeneratorsForManagedServiceIdentity is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedServiceIdentity(gens map[string]gopter.Gen) {
+ gens["UserAssignedIdentities"] = gen.SliceOf(UserAssignedIdentityDetailsGenerator())
+}
+
+func Test_ManagedServiceIdentity_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedServiceIdentity_STATUS to ManagedServiceIdentity_STATUS via AssignProperties_To_ManagedServiceIdentity_STATUS & AssignProperties_From_ManagedServiceIdentity_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedServiceIdentity_STATUS, ManagedServiceIdentity_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedServiceIdentity_STATUS tests if a specific instance of ManagedServiceIdentity_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedServiceIdentity_STATUS(subject ManagedServiceIdentity_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.ManagedServiceIdentity_STATUS
+ err := copied.AssignProperties_To_ManagedServiceIdentity_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedServiceIdentity_STATUS
+ err = actual.AssignProperties_From_ManagedServiceIdentity_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_ManagedServiceIdentity_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 ManagedServiceIdentity_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedServiceIdentity_STATUS, ManagedServiceIdentity_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedServiceIdentity_STATUS runs a test to see if a specific instance of ManagedServiceIdentity_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedServiceIdentity_STATUS(subject ManagedServiceIdentity_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedServiceIdentity_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 ManagedServiceIdentity_STATUS instances for property testing - lazily instantiated by
+// ManagedServiceIdentity_STATUSGenerator()
+var managedServiceIdentity_STATUSGenerator gopter.Gen
+
+// ManagedServiceIdentity_STATUSGenerator returns a generator of ManagedServiceIdentity_STATUS instances for property testing.
+// We first initialize managedServiceIdentity_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 ManagedServiceIdentity_STATUSGenerator() gopter.Gen {
+ if managedServiceIdentity_STATUSGenerator != nil {
+ return managedServiceIdentity_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ managedServiceIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ managedServiceIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity_STATUS{}), generators)
+
+ return managedServiceIdentity_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["PrincipalId"] = gen.PtrOf(gen.AlphaString())
+ gens["TenantId"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.OneConstOf(
+ ManagedServiceIdentityType_STATUS_None,
+ ManagedServiceIdentityType_STATUS_SystemAssigned,
+ ManagedServiceIdentityType_STATUS_SystemAssignedUserAssigned,
+ ManagedServiceIdentityType_STATUS_UserAssigned))
+}
+
+// AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["UserAssignedIdentities"] = gen.MapOf(
+ gen.AlphaString(),
+ UserAssignedIdentity_STATUSGenerator())
+}
+
+func Test_QueueScaleRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from QueueScaleRule to QueueScaleRule via AssignProperties_To_QueueScaleRule & AssignProperties_From_QueueScaleRule returns original",
+ prop.ForAll(RunPropertyAssignmentTestForQueueScaleRule, QueueScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForQueueScaleRule tests if a specific instance of QueueScaleRule can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForQueueScaleRule(subject QueueScaleRule) 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.QueueScaleRule
+ err := copied.AssignProperties_To_QueueScaleRule(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual QueueScaleRule
+ err = actual.AssignProperties_From_QueueScaleRule(&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_QueueScaleRule_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 QueueScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForQueueScaleRule, QueueScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForQueueScaleRule runs a test to see if a specific instance of QueueScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForQueueScaleRule(subject QueueScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual QueueScaleRule
+ 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 QueueScaleRule instances for property testing - lazily instantiated by QueueScaleRuleGenerator()
+var queueScaleRuleGenerator gopter.Gen
+
+// QueueScaleRuleGenerator returns a generator of QueueScaleRule instances for property testing.
+// We first initialize queueScaleRuleGenerator 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 QueueScaleRuleGenerator() gopter.Gen {
+ if queueScaleRuleGenerator != nil {
+ return queueScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule(generators)
+ queueScaleRuleGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule(generators)
+ AddRelatedPropertyGeneratorsForQueueScaleRule(generators)
+ queueScaleRuleGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule{}), generators)
+
+ return queueScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForQueueScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForQueueScaleRule(gens map[string]gopter.Gen) {
+ gens["QueueLength"] = gen.PtrOf(gen.Int())
+ gens["QueueName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForQueueScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForQueueScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_QueueScaleRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from QueueScaleRule_STATUS to QueueScaleRule_STATUS via AssignProperties_To_QueueScaleRule_STATUS & AssignProperties_From_QueueScaleRule_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForQueueScaleRule_STATUS, QueueScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForQueueScaleRule_STATUS tests if a specific instance of QueueScaleRule_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForQueueScaleRule_STATUS(subject QueueScaleRule_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.QueueScaleRule_STATUS
+ err := copied.AssignProperties_To_QueueScaleRule_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual QueueScaleRule_STATUS
+ err = actual.AssignProperties_From_QueueScaleRule_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_QueueScaleRule_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 QueueScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForQueueScaleRule_STATUS, QueueScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForQueueScaleRule_STATUS runs a test to see if a specific instance of QueueScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForQueueScaleRule_STATUS(subject QueueScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual QueueScaleRule_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 QueueScaleRule_STATUS instances for property testing - lazily instantiated by
+// QueueScaleRule_STATUSGenerator()
+var queueScaleRule_STATUSGenerator gopter.Gen
+
+// QueueScaleRule_STATUSGenerator returns a generator of QueueScaleRule_STATUS instances for property testing.
+// We first initialize queueScaleRule_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 QueueScaleRule_STATUSGenerator() gopter.Gen {
+ if queueScaleRule_STATUSGenerator != nil {
+ return queueScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ queueScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ queueScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule_STATUS{}), generators)
+
+ return queueScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["QueueLength"] = gen.PtrOf(gen.Int())
+ gens["QueueName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_RegistryCredentials_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from RegistryCredentials to RegistryCredentials via AssignProperties_To_RegistryCredentials & AssignProperties_From_RegistryCredentials returns original",
+ prop.ForAll(RunPropertyAssignmentTestForRegistryCredentials, RegistryCredentialsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForRegistryCredentials tests if a specific instance of RegistryCredentials can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForRegistryCredentials(subject RegistryCredentials) 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.RegistryCredentials
+ err := copied.AssignProperties_To_RegistryCredentials(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual RegistryCredentials
+ err = actual.AssignProperties_From_RegistryCredentials(&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_RegistryCredentials_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 RegistryCredentials via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForRegistryCredentials, RegistryCredentialsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForRegistryCredentials runs a test to see if a specific instance of RegistryCredentials round trips to JSON and back losslessly
+func RunJSONSerializationTestForRegistryCredentials(subject RegistryCredentials) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual RegistryCredentials
+ 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 RegistryCredentials instances for property testing - lazily instantiated by
+// RegistryCredentialsGenerator()
+var registryCredentialsGenerator gopter.Gen
+
+// RegistryCredentialsGenerator returns a generator of RegistryCredentials instances for property testing.
+func RegistryCredentialsGenerator() gopter.Gen {
+ if registryCredentialsGenerator != nil {
+ return registryCredentialsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForRegistryCredentials(generators)
+ registryCredentialsGenerator = gen.Struct(reflect.TypeOf(RegistryCredentials{}), generators)
+
+ return registryCredentialsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForRegistryCredentials is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForRegistryCredentials(gens map[string]gopter.Gen) {
+ gens["PasswordSecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Server"] = gen.PtrOf(gen.AlphaString())
+ gens["Username"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_RegistryCredentials_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from RegistryCredentials_STATUS to RegistryCredentials_STATUS via AssignProperties_To_RegistryCredentials_STATUS & AssignProperties_From_RegistryCredentials_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForRegistryCredentials_STATUS, RegistryCredentials_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForRegistryCredentials_STATUS tests if a specific instance of RegistryCredentials_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForRegistryCredentials_STATUS(subject RegistryCredentials_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.RegistryCredentials_STATUS
+ err := copied.AssignProperties_To_RegistryCredentials_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual RegistryCredentials_STATUS
+ err = actual.AssignProperties_From_RegistryCredentials_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_RegistryCredentials_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 RegistryCredentials_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForRegistryCredentials_STATUS, RegistryCredentials_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForRegistryCredentials_STATUS runs a test to see if a specific instance of RegistryCredentials_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForRegistryCredentials_STATUS(subject RegistryCredentials_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual RegistryCredentials_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 RegistryCredentials_STATUS instances for property testing - lazily instantiated by
+// RegistryCredentials_STATUSGenerator()
+var registryCredentials_STATUSGenerator gopter.Gen
+
+// RegistryCredentials_STATUSGenerator returns a generator of RegistryCredentials_STATUS instances for property testing.
+func RegistryCredentials_STATUSGenerator() gopter.Gen {
+ if registryCredentials_STATUSGenerator != nil {
+ return registryCredentials_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS(generators)
+ registryCredentials_STATUSGenerator = gen.Struct(reflect.TypeOf(RegistryCredentials_STATUS{}), generators)
+
+ return registryCredentials_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(gen.AlphaString())
+ gens["PasswordSecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Server"] = gen.PtrOf(gen.AlphaString())
+ gens["Username"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Scale_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Scale to Scale via AssignProperties_To_Scale & AssignProperties_From_Scale returns original",
+ prop.ForAll(RunPropertyAssignmentTestForScale, ScaleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForScale tests if a specific instance of Scale can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForScale(subject Scale) 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.Scale
+ err := copied.AssignProperties_To_Scale(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Scale
+ err = actual.AssignProperties_From_Scale(&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_Scale_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 Scale via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScale, ScaleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScale runs a test to see if a specific instance of Scale round trips to JSON and back losslessly
+func RunJSONSerializationTestForScale(subject Scale) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Scale
+ 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 Scale instances for property testing - lazily instantiated by ScaleGenerator()
+var scaleGenerator gopter.Gen
+
+// ScaleGenerator returns a generator of Scale instances for property testing.
+// We first initialize scaleGenerator 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 ScaleGenerator() gopter.Gen {
+ if scaleGenerator != nil {
+ return scaleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale(generators)
+ scaleGenerator = gen.Struct(reflect.TypeOf(Scale{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale(generators)
+ AddRelatedPropertyGeneratorsForScale(generators)
+ scaleGenerator = gen.Struct(reflect.TypeOf(Scale{}), generators)
+
+ return scaleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScale is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScale(gens map[string]gopter.Gen) {
+ gens["MaxReplicas"] = gen.PtrOf(gen.Int())
+ gens["MinReplicas"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForScale is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScale(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(ScaleRuleGenerator())
+}
+
+func Test_ScaleRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ScaleRule to ScaleRule via AssignProperties_To_ScaleRule & AssignProperties_From_ScaleRule returns original",
+ prop.ForAll(RunPropertyAssignmentTestForScaleRule, ScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForScaleRule tests if a specific instance of ScaleRule can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForScaleRule(subject ScaleRule) 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.ScaleRule
+ err := copied.AssignProperties_To_ScaleRule(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ScaleRule
+ err = actual.AssignProperties_From_ScaleRule(&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_ScaleRule_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 ScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRule, ScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRule runs a test to see if a specific instance of ScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRule(subject ScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRule
+ 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 ScaleRule instances for property testing - lazily instantiated by ScaleRuleGenerator()
+var scaleRuleGenerator gopter.Gen
+
+// ScaleRuleGenerator returns a generator of ScaleRule instances for property testing.
+// We first initialize scaleRuleGenerator 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 ScaleRuleGenerator() gopter.Gen {
+ if scaleRuleGenerator != nil {
+ return scaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule(generators)
+ scaleRuleGenerator = gen.Struct(reflect.TypeOf(ScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule(generators)
+ AddRelatedPropertyGeneratorsForScaleRule(generators)
+ scaleRuleGenerator = gen.Struct(reflect.TypeOf(ScaleRule{}), generators)
+
+ return scaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRule(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScaleRule(gens map[string]gopter.Gen) {
+ gens["AzureQueue"] = gen.PtrOf(QueueScaleRuleGenerator())
+ gens["Custom"] = gen.PtrOf(CustomScaleRuleGenerator())
+ gens["Http"] = gen.PtrOf(HttpScaleRuleGenerator())
+ gens["Tcp"] = gen.PtrOf(TcpScaleRuleGenerator())
+}
+
+func Test_ScaleRuleAuth_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ScaleRuleAuth to ScaleRuleAuth via AssignProperties_To_ScaleRuleAuth & AssignProperties_From_ScaleRuleAuth returns original",
+ prop.ForAll(RunPropertyAssignmentTestForScaleRuleAuth, ScaleRuleAuthGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForScaleRuleAuth tests if a specific instance of ScaleRuleAuth can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForScaleRuleAuth(subject ScaleRuleAuth) 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.ScaleRuleAuth
+ err := copied.AssignProperties_To_ScaleRuleAuth(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ScaleRuleAuth
+ err = actual.AssignProperties_From_ScaleRuleAuth(&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_ScaleRuleAuth_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 ScaleRuleAuth via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRuleAuth, ScaleRuleAuthGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRuleAuth runs a test to see if a specific instance of ScaleRuleAuth round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRuleAuth(subject ScaleRuleAuth) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRuleAuth
+ 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 ScaleRuleAuth instances for property testing - lazily instantiated by ScaleRuleAuthGenerator()
+var scaleRuleAuthGenerator gopter.Gen
+
+// ScaleRuleAuthGenerator returns a generator of ScaleRuleAuth instances for property testing.
+func ScaleRuleAuthGenerator() gopter.Gen {
+ if scaleRuleAuthGenerator != nil {
+ return scaleRuleAuthGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRuleAuth(generators)
+ scaleRuleAuthGenerator = gen.Struct(reflect.TypeOf(ScaleRuleAuth{}), generators)
+
+ return scaleRuleAuthGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRuleAuth is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRuleAuth(gens map[string]gopter.Gen) {
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["TriggerParameter"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ScaleRuleAuth_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ScaleRuleAuth_STATUS to ScaleRuleAuth_STATUS via AssignProperties_To_ScaleRuleAuth_STATUS & AssignProperties_From_ScaleRuleAuth_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForScaleRuleAuth_STATUS, ScaleRuleAuth_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForScaleRuleAuth_STATUS tests if a specific instance of ScaleRuleAuth_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForScaleRuleAuth_STATUS(subject ScaleRuleAuth_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.ScaleRuleAuth_STATUS
+ err := copied.AssignProperties_To_ScaleRuleAuth_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ScaleRuleAuth_STATUS
+ err = actual.AssignProperties_From_ScaleRuleAuth_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_ScaleRuleAuth_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 ScaleRuleAuth_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRuleAuth_STATUS, ScaleRuleAuth_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRuleAuth_STATUS runs a test to see if a specific instance of ScaleRuleAuth_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRuleAuth_STATUS(subject ScaleRuleAuth_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRuleAuth_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 ScaleRuleAuth_STATUS instances for property testing - lazily instantiated by
+// ScaleRuleAuth_STATUSGenerator()
+var scaleRuleAuth_STATUSGenerator gopter.Gen
+
+// ScaleRuleAuth_STATUSGenerator returns a generator of ScaleRuleAuth_STATUS instances for property testing.
+func ScaleRuleAuth_STATUSGenerator() gopter.Gen {
+ if scaleRuleAuth_STATUSGenerator != nil {
+ return scaleRuleAuth_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS(generators)
+ scaleRuleAuth_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRuleAuth_STATUS{}), generators)
+
+ return scaleRuleAuth_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS(gens map[string]gopter.Gen) {
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["TriggerParameter"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ScaleRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ScaleRule_STATUS to ScaleRule_STATUS via AssignProperties_To_ScaleRule_STATUS & AssignProperties_From_ScaleRule_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForScaleRule_STATUS, ScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForScaleRule_STATUS tests if a specific instance of ScaleRule_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForScaleRule_STATUS(subject ScaleRule_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.ScaleRule_STATUS
+ err := copied.AssignProperties_To_ScaleRule_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ScaleRule_STATUS
+ err = actual.AssignProperties_From_ScaleRule_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_ScaleRule_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 ScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRule_STATUS, ScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRule_STATUS runs a test to see if a specific instance of ScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRule_STATUS(subject ScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRule_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 ScaleRule_STATUS instances for property testing - lazily instantiated by ScaleRule_STATUSGenerator()
+var scaleRule_STATUSGenerator gopter.Gen
+
+// ScaleRule_STATUSGenerator returns a generator of ScaleRule_STATUS instances for property testing.
+// We first initialize scaleRule_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 ScaleRule_STATUSGenerator() gopter.Gen {
+ if scaleRule_STATUSGenerator != nil {
+ return scaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule_STATUS(generators)
+ scaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForScaleRule_STATUS(generators)
+ scaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRule_STATUS{}), generators)
+
+ return scaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["AzureQueue"] = gen.PtrOf(QueueScaleRule_STATUSGenerator())
+ gens["Custom"] = gen.PtrOf(CustomScaleRule_STATUSGenerator())
+ gens["Http"] = gen.PtrOf(HttpScaleRule_STATUSGenerator())
+ gens["Tcp"] = gen.PtrOf(TcpScaleRule_STATUSGenerator())
+}
+
+func Test_Scale_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Scale_STATUS to Scale_STATUS via AssignProperties_To_Scale_STATUS & AssignProperties_From_Scale_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForScale_STATUS, Scale_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForScale_STATUS tests if a specific instance of Scale_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForScale_STATUS(subject Scale_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.Scale_STATUS
+ err := copied.AssignProperties_To_Scale_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Scale_STATUS
+ err = actual.AssignProperties_From_Scale_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_Scale_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 Scale_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScale_STATUS, Scale_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScale_STATUS runs a test to see if a specific instance of Scale_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScale_STATUS(subject Scale_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Scale_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 Scale_STATUS instances for property testing - lazily instantiated by Scale_STATUSGenerator()
+var scale_STATUSGenerator gopter.Gen
+
+// Scale_STATUSGenerator returns a generator of Scale_STATUS instances for property testing.
+// We first initialize scale_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 Scale_STATUSGenerator() gopter.Gen {
+ if scale_STATUSGenerator != nil {
+ return scale_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale_STATUS(generators)
+ scale_STATUSGenerator = gen.Struct(reflect.TypeOf(Scale_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale_STATUS(generators)
+ AddRelatedPropertyGeneratorsForScale_STATUS(generators)
+ scale_STATUSGenerator = gen.Struct(reflect.TypeOf(Scale_STATUS{}), generators)
+
+ return scale_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScale_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScale_STATUS(gens map[string]gopter.Gen) {
+ gens["MaxReplicas"] = gen.PtrOf(gen.Int())
+ gens["MinReplicas"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForScale_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScale_STATUS(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(ScaleRule_STATUSGenerator())
+}
+
+func Test_Secret_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Secret to Secret via AssignProperties_To_Secret & AssignProperties_From_Secret returns original",
+ prop.ForAll(RunPropertyAssignmentTestForSecret, SecretGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForSecret tests if a specific instance of Secret can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForSecret(subject Secret) 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.Secret
+ err := copied.AssignProperties_To_Secret(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Secret
+ err = actual.AssignProperties_From_Secret(&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_Secret_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 Secret via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecret, SecretGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecret runs a test to see if a specific instance of Secret round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecret(subject Secret) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Secret
+ 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 Secret instances for property testing - lazily instantiated by SecretGenerator()
+var secretGenerator gopter.Gen
+
+// SecretGenerator returns a generator of Secret instances for property testing.
+func SecretGenerator() gopter.Gen {
+ if secretGenerator != nil {
+ return secretGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecret(generators)
+ secretGenerator = gen.Struct(reflect.TypeOf(Secret{}), generators)
+
+ return secretGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecret is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecret(gens map[string]gopter.Gen) {
+ gens["KeyVaultUrl"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_SecretVolumeItem_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from SecretVolumeItem to SecretVolumeItem via AssignProperties_To_SecretVolumeItem & AssignProperties_From_SecretVolumeItem returns original",
+ prop.ForAll(RunPropertyAssignmentTestForSecretVolumeItem, SecretVolumeItemGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForSecretVolumeItem tests if a specific instance of SecretVolumeItem can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForSecretVolumeItem(subject SecretVolumeItem) 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.SecretVolumeItem
+ err := copied.AssignProperties_To_SecretVolumeItem(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual SecretVolumeItem
+ err = actual.AssignProperties_From_SecretVolumeItem(&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_SecretVolumeItem_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 SecretVolumeItem via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecretVolumeItem, SecretVolumeItemGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecretVolumeItem runs a test to see if a specific instance of SecretVolumeItem round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecretVolumeItem(subject SecretVolumeItem) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual SecretVolumeItem
+ 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 SecretVolumeItem instances for property testing - lazily instantiated by SecretVolumeItemGenerator()
+var secretVolumeItemGenerator gopter.Gen
+
+// SecretVolumeItemGenerator returns a generator of SecretVolumeItem instances for property testing.
+func SecretVolumeItemGenerator() gopter.Gen {
+ if secretVolumeItemGenerator != nil {
+ return secretVolumeItemGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecretVolumeItem(generators)
+ secretVolumeItemGenerator = gen.Struct(reflect.TypeOf(SecretVolumeItem{}), generators)
+
+ return secretVolumeItemGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecretVolumeItem is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecretVolumeItem(gens map[string]gopter.Gen) {
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_SecretVolumeItem_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from SecretVolumeItem_STATUS to SecretVolumeItem_STATUS via AssignProperties_To_SecretVolumeItem_STATUS & AssignProperties_From_SecretVolumeItem_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForSecretVolumeItem_STATUS, SecretVolumeItem_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForSecretVolumeItem_STATUS tests if a specific instance of SecretVolumeItem_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForSecretVolumeItem_STATUS(subject SecretVolumeItem_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.SecretVolumeItem_STATUS
+ err := copied.AssignProperties_To_SecretVolumeItem_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual SecretVolumeItem_STATUS
+ err = actual.AssignProperties_From_SecretVolumeItem_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_SecretVolumeItem_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 SecretVolumeItem_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecretVolumeItem_STATUS, SecretVolumeItem_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecretVolumeItem_STATUS runs a test to see if a specific instance of SecretVolumeItem_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecretVolumeItem_STATUS(subject SecretVolumeItem_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual SecretVolumeItem_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 SecretVolumeItem_STATUS instances for property testing - lazily instantiated by
+// SecretVolumeItem_STATUSGenerator()
+var secretVolumeItem_STATUSGenerator gopter.Gen
+
+// SecretVolumeItem_STATUSGenerator returns a generator of SecretVolumeItem_STATUS instances for property testing.
+func SecretVolumeItem_STATUSGenerator() gopter.Gen {
+ if secretVolumeItem_STATUSGenerator != nil {
+ return secretVolumeItem_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS(generators)
+ secretVolumeItem_STATUSGenerator = gen.Struct(reflect.TypeOf(SecretVolumeItem_STATUS{}), generators)
+
+ return secretVolumeItem_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS(gens map[string]gopter.Gen) {
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Secret_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Secret_STATUS to Secret_STATUS via AssignProperties_To_Secret_STATUS & AssignProperties_From_Secret_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForSecret_STATUS, Secret_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForSecret_STATUS tests if a specific instance of Secret_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForSecret_STATUS(subject Secret_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.Secret_STATUS
+ err := copied.AssignProperties_To_Secret_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Secret_STATUS
+ err = actual.AssignProperties_From_Secret_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_Secret_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 Secret_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecret_STATUS, Secret_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecret_STATUS runs a test to see if a specific instance of Secret_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecret_STATUS(subject Secret_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Secret_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 Secret_STATUS instances for property testing - lazily instantiated by Secret_STATUSGenerator()
+var secret_STATUSGenerator gopter.Gen
+
+// Secret_STATUSGenerator returns a generator of Secret_STATUS instances for property testing.
+func Secret_STATUSGenerator() gopter.Gen {
+ if secret_STATUSGenerator != nil {
+ return secret_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecret_STATUS(generators)
+ secret_STATUSGenerator = gen.Struct(reflect.TypeOf(Secret_STATUS{}), generators)
+
+ return secret_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecret_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecret_STATUS(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(gen.AlphaString())
+ gens["KeyVaultUrl"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Service_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Service to Service via AssignProperties_To_Service & AssignProperties_From_Service returns original",
+ prop.ForAll(RunPropertyAssignmentTestForService, ServiceGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForService tests if a specific instance of Service can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForService(subject Service) 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.Service
+ err := copied.AssignProperties_To_Service(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Service
+ err = actual.AssignProperties_From_Service(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Check for a match
+ match := cmp.Equal(subject, actual, cmpopts.EquateEmpty())
+ if !match {
+ actualFmt := pretty.Sprint(actual)
+ subjectFmt := pretty.Sprint(subject)
+ result := diff.Diff(subjectFmt, actualFmt)
+ return result
+ }
+
+ return ""
+}
+
+func Test_Service_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 Service via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForService, ServiceGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForService runs a test to see if a specific instance of Service round trips to JSON and back losslessly
+func RunJSONSerializationTestForService(subject Service) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Service
+ err = json.Unmarshal(bin, &actual)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Check for outcome
+ match := cmp.Equal(subject, actual, cmpopts.EquateEmpty())
+ if !match {
+ actualFmt := pretty.Sprint(actual)
+ subjectFmt := pretty.Sprint(subject)
+ result := diff.Diff(subjectFmt, actualFmt)
+ return result
+ }
+
+ return ""
+}
+
+// Generator of Service instances for property testing - lazily instantiated by ServiceGenerator()
+var serviceGenerator gopter.Gen
+
+// ServiceGenerator returns a generator of Service instances for property testing.
+func ServiceGenerator() gopter.Gen {
+ if serviceGenerator != nil {
+ return serviceGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForService(generators)
+ serviceGenerator = gen.Struct(reflect.TypeOf(Service{}), generators)
+
+ return serviceGenerator
+}
+
+// AddIndependentPropertyGeneratorsForService is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForService(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ServiceBind_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ServiceBind to ServiceBind via AssignProperties_To_ServiceBind & AssignProperties_From_ServiceBind returns original",
+ prop.ForAll(RunPropertyAssignmentTestForServiceBind, ServiceBindGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForServiceBind tests if a specific instance of ServiceBind can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForServiceBind(subject ServiceBind) 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.ServiceBind
+ err := copied.AssignProperties_To_ServiceBind(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ServiceBind
+ err = actual.AssignProperties_From_ServiceBind(&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_ServiceBind_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 ServiceBind via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForServiceBind, ServiceBindGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForServiceBind runs a test to see if a specific instance of ServiceBind round trips to JSON and back losslessly
+func RunJSONSerializationTestForServiceBind(subject ServiceBind) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ServiceBind
+ 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 ServiceBind instances for property testing - lazily instantiated by ServiceBindGenerator()
+var serviceBindGenerator gopter.Gen
+
+// ServiceBindGenerator returns a generator of ServiceBind instances for property testing.
+func ServiceBindGenerator() gopter.Gen {
+ if serviceBindGenerator != nil {
+ return serviceBindGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForServiceBind(generators)
+ serviceBindGenerator = gen.Struct(reflect.TypeOf(ServiceBind{}), generators)
+
+ return serviceBindGenerator
+}
+
+// AddIndependentPropertyGeneratorsForServiceBind is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForServiceBind(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ServiceBind_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ServiceBind_STATUS to ServiceBind_STATUS via AssignProperties_To_ServiceBind_STATUS & AssignProperties_From_ServiceBind_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForServiceBind_STATUS, ServiceBind_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForServiceBind_STATUS tests if a specific instance of ServiceBind_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForServiceBind_STATUS(subject ServiceBind_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.ServiceBind_STATUS
+ err := copied.AssignProperties_To_ServiceBind_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ServiceBind_STATUS
+ err = actual.AssignProperties_From_ServiceBind_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_ServiceBind_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 ServiceBind_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForServiceBind_STATUS, ServiceBind_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForServiceBind_STATUS runs a test to see if a specific instance of ServiceBind_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForServiceBind_STATUS(subject ServiceBind_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ServiceBind_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 ServiceBind_STATUS instances for property testing - lazily instantiated by ServiceBind_STATUSGenerator()
+var serviceBind_STATUSGenerator gopter.Gen
+
+// ServiceBind_STATUSGenerator returns a generator of ServiceBind_STATUS instances for property testing.
+func ServiceBind_STATUSGenerator() gopter.Gen {
+ if serviceBind_STATUSGenerator != nil {
+ return serviceBind_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForServiceBind_STATUS(generators)
+ serviceBind_STATUSGenerator = gen.Struct(reflect.TypeOf(ServiceBind_STATUS{}), generators)
+
+ return serviceBind_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForServiceBind_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForServiceBind_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["ServiceId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Service_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Service_STATUS to Service_STATUS via AssignProperties_To_Service_STATUS & AssignProperties_From_Service_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForService_STATUS, Service_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForService_STATUS tests if a specific instance of Service_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForService_STATUS(subject Service_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.Service_STATUS
+ err := copied.AssignProperties_To_Service_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Service_STATUS
+ err = actual.AssignProperties_From_Service_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Check for a match
+ match := cmp.Equal(subject, actual, cmpopts.EquateEmpty())
+ if !match {
+ actualFmt := pretty.Sprint(actual)
+ subjectFmt := pretty.Sprint(subject)
+ result := diff.Diff(subjectFmt, actualFmt)
+ return result
+ }
+
+ return ""
+}
+
+func Test_Service_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MinSuccessfulTests = 80
+ parameters.MaxSize = 3
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip of Service_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForService_STATUS, Service_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForService_STATUS runs a test to see if a specific instance of Service_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForService_STATUS(subject Service_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Service_STATUS
+ err = json.Unmarshal(bin, &actual)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Check for outcome
+ match := cmp.Equal(subject, actual, cmpopts.EquateEmpty())
+ if !match {
+ actualFmt := pretty.Sprint(actual)
+ subjectFmt := pretty.Sprint(subject)
+ result := diff.Diff(subjectFmt, actualFmt)
+ return result
+ }
+
+ return ""
+}
+
+// Generator of Service_STATUS instances for property testing - lazily instantiated by Service_STATUSGenerator()
+var service_STATUSGenerator gopter.Gen
+
+// Service_STATUSGenerator returns a generator of Service_STATUS instances for property testing.
+func Service_STATUSGenerator() gopter.Gen {
+ if service_STATUSGenerator != nil {
+ return service_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForService_STATUS(generators)
+ service_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_STATUS{}), generators)
+
+ return service_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForService_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForService_STATUS(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_TcpScaleRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from TcpScaleRule to TcpScaleRule via AssignProperties_To_TcpScaleRule & AssignProperties_From_TcpScaleRule returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTcpScaleRule, TcpScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTcpScaleRule tests if a specific instance of TcpScaleRule can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTcpScaleRule(subject TcpScaleRule) 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.TcpScaleRule
+ err := copied.AssignProperties_To_TcpScaleRule(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual TcpScaleRule
+ err = actual.AssignProperties_From_TcpScaleRule(&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_TcpScaleRule_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 TcpScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTcpScaleRule, TcpScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTcpScaleRule runs a test to see if a specific instance of TcpScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForTcpScaleRule(subject TcpScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TcpScaleRule
+ 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 TcpScaleRule instances for property testing - lazily instantiated by TcpScaleRuleGenerator()
+var tcpScaleRuleGenerator gopter.Gen
+
+// TcpScaleRuleGenerator returns a generator of TcpScaleRule instances for property testing.
+// We first initialize tcpScaleRuleGenerator 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 TcpScaleRuleGenerator() gopter.Gen {
+ if tcpScaleRuleGenerator != nil {
+ return tcpScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule(generators)
+ tcpScaleRuleGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule(generators)
+ AddRelatedPropertyGeneratorsForTcpScaleRule(generators)
+ tcpScaleRuleGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule{}), generators)
+
+ return tcpScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTcpScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTcpScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForTcpScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTcpScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_TcpScaleRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from TcpScaleRule_STATUS to TcpScaleRule_STATUS via AssignProperties_To_TcpScaleRule_STATUS & AssignProperties_From_TcpScaleRule_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTcpScaleRule_STATUS, TcpScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTcpScaleRule_STATUS tests if a specific instance of TcpScaleRule_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTcpScaleRule_STATUS(subject TcpScaleRule_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.TcpScaleRule_STATUS
+ err := copied.AssignProperties_To_TcpScaleRule_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual TcpScaleRule_STATUS
+ err = actual.AssignProperties_From_TcpScaleRule_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_TcpScaleRule_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 TcpScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTcpScaleRule_STATUS, TcpScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTcpScaleRule_STATUS runs a test to see if a specific instance of TcpScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTcpScaleRule_STATUS(subject TcpScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TcpScaleRule_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 TcpScaleRule_STATUS instances for property testing - lazily instantiated by
+// TcpScaleRule_STATUSGenerator()
+var tcpScaleRule_STATUSGenerator gopter.Gen
+
+// TcpScaleRule_STATUSGenerator returns a generator of TcpScaleRule_STATUS instances for property testing.
+// We first initialize tcpScaleRule_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 TcpScaleRule_STATUSGenerator() gopter.Gen {
+ if tcpScaleRule_STATUSGenerator != nil {
+ return tcpScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ tcpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ tcpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule_STATUS{}), generators)
+
+ return tcpScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_Template_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Template to Template via AssignProperties_To_Template & AssignProperties_From_Template returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTemplate, TemplateGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTemplate tests if a specific instance of Template can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTemplate(subject Template) 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.Template
+ err := copied.AssignProperties_To_Template(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Template
+ err = actual.AssignProperties_From_Template(&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_Template_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 Template via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTemplate, TemplateGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTemplate runs a test to see if a specific instance of Template round trips to JSON and back losslessly
+func RunJSONSerializationTestForTemplate(subject Template) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Template
+ 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 Template instances for property testing - lazily instantiated by TemplateGenerator()
+var templateGenerator gopter.Gen
+
+// TemplateGenerator returns a generator of Template instances for property testing.
+// We first initialize templateGenerator 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 TemplateGenerator() gopter.Gen {
+ if templateGenerator != nil {
+ return templateGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate(generators)
+ templateGenerator = gen.Struct(reflect.TypeOf(Template{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate(generators)
+ AddRelatedPropertyGeneratorsForTemplate(generators)
+ templateGenerator = gen.Struct(reflect.TypeOf(Template{}), generators)
+
+ return templateGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTemplate is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTemplate(gens map[string]gopter.Gen) {
+ gens["RevisionSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForTemplate is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTemplate(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(ContainerGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainerGenerator())
+ gens["Scale"] = gen.PtrOf(ScaleGenerator())
+ gens["ServiceBinds"] = gen.SliceOf(ServiceBindGenerator())
+ gens["Volumes"] = gen.SliceOf(VolumeGenerator())
+}
+
+func Test_Template_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Template_STATUS to Template_STATUS via AssignProperties_To_Template_STATUS & AssignProperties_From_Template_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTemplate_STATUS, Template_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTemplate_STATUS tests if a specific instance of Template_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTemplate_STATUS(subject Template_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.Template_STATUS
+ err := copied.AssignProperties_To_Template_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Template_STATUS
+ err = actual.AssignProperties_From_Template_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_Template_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 Template_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTemplate_STATUS, Template_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTemplate_STATUS runs a test to see if a specific instance of Template_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTemplate_STATUS(subject Template_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Template_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 Template_STATUS instances for property testing - lazily instantiated by Template_STATUSGenerator()
+var template_STATUSGenerator gopter.Gen
+
+// Template_STATUSGenerator returns a generator of Template_STATUS instances for property testing.
+// We first initialize template_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 Template_STATUSGenerator() gopter.Gen {
+ if template_STATUSGenerator != nil {
+ return template_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate_STATUS(generators)
+ template_STATUSGenerator = gen.Struct(reflect.TypeOf(Template_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTemplate_STATUS(generators)
+ template_STATUSGenerator = gen.Struct(reflect.TypeOf(Template_STATUS{}), generators)
+
+ return template_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTemplate_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["RevisionSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForTemplate_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(Container_STATUSGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainer_STATUSGenerator())
+ gens["Scale"] = gen.PtrOf(Scale_STATUSGenerator())
+ gens["ServiceBinds"] = gen.SliceOf(ServiceBind_STATUSGenerator())
+ gens["Volumes"] = gen.SliceOf(Volume_STATUSGenerator())
+}
+
+func Test_TrafficWeight_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from TrafficWeight to TrafficWeight via AssignProperties_To_TrafficWeight & AssignProperties_From_TrafficWeight returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTrafficWeight, TrafficWeightGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTrafficWeight tests if a specific instance of TrafficWeight can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTrafficWeight(subject TrafficWeight) 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.TrafficWeight
+ err := copied.AssignProperties_To_TrafficWeight(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual TrafficWeight
+ err = actual.AssignProperties_From_TrafficWeight(&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_TrafficWeight_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 TrafficWeight via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTrafficWeight, TrafficWeightGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTrafficWeight runs a test to see if a specific instance of TrafficWeight round trips to JSON and back losslessly
+func RunJSONSerializationTestForTrafficWeight(subject TrafficWeight) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TrafficWeight
+ 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 TrafficWeight instances for property testing - lazily instantiated by TrafficWeightGenerator()
+var trafficWeightGenerator gopter.Gen
+
+// TrafficWeightGenerator returns a generator of TrafficWeight instances for property testing.
+func TrafficWeightGenerator() gopter.Gen {
+ if trafficWeightGenerator != nil {
+ return trafficWeightGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTrafficWeight(generators)
+ trafficWeightGenerator = gen.Struct(reflect.TypeOf(TrafficWeight{}), generators)
+
+ return trafficWeightGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTrafficWeight is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTrafficWeight(gens map[string]gopter.Gen) {
+ gens["Label"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevision"] = gen.PtrOf(gen.Bool())
+ gens["RevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["Weight"] = gen.PtrOf(gen.Int())
+}
+
+func Test_TrafficWeight_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from TrafficWeight_STATUS to TrafficWeight_STATUS via AssignProperties_To_TrafficWeight_STATUS & AssignProperties_From_TrafficWeight_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForTrafficWeight_STATUS, TrafficWeight_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForTrafficWeight_STATUS tests if a specific instance of TrafficWeight_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForTrafficWeight_STATUS(subject TrafficWeight_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.TrafficWeight_STATUS
+ err := copied.AssignProperties_To_TrafficWeight_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual TrafficWeight_STATUS
+ err = actual.AssignProperties_From_TrafficWeight_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_TrafficWeight_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 TrafficWeight_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTrafficWeight_STATUS, TrafficWeight_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTrafficWeight_STATUS runs a test to see if a specific instance of TrafficWeight_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTrafficWeight_STATUS(subject TrafficWeight_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TrafficWeight_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 TrafficWeight_STATUS instances for property testing - lazily instantiated by
+// TrafficWeight_STATUSGenerator()
+var trafficWeight_STATUSGenerator gopter.Gen
+
+// TrafficWeight_STATUSGenerator returns a generator of TrafficWeight_STATUS instances for property testing.
+func TrafficWeight_STATUSGenerator() gopter.Gen {
+ if trafficWeight_STATUSGenerator != nil {
+ return trafficWeight_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTrafficWeight_STATUS(generators)
+ trafficWeight_STATUSGenerator = gen.Struct(reflect.TypeOf(TrafficWeight_STATUS{}), generators)
+
+ return trafficWeight_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTrafficWeight_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTrafficWeight_STATUS(gens map[string]gopter.Gen) {
+ gens["Label"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevision"] = gen.PtrOf(gen.Bool())
+ gens["RevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["Weight"] = gen.PtrOf(gen.Int())
+}
+
+func Test_UserAssignedIdentityDetails_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from UserAssignedIdentityDetails to UserAssignedIdentityDetails via AssignProperties_To_UserAssignedIdentityDetails & AssignProperties_From_UserAssignedIdentityDetails returns original",
+ prop.ForAll(RunPropertyAssignmentTestForUserAssignedIdentityDetails, UserAssignedIdentityDetailsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForUserAssignedIdentityDetails tests if a specific instance of UserAssignedIdentityDetails can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForUserAssignedIdentityDetails(subject UserAssignedIdentityDetails) 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.UserAssignedIdentityDetails
+ err := copied.AssignProperties_To_UserAssignedIdentityDetails(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual UserAssignedIdentityDetails
+ err = actual.AssignProperties_From_UserAssignedIdentityDetails(&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_UserAssignedIdentityDetails_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 UserAssignedIdentityDetails via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForUserAssignedIdentityDetails, UserAssignedIdentityDetailsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForUserAssignedIdentityDetails runs a test to see if a specific instance of UserAssignedIdentityDetails round trips to JSON and back losslessly
+func RunJSONSerializationTestForUserAssignedIdentityDetails(subject UserAssignedIdentityDetails) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual UserAssignedIdentityDetails
+ 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 UserAssignedIdentityDetails instances for property testing - lazily instantiated by
+// UserAssignedIdentityDetailsGenerator()
+var userAssignedIdentityDetailsGenerator gopter.Gen
+
+// UserAssignedIdentityDetailsGenerator returns a generator of UserAssignedIdentityDetails instances for property testing.
+func UserAssignedIdentityDetailsGenerator() gopter.Gen {
+ if userAssignedIdentityDetailsGenerator != nil {
+ return userAssignedIdentityDetailsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ userAssignedIdentityDetailsGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentityDetails{}), generators)
+
+ return userAssignedIdentityDetailsGenerator
+}
+
+func Test_UserAssignedIdentity_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from UserAssignedIdentity_STATUS to UserAssignedIdentity_STATUS via AssignProperties_To_UserAssignedIdentity_STATUS & AssignProperties_From_UserAssignedIdentity_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForUserAssignedIdentity_STATUS, UserAssignedIdentity_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForUserAssignedIdentity_STATUS tests if a specific instance of UserAssignedIdentity_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForUserAssignedIdentity_STATUS(subject UserAssignedIdentity_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.UserAssignedIdentity_STATUS
+ err := copied.AssignProperties_To_UserAssignedIdentity_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual UserAssignedIdentity_STATUS
+ err = actual.AssignProperties_From_UserAssignedIdentity_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_UserAssignedIdentity_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 UserAssignedIdentity_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForUserAssignedIdentity_STATUS, UserAssignedIdentity_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForUserAssignedIdentity_STATUS runs a test to see if a specific instance of UserAssignedIdentity_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForUserAssignedIdentity_STATUS(subject UserAssignedIdentity_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual UserAssignedIdentity_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 UserAssignedIdentity_STATUS instances for property testing - lazily instantiated by
+// UserAssignedIdentity_STATUSGenerator()
+var userAssignedIdentity_STATUSGenerator gopter.Gen
+
+// UserAssignedIdentity_STATUSGenerator returns a generator of UserAssignedIdentity_STATUS instances for property testing.
+func UserAssignedIdentity_STATUSGenerator() gopter.Gen {
+ if userAssignedIdentity_STATUSGenerator != nil {
+ return userAssignedIdentity_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS(generators)
+ userAssignedIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity_STATUS{}), generators)
+
+ return userAssignedIdentity_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["PrincipalId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Volume_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Volume to Volume via AssignProperties_To_Volume & AssignProperties_From_Volume returns original",
+ prop.ForAll(RunPropertyAssignmentTestForVolume, VolumeGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForVolume tests if a specific instance of Volume can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForVolume(subject Volume) 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.Volume
+ err := copied.AssignProperties_To_Volume(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Volume
+ err = actual.AssignProperties_From_Volume(&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_Volume_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 Volume via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolume, VolumeGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolume runs a test to see if a specific instance of Volume round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolume(subject Volume) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Volume
+ 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 Volume instances for property testing - lazily instantiated by VolumeGenerator()
+var volumeGenerator gopter.Gen
+
+// VolumeGenerator returns a generator of Volume instances for property testing.
+// We first initialize volumeGenerator 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 VolumeGenerator() gopter.Gen {
+ if volumeGenerator != nil {
+ return volumeGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume(generators)
+ volumeGenerator = gen.Struct(reflect.TypeOf(Volume{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume(generators)
+ AddRelatedPropertyGeneratorsForVolume(generators)
+ volumeGenerator = gen.Struct(reflect.TypeOf(Volume{}), generators)
+
+ return volumeGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolume is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolume(gens map[string]gopter.Gen) {
+ gens["MountOptions"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageName"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageType"] = gen.PtrOf(gen.OneConstOf(Volume_StorageType_AzureFile, Volume_StorageType_EmptyDir, Volume_StorageType_Secret))
+}
+
+// AddRelatedPropertyGeneratorsForVolume is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForVolume(gens map[string]gopter.Gen) {
+ gens["Secrets"] = gen.SliceOf(SecretVolumeItemGenerator())
+}
+
+func Test_VolumeMount_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from VolumeMount to VolumeMount via AssignProperties_To_VolumeMount & AssignProperties_From_VolumeMount returns original",
+ prop.ForAll(RunPropertyAssignmentTestForVolumeMount, VolumeMountGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForVolumeMount tests if a specific instance of VolumeMount can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForVolumeMount(subject VolumeMount) 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.VolumeMount
+ err := copied.AssignProperties_To_VolumeMount(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual VolumeMount
+ err = actual.AssignProperties_From_VolumeMount(&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_VolumeMount_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 VolumeMount via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolumeMount, VolumeMountGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolumeMount runs a test to see if a specific instance of VolumeMount round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolumeMount(subject VolumeMount) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VolumeMount
+ 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 VolumeMount instances for property testing - lazily instantiated by VolumeMountGenerator()
+var volumeMountGenerator gopter.Gen
+
+// VolumeMountGenerator returns a generator of VolumeMount instances for property testing.
+func VolumeMountGenerator() gopter.Gen {
+ if volumeMountGenerator != nil {
+ return volumeMountGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolumeMount(generators)
+ volumeMountGenerator = gen.Struct(reflect.TypeOf(VolumeMount{}), generators)
+
+ return volumeMountGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolumeMount is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolumeMount(gens map[string]gopter.Gen) {
+ gens["MountPath"] = gen.PtrOf(gen.AlphaString())
+ gens["SubPath"] = gen.PtrOf(gen.AlphaString())
+ gens["VolumeName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_VolumeMount_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from VolumeMount_STATUS to VolumeMount_STATUS via AssignProperties_To_VolumeMount_STATUS & AssignProperties_From_VolumeMount_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForVolumeMount_STATUS, VolumeMount_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForVolumeMount_STATUS tests if a specific instance of VolumeMount_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForVolumeMount_STATUS(subject VolumeMount_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.VolumeMount_STATUS
+ err := copied.AssignProperties_To_VolumeMount_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual VolumeMount_STATUS
+ err = actual.AssignProperties_From_VolumeMount_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_VolumeMount_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 VolumeMount_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolumeMount_STATUS, VolumeMount_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolumeMount_STATUS runs a test to see if a specific instance of VolumeMount_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolumeMount_STATUS(subject VolumeMount_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VolumeMount_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 VolumeMount_STATUS instances for property testing - lazily instantiated by VolumeMount_STATUSGenerator()
+var volumeMount_STATUSGenerator gopter.Gen
+
+// VolumeMount_STATUSGenerator returns a generator of VolumeMount_STATUS instances for property testing.
+func VolumeMount_STATUSGenerator() gopter.Gen {
+ if volumeMount_STATUSGenerator != nil {
+ return volumeMount_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolumeMount_STATUS(generators)
+ volumeMount_STATUSGenerator = gen.Struct(reflect.TypeOf(VolumeMount_STATUS{}), generators)
+
+ return volumeMount_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolumeMount_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolumeMount_STATUS(gens map[string]gopter.Gen) {
+ gens["MountPath"] = gen.PtrOf(gen.AlphaString())
+ gens["SubPath"] = gen.PtrOf(gen.AlphaString())
+ gens["VolumeName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Volume_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Volume_STATUS to Volume_STATUS via AssignProperties_To_Volume_STATUS & AssignProperties_From_Volume_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForVolume_STATUS, Volume_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForVolume_STATUS tests if a specific instance of Volume_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForVolume_STATUS(subject Volume_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.Volume_STATUS
+ err := copied.AssignProperties_To_Volume_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Volume_STATUS
+ err = actual.AssignProperties_From_Volume_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_Volume_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 Volume_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolume_STATUS, Volume_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolume_STATUS runs a test to see if a specific instance of Volume_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolume_STATUS(subject Volume_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Volume_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 Volume_STATUS instances for property testing - lazily instantiated by Volume_STATUSGenerator()
+var volume_STATUSGenerator gopter.Gen
+
+// Volume_STATUSGenerator returns a generator of Volume_STATUS instances for property testing.
+// We first initialize volume_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 Volume_STATUSGenerator() gopter.Gen {
+ if volume_STATUSGenerator != nil {
+ return volume_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume_STATUS(generators)
+ volume_STATUSGenerator = gen.Struct(reflect.TypeOf(Volume_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume_STATUS(generators)
+ AddRelatedPropertyGeneratorsForVolume_STATUS(generators)
+ volume_STATUSGenerator = gen.Struct(reflect.TypeOf(Volume_STATUS{}), generators)
+
+ return volume_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolume_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolume_STATUS(gens map[string]gopter.Gen) {
+ gens["MountOptions"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageName"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageType"] = gen.PtrOf(gen.OneConstOf(Volume_StorageType_STATUS_AzureFile, Volume_StorageType_STATUS_EmptyDir, Volume_StorageType_STATUS_Secret))
+}
+
+// AddRelatedPropertyGeneratorsForVolume_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForVolume_STATUS(gens map[string]gopter.Gen) {
+ gens["Secrets"] = gen.SliceOf(SecretVolumeItem_STATUSGenerator())
+}
diff --git a/v2/api/app/v1api20240301/doc.go b/v2/api/app/v1api20240301/doc.go
new file mode 100644
index 00000000000..d46d2c8ceea
--- /dev/null
+++ b/v2/api/app/v1api20240301/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 v1api20240301 contains API Schema definitions for the app v1api20240301 API group
+// +groupName=app.azure.com
+package v1api20240301
diff --git a/v2/api/app/v1api20240301/groupversion_info_gen.go b/v2/api/app/v1api20240301/groupversion_info_gen.go
new file mode 100644
index 00000000000..80480cd6832
--- /dev/null
+++ b/v2/api/app/v1api20240301/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 v1api20240301 contains API Schema definitions for the app v1api20240301 API group
+// +kubebuilder:object:generate=true
+// All object properties are optional by default, this will be overridden when needed:
+// +kubebuilder:validation:Optional
+// +groupName=app.azure.com
+// +versionName=v1api20240301
+package v1api20240301
+
+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: "app.azure.com", Version: "v1api20240301"}
+
+ // 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/app/v1api20240301/job_types_gen.go b/v2/api/app/v1api20240301/job_types_gen.go
new file mode 100644
index 00000000000..f092425f552
--- /dev/null
+++ b/v2/api/app/v1api20240301/job_types_gen.go
@@ -0,0 +1,4166 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package v1api20240301
+
+import (
+ "fmt"
+ arm "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/arm"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/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/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/secrets"
+ "github.com/rotisserie/eris"
+ "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
+ 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: /app/resource-manager/Microsoft.App/stable/2024-03-01/Jobs.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}
+type Job struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty"`
+ Spec Job_Spec `json:"spec,omitempty"`
+ Status Job_STATUS `json:"status,omitempty"`
+}
+
+var _ conditions.Conditioner = &Job{}
+
+// GetConditions returns the conditions of the resource
+func (job *Job) GetConditions() conditions.Conditions {
+ return job.Status.Conditions
+}
+
+// SetConditions sets the conditions on the resource status
+func (job *Job) SetConditions(conditions conditions.Conditions) { job.Status.Conditions = conditions }
+
+var _ conversion.Convertible = &Job{}
+
+// ConvertFrom populates our Job from the provided hub Job
+func (job *Job) ConvertFrom(hub conversion.Hub) error {
+ source, ok := hub.(*storage.Job)
+ if !ok {
+ return fmt.Errorf("expected app/v1api20240301/storage/Job but received %T instead", hub)
+ }
+
+ return job.AssignProperties_From_Job(source)
+}
+
+// ConvertTo populates the provided hub Job from our Job
+func (job *Job) ConvertTo(hub conversion.Hub) error {
+ destination, ok := hub.(*storage.Job)
+ if !ok {
+ return fmt.Errorf("expected app/v1api20240301/storage/Job but received %T instead", hub)
+ }
+
+ return job.AssignProperties_To_Job(destination)
+}
+
+// +kubebuilder:webhook:path=/mutate-app-azure-com-v1api20240301-job,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=app.azure.com,resources=jobs,verbs=create;update,versions=v1api20240301,name=default.v1api20240301.jobs.app.azure.com,admissionReviewVersions=v1
+
+var _ admission.Defaulter = &Job{}
+
+// Default applies defaults to the Job resource
+func (job *Job) Default() {
+ job.defaultImpl()
+ var temp any = job
+ if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok {
+ runtimeDefaulter.CustomDefault()
+ }
+}
+
+// defaultAzureName defaults the Azure name of the resource to the Kubernetes name
+func (job *Job) defaultAzureName() {
+ if job.Spec.AzureName == "" {
+ job.Spec.AzureName = job.Name
+ }
+}
+
+// defaultImpl applies the code generated defaults to the Job resource
+func (job *Job) defaultImpl() { job.defaultAzureName() }
+
+var _ configmaps.Exporter = &Job{}
+
+// ConfigMapDestinationExpressions returns the Spec.OperatorSpec.ConfigMapExpressions property
+func (job *Job) ConfigMapDestinationExpressions() []*core.DestinationExpression {
+ if job.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return job.Spec.OperatorSpec.ConfigMapExpressions
+}
+
+var _ secrets.Exporter = &Job{}
+
+// SecretDestinationExpressions returns the Spec.OperatorSpec.SecretExpressions property
+func (job *Job) SecretDestinationExpressions() []*core.DestinationExpression {
+ if job.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return job.Spec.OperatorSpec.SecretExpressions
+}
+
+var _ genruntime.ImportableResource = &Job{}
+
+// InitializeSpec initializes the spec for this resource from the given status
+func (job *Job) InitializeSpec(status genruntime.ConvertibleStatus) error {
+ if s, ok := status.(*Job_STATUS); ok {
+ return job.Spec.Initialize_From_Job_STATUS(s)
+ }
+
+ return fmt.Errorf("expected Status of type Job_STATUS but received %T instead", status)
+}
+
+var _ genruntime.KubernetesResource = &Job{}
+
+// AzureName returns the Azure name of the resource
+func (job *Job) AzureName() string {
+ return job.Spec.AzureName
+}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (job Job) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetResourceScope returns the scope of the resource
+func (job *Job) GetResourceScope() genruntime.ResourceScope {
+ return genruntime.ResourceScopeResourceGroup
+}
+
+// GetSpec returns the specification of this resource
+func (job *Job) GetSpec() genruntime.ConvertibleSpec {
+ return &job.Spec
+}
+
+// GetStatus returns the status of this resource
+func (job *Job) GetStatus() genruntime.ConvertibleStatus {
+ return &job.Status
+}
+
+// GetSupportedOperations returns the operations supported by the resource
+func (job *Job) GetSupportedOperations() []genruntime.ResourceOperation {
+ return []genruntime.ResourceOperation{
+ genruntime.ResourceOperationDelete,
+ genruntime.ResourceOperationGet,
+ genruntime.ResourceOperationPut,
+ }
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/jobs"
+func (job *Job) GetType() string {
+ return "Microsoft.App/jobs"
+}
+
+// NewEmptyStatus returns a new empty (blank) status
+func (job *Job) NewEmptyStatus() genruntime.ConvertibleStatus {
+ return &Job_STATUS{}
+}
+
+// Owner returns the ResourceReference of the owner
+func (job *Job) Owner() *genruntime.ResourceReference {
+ if job.Spec.Owner == nil {
+ return nil
+ }
+
+ group, kind := genruntime.LookupOwnerGroupKind(job.Spec)
+ return job.Spec.Owner.AsResourceReference(group, kind)
+}
+
+// SetStatus sets the status of this resource
+func (job *Job) SetStatus(status genruntime.ConvertibleStatus) error {
+ // If we have exactly the right type of status, assign it
+ if st, ok := status.(*Job_STATUS); ok {
+ job.Status = *st
+ return nil
+ }
+
+ // Convert status to required version
+ var st Job_STATUS
+ err := status.ConvertStatusTo(&st)
+ if err != nil {
+ return eris.Wrap(err, "failed to convert status")
+ }
+
+ job.Status = st
+ return nil
+}
+
+// +kubebuilder:webhook:path=/validate-app-azure-com-v1api20240301-job,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=app.azure.com,resources=jobs,verbs=create;update,versions=v1api20240301,name=validate.v1api20240301.jobs.app.azure.com,admissionReviewVersions=v1
+
+var _ admission.Validator = &Job{}
+
+// ValidateCreate validates the creation of the resource
+func (job *Job) ValidateCreate() (admission.Warnings, error) {
+ validations := job.createValidations()
+ var temp any = job
+ if runtimeValidator, ok := temp.(genruntime.Validator); ok {
+ validations = append(validations, runtimeValidator.CreateValidations()...)
+ }
+ return genruntime.ValidateCreate(validations)
+}
+
+// ValidateDelete validates the deletion of the resource
+func (job *Job) ValidateDelete() (admission.Warnings, error) {
+ validations := job.deleteValidations()
+ var temp any = job
+ if runtimeValidator, ok := temp.(genruntime.Validator); ok {
+ validations = append(validations, runtimeValidator.DeleteValidations()...)
+ }
+ return genruntime.ValidateDelete(validations)
+}
+
+// ValidateUpdate validates an update of the resource
+func (job *Job) ValidateUpdate(old runtime.Object) (admission.Warnings, error) {
+ validations := job.updateValidations()
+ var temp any = job
+ 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 (job *Job) createValidations() []func() (admission.Warnings, error) {
+ return []func() (admission.Warnings, error){job.validateResourceReferences, job.validateOwnerReference, job.validateSecretDestinations, job.validateConfigMapDestinations}
+}
+
+// deleteValidations validates the deletion of the resource
+func (job *Job) deleteValidations() []func() (admission.Warnings, error) {
+ return nil
+}
+
+// updateValidations validates the update of the resource
+func (job *Job) updateValidations() []func(old runtime.Object) (admission.Warnings, error) {
+ return []func(old runtime.Object) (admission.Warnings, error){
+ func(old runtime.Object) (admission.Warnings, error) {
+ return job.validateResourceReferences()
+ },
+ job.validateWriteOnceProperties,
+ func(old runtime.Object) (admission.Warnings, error) {
+ return job.validateOwnerReference()
+ },
+ func(old runtime.Object) (admission.Warnings, error) {
+ return job.validateSecretDestinations()
+ },
+ func(old runtime.Object) (admission.Warnings, error) {
+ return job.validateConfigMapDestinations()
+ },
+ }
+}
+
+// validateConfigMapDestinations validates there are no colliding genruntime.ConfigMapDestinations
+func (job *Job) validateConfigMapDestinations() (admission.Warnings, error) {
+ if job.Spec.OperatorSpec == nil {
+ return nil, nil
+ }
+ return configmaps.ValidateDestinations(job, nil, job.Spec.OperatorSpec.ConfigMapExpressions)
+}
+
+// validateOwnerReference validates the owner field
+func (job *Job) validateOwnerReference() (admission.Warnings, error) {
+ return genruntime.ValidateOwner(job)
+}
+
+// validateResourceReferences validates all resource references
+func (job *Job) validateResourceReferences() (admission.Warnings, error) {
+ refs, err := reflecthelpers.FindResourceReferences(&job.Spec)
+ if err != nil {
+ return nil, err
+ }
+ return genruntime.ValidateResourceReferences(refs)
+}
+
+// validateSecretDestinations validates there are no colliding genruntime.SecretDestination's
+func (job *Job) validateSecretDestinations() (admission.Warnings, error) {
+ if job.Spec.OperatorSpec == nil {
+ return nil, nil
+ }
+ return secrets.ValidateDestinations(job, nil, job.Spec.OperatorSpec.SecretExpressions)
+}
+
+// validateWriteOnceProperties validates all WriteOnce properties
+func (job *Job) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) {
+ oldObj, ok := old.(*Job)
+ if !ok {
+ return nil, nil
+ }
+
+ return genruntime.ValidateWriteOnceProperties(oldObj, job)
+}
+
+// AssignProperties_From_Job populates our Job from the provided source Job
+func (job *Job) AssignProperties_From_Job(source *storage.Job) error {
+
+ // ObjectMeta
+ job.ObjectMeta = *source.ObjectMeta.DeepCopy()
+
+ // Spec
+ var spec Job_Spec
+ err := spec.AssignProperties_From_Job_Spec(&source.Spec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Job_Spec() to populate field Spec")
+ }
+ job.Spec = spec
+
+ // Status
+ var status Job_STATUS
+ err = status.AssignProperties_From_Job_STATUS(&source.Status)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Job_STATUS() to populate field Status")
+ }
+ job.Status = status
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Job populates the provided destination Job from our Job
+func (job *Job) AssignProperties_To_Job(destination *storage.Job) error {
+
+ // ObjectMeta
+ destination.ObjectMeta = *job.ObjectMeta.DeepCopy()
+
+ // Spec
+ var spec storage.Job_Spec
+ err := job.Spec.AssignProperties_To_Job_Spec(&spec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Job_Spec() to populate field Spec")
+ }
+ destination.Spec = spec
+
+ // Status
+ var status storage.Job_STATUS
+ err = job.Status.AssignProperties_To_Job_STATUS(&status)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Job_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 (job *Job) OriginalGVK() *schema.GroupVersionKind {
+ return &schema.GroupVersionKind{
+ Group: GroupVersion.Group,
+ Version: job.Spec.OriginalVersion(),
+ Kind: "Job",
+ }
+}
+
+// +kubebuilder:object:root=true
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/Jobs.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}
+type JobList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata,omitempty"`
+ Items []Job `json:"items"`
+}
+
+type Job_Spec struct {
+ // +kubebuilder:validation:Pattern="^[-\\w\\._\\(\\)]+$"
+ // 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"`
+
+ // Configuration: Container Apps Job configuration properties.
+ Configuration *JobConfiguration `json:"configuration,omitempty"`
+
+ // EnvironmentReference: Resource ID of environment.
+ EnvironmentReference *genruntime.ResourceReference `armReference:"EnvironmentId" json:"environmentReference,omitempty"`
+
+ // Identity: Managed identities needed by a container app job to interact with other Azure services to not maintain any
+ // secrets or credentials in code.
+ Identity *ManagedServiceIdentity `json:"identity,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Location: The geo-location where the resource lives
+ Location *string `json:"location,omitempty"`
+
+ // OperatorSpec: The specification for configuring operator behavior. This field is interpreted by the operator and not
+ // passed directly to Azure
+ OperatorSpec *JobOperatorSpec `json:"operatorSpec,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"`
+
+ // Tags: Resource tags.
+ Tags map[string]string `json:"tags,omitempty"`
+
+ // Template: Container Apps job definition.
+ Template *JobTemplate `json:"template,omitempty"`
+
+ // WorkloadProfileName: Workload profile name to pin for container apps job execution.
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Job_Spec{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (job *Job_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if job == nil {
+ return nil, nil
+ }
+ result := &arm.Job_Spec{}
+
+ // Set property "Identity":
+ if job.Identity != nil {
+ identity_ARM, err := (*job.Identity).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ identity := *identity_ARM.(*arm.ManagedServiceIdentity)
+ result.Identity = &identity
+ }
+
+ // Set property "Location":
+ if job.Location != nil {
+ location := *job.Location
+ result.Location = &location
+ }
+
+ // Set property "Name":
+ result.Name = resolved.Name
+
+ // Set property "Properties":
+ if job.Configuration != nil ||
+ job.EnvironmentReference != nil ||
+ job.Template != nil ||
+ job.WorkloadProfileName != nil {
+ result.Properties = &arm.Job_Properties_Spec{}
+ }
+ if job.Configuration != nil {
+ configuration_ARM, err := (*job.Configuration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ configuration := *configuration_ARM.(*arm.JobConfiguration)
+ result.Properties.Configuration = &configuration
+ }
+ if job.EnvironmentReference != nil {
+ environmentIdARMID, err := resolved.ResolvedReferences.Lookup(*job.EnvironmentReference)
+ if err != nil {
+ return nil, err
+ }
+ environmentId := environmentIdARMID
+ result.Properties.EnvironmentId = &environmentId
+ }
+ if job.Template != nil {
+ template_ARM, err := (*job.Template).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ template := *template_ARM.(*arm.JobTemplate)
+ result.Properties.Template = &template
+ }
+ if job.WorkloadProfileName != nil {
+ workloadProfileName := *job.WorkloadProfileName
+ result.Properties.WorkloadProfileName = &workloadProfileName
+ }
+
+ // Set property "Tags":
+ if job.Tags != nil {
+ result.Tags = make(map[string]string, len(job.Tags))
+ for key, value := range job.Tags {
+ result.Tags[key] = value
+ }
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (job *Job_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Job_Spec{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (job *Job_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Job_Spec)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Job_Spec, got %T", armInput)
+ }
+
+ // Set property "AzureName":
+ job.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name))
+
+ // Set property "Configuration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Configuration != nil {
+ var configuration1 JobConfiguration
+ err := configuration1.PopulateFromARM(owner, *typedInput.Properties.Configuration)
+ if err != nil {
+ return err
+ }
+ configuration := configuration1
+ job.Configuration = &configuration
+ }
+ }
+
+ // no assignment for property "EnvironmentReference"
+
+ // Set property "Identity":
+ if typedInput.Identity != nil {
+ var identity1 ManagedServiceIdentity
+ err := identity1.PopulateFromARM(owner, *typedInput.Identity)
+ if err != nil {
+ return err
+ }
+ identity := identity1
+ job.Identity = &identity
+ }
+
+ // Set property "Location":
+ if typedInput.Location != nil {
+ location := *typedInput.Location
+ job.Location = &location
+ }
+
+ // no assignment for property "OperatorSpec"
+
+ // Set property "Owner":
+ job.Owner = &genruntime.KnownResourceReference{
+ Name: owner.Name,
+ ARMID: owner.ARMID,
+ }
+
+ // Set property "Tags":
+ if typedInput.Tags != nil {
+ job.Tags = make(map[string]string, len(typedInput.Tags))
+ for key, value := range typedInput.Tags {
+ job.Tags[key] = value
+ }
+ }
+
+ // Set property "Template":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Template != nil {
+ var template1 JobTemplate
+ err := template1.PopulateFromARM(owner, *typedInput.Properties.Template)
+ if err != nil {
+ return err
+ }
+ template := template1
+ job.Template = &template
+ }
+ }
+
+ // Set property "WorkloadProfileName":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.WorkloadProfileName != nil {
+ workloadProfileName := *typedInput.Properties.WorkloadProfileName
+ job.WorkloadProfileName = &workloadProfileName
+ }
+ }
+
+ // No error
+ return nil
+}
+
+var _ genruntime.ConvertibleSpec = &Job_Spec{}
+
+// ConvertSpecFrom populates our Job_Spec from the provided source
+func (job *Job_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error {
+ src, ok := source.(*storage.Job_Spec)
+ if ok {
+ // Populate our instance from source
+ return job.AssignProperties_From_Job_Spec(src)
+ }
+
+ // Convert to an intermediate form
+ src = &storage.Job_Spec{}
+ err := src.ConvertSpecFrom(source)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertSpecFrom()")
+ }
+
+ // Update our instance from src
+ err = job.AssignProperties_From_Job_Spec(src)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertSpecFrom()")
+ }
+
+ return nil
+}
+
+// ConvertSpecTo populates the provided destination from our Job_Spec
+func (job *Job_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error {
+ dst, ok := destination.(*storage.Job_Spec)
+ if ok {
+ // Populate destination from our instance
+ return job.AssignProperties_To_Job_Spec(dst)
+ }
+
+ // Convert to an intermediate form
+ dst = &storage.Job_Spec{}
+ err := job.AssignProperties_To_Job_Spec(dst)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertSpecTo()")
+ }
+
+ // Update dst from our instance
+ err = dst.ConvertSpecTo(destination)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertSpecTo()")
+ }
+
+ return nil
+}
+
+// AssignProperties_From_Job_Spec populates our Job_Spec from the provided source Job_Spec
+func (job *Job_Spec) AssignProperties_From_Job_Spec(source *storage.Job_Spec) error {
+
+ // AzureName
+ job.AzureName = source.AzureName
+
+ // Configuration
+ if source.Configuration != nil {
+ var configuration JobConfiguration
+ err := configuration.AssignProperties_From_JobConfiguration(source.Configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobConfiguration() to populate field Configuration")
+ }
+ job.Configuration = &configuration
+ } else {
+ job.Configuration = nil
+ }
+
+ // EnvironmentReference
+ if source.EnvironmentReference != nil {
+ environmentReference := source.EnvironmentReference.Copy()
+ job.EnvironmentReference = &environmentReference
+ } else {
+ job.EnvironmentReference = nil
+ }
+
+ // Identity
+ if source.Identity != nil {
+ var identity ManagedServiceIdentity
+ err := identity.AssignProperties_From_ManagedServiceIdentity(source.Identity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedServiceIdentity() to populate field Identity")
+ }
+ job.Identity = &identity
+ } else {
+ job.Identity = nil
+ }
+
+ // Location
+ job.Location = genruntime.ClonePointerToString(source.Location)
+
+ // OperatorSpec
+ if source.OperatorSpec != nil {
+ var operatorSpec JobOperatorSpec
+ err := operatorSpec.AssignProperties_From_JobOperatorSpec(source.OperatorSpec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobOperatorSpec() to populate field OperatorSpec")
+ }
+ job.OperatorSpec = &operatorSpec
+ } else {
+ job.OperatorSpec = nil
+ }
+
+ // Owner
+ if source.Owner != nil {
+ owner := source.Owner.Copy()
+ job.Owner = &owner
+ } else {
+ job.Owner = nil
+ }
+
+ // Tags
+ job.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // Template
+ if source.Template != nil {
+ var template JobTemplate
+ err := template.AssignProperties_From_JobTemplate(source.Template)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobTemplate() to populate field Template")
+ }
+ job.Template = &template
+ } else {
+ job.Template = nil
+ }
+
+ // WorkloadProfileName
+ job.WorkloadProfileName = genruntime.ClonePointerToString(source.WorkloadProfileName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Job_Spec populates the provided destination Job_Spec from our Job_Spec
+func (job *Job_Spec) AssignProperties_To_Job_Spec(destination *storage.Job_Spec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AzureName
+ destination.AzureName = job.AzureName
+
+ // Configuration
+ if job.Configuration != nil {
+ var configuration storage.JobConfiguration
+ err := job.Configuration.AssignProperties_To_JobConfiguration(&configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobConfiguration() to populate field Configuration")
+ }
+ destination.Configuration = &configuration
+ } else {
+ destination.Configuration = nil
+ }
+
+ // EnvironmentReference
+ if job.EnvironmentReference != nil {
+ environmentReference := job.EnvironmentReference.Copy()
+ destination.EnvironmentReference = &environmentReference
+ } else {
+ destination.EnvironmentReference = nil
+ }
+
+ // Identity
+ if job.Identity != nil {
+ var identity storage.ManagedServiceIdentity
+ err := job.Identity.AssignProperties_To_ManagedServiceIdentity(&identity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedServiceIdentity() to populate field Identity")
+ }
+ destination.Identity = &identity
+ } else {
+ destination.Identity = nil
+ }
+
+ // Location
+ destination.Location = genruntime.ClonePointerToString(job.Location)
+
+ // OperatorSpec
+ if job.OperatorSpec != nil {
+ var operatorSpec storage.JobOperatorSpec
+ err := job.OperatorSpec.AssignProperties_To_JobOperatorSpec(&operatorSpec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobOperatorSpec() to populate field OperatorSpec")
+ }
+ destination.OperatorSpec = &operatorSpec
+ } else {
+ destination.OperatorSpec = nil
+ }
+
+ // OriginalVersion
+ destination.OriginalVersion = job.OriginalVersion()
+
+ // Owner
+ if job.Owner != nil {
+ owner := job.Owner.Copy()
+ destination.Owner = &owner
+ } else {
+ destination.Owner = nil
+ }
+
+ // Tags
+ destination.Tags = genruntime.CloneMapOfStringToString(job.Tags)
+
+ // Template
+ if job.Template != nil {
+ var template storage.JobTemplate
+ err := job.Template.AssignProperties_To_JobTemplate(&template)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobTemplate() to populate field Template")
+ }
+ destination.Template = &template
+ } else {
+ destination.Template = nil
+ }
+
+ // WorkloadProfileName
+ destination.WorkloadProfileName = genruntime.ClonePointerToString(job.WorkloadProfileName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Job_STATUS populates our Job_Spec from the provided source Job_STATUS
+func (job *Job_Spec) Initialize_From_Job_STATUS(source *Job_STATUS) error {
+
+ // Configuration
+ if source.Configuration != nil {
+ var configuration JobConfiguration
+ err := configuration.Initialize_From_JobConfiguration_STATUS(source.Configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_JobConfiguration_STATUS() to populate field Configuration")
+ }
+ job.Configuration = &configuration
+ } else {
+ job.Configuration = nil
+ }
+
+ // EnvironmentReference
+ if source.EnvironmentId != nil {
+ environmentReference := genruntime.CreateResourceReferenceFromARMID(*source.EnvironmentId)
+ job.EnvironmentReference = &environmentReference
+ } else {
+ job.EnvironmentReference = nil
+ }
+
+ // Identity
+ if source.Identity != nil {
+ var identity ManagedServiceIdentity
+ err := identity.Initialize_From_ManagedServiceIdentity_STATUS(source.Identity)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ManagedServiceIdentity_STATUS() to populate field Identity")
+ }
+ job.Identity = &identity
+ } else {
+ job.Identity = nil
+ }
+
+ // Location
+ job.Location = genruntime.ClonePointerToString(source.Location)
+
+ // Tags
+ job.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // Template
+ if source.Template != nil {
+ var template JobTemplate
+ err := template.Initialize_From_JobTemplate_STATUS(source.Template)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_JobTemplate_STATUS() to populate field Template")
+ }
+ job.Template = &template
+ } else {
+ job.Template = nil
+ }
+
+ // WorkloadProfileName
+ job.WorkloadProfileName = genruntime.ClonePointerToString(source.WorkloadProfileName)
+
+ // No error
+ return nil
+}
+
+// OriginalVersion returns the original API version used to create the resource.
+func (job *Job_Spec) OriginalVersion() string {
+ return GroupVersion.Version
+}
+
+// SetAzureName sets the Azure name of the resource
+func (job *Job_Spec) SetAzureName(azureName string) { job.AzureName = azureName }
+
+// Container App Job
+type Job_STATUS struct {
+ // Conditions: The observed state of the resource
+ Conditions []conditions.Condition `json:"conditions,omitempty"`
+
+ // Configuration: Container Apps Job configuration properties.
+ Configuration *JobConfiguration_STATUS `json:"configuration,omitempty"`
+
+ // EnvironmentId: Resource ID of environment.
+ EnvironmentId *string `json:"environmentId,omitempty"`
+
+ // EventStreamEndpoint: The endpoint of the eventstream of the container apps job.
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+
+ // Id: Fully qualified resource ID for the resource. Ex -
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ Id *string `json:"id,omitempty"`
+
+ // Identity: Managed identities needed by a container app job to interact with other Azure services to not maintain any
+ // secrets or credentials in code.
+ Identity *ManagedServiceIdentity_STATUS `json:"identity,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"`
+
+ // OutboundIpAddresses: Outbound IP Addresses of a container apps job.
+ OutboundIpAddresses []string `json:"outboundIpAddresses,omitempty"`
+
+ // ProvisioningState: Provisioning state of the Container Apps Job.
+ ProvisioningState *Job_Properties_ProvisioningState_STATUS `json:"provisioningState,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"`
+
+ // Template: Container Apps job definition.
+ Template *JobTemplate_STATUS `json:"template,omitempty"`
+
+ // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
+ Type *string `json:"type,omitempty"`
+
+ // WorkloadProfileName: Workload profile name to pin for container apps job execution.
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+var _ genruntime.ConvertibleStatus = &Job_STATUS{}
+
+// ConvertStatusFrom populates our Job_STATUS from the provided source
+func (job *Job_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error {
+ src, ok := source.(*storage.Job_STATUS)
+ if ok {
+ // Populate our instance from source
+ return job.AssignProperties_From_Job_STATUS(src)
+ }
+
+ // Convert to an intermediate form
+ src = &storage.Job_STATUS{}
+ err := src.ConvertStatusFrom(source)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertStatusFrom()")
+ }
+
+ // Update our instance from src
+ err = job.AssignProperties_From_Job_STATUS(src)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertStatusFrom()")
+ }
+
+ return nil
+}
+
+// ConvertStatusTo populates the provided destination from our Job_STATUS
+func (job *Job_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error {
+ dst, ok := destination.(*storage.Job_STATUS)
+ if ok {
+ // Populate destination from our instance
+ return job.AssignProperties_To_Job_STATUS(dst)
+ }
+
+ // Convert to an intermediate form
+ dst = &storage.Job_STATUS{}
+ err := job.AssignProperties_To_Job_STATUS(dst)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertStatusTo()")
+ }
+
+ // Update dst from our instance
+ err = dst.ConvertStatusTo(destination)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertStatusTo()")
+ }
+
+ return nil
+}
+
+var _ genruntime.FromARMConverter = &Job_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (job *Job_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Job_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (job *Job_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Job_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Job_STATUS, got %T", armInput)
+ }
+
+ // no assignment for property "Conditions"
+
+ // Set property "Configuration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Configuration != nil {
+ var configuration1 JobConfiguration_STATUS
+ err := configuration1.PopulateFromARM(owner, *typedInput.Properties.Configuration)
+ if err != nil {
+ return err
+ }
+ configuration := configuration1
+ job.Configuration = &configuration
+ }
+ }
+
+ // Set property "EnvironmentId":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.EnvironmentId != nil {
+ environmentId := *typedInput.Properties.EnvironmentId
+ job.EnvironmentId = &environmentId
+ }
+ }
+
+ // Set property "EventStreamEndpoint":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.EventStreamEndpoint != nil {
+ eventStreamEndpoint := *typedInput.Properties.EventStreamEndpoint
+ job.EventStreamEndpoint = &eventStreamEndpoint
+ }
+ }
+
+ // Set property "Id":
+ if typedInput.Id != nil {
+ id := *typedInput.Id
+ job.Id = &id
+ }
+
+ // Set property "Identity":
+ if typedInput.Identity != nil {
+ var identity1 ManagedServiceIdentity_STATUS
+ err := identity1.PopulateFromARM(owner, *typedInput.Identity)
+ if err != nil {
+ return err
+ }
+ identity := identity1
+ job.Identity = &identity
+ }
+
+ // Set property "Location":
+ if typedInput.Location != nil {
+ location := *typedInput.Location
+ job.Location = &location
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ job.Name = &name
+ }
+
+ // Set property "OutboundIpAddresses":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ for _, item := range typedInput.Properties.OutboundIpAddresses {
+ job.OutboundIpAddresses = append(job.OutboundIpAddresses, item)
+ }
+ }
+
+ // Set property "ProvisioningState":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.ProvisioningState != nil {
+ var temp string
+ temp = string(*typedInput.Properties.ProvisioningState)
+ provisioningState := Job_Properties_ProvisioningState_STATUS(temp)
+ job.ProvisioningState = &provisioningState
+ }
+ }
+
+ // Set property "SystemData":
+ if typedInput.SystemData != nil {
+ var systemData1 SystemData_STATUS
+ err := systemData1.PopulateFromARM(owner, *typedInput.SystemData)
+ if err != nil {
+ return err
+ }
+ systemData := systemData1
+ job.SystemData = &systemData
+ }
+
+ // Set property "Tags":
+ if typedInput.Tags != nil {
+ job.Tags = make(map[string]string, len(typedInput.Tags))
+ for key, value := range typedInput.Tags {
+ job.Tags[key] = value
+ }
+ }
+
+ // Set property "Template":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.Template != nil {
+ var template1 JobTemplate_STATUS
+ err := template1.PopulateFromARM(owner, *typedInput.Properties.Template)
+ if err != nil {
+ return err
+ }
+ template := template1
+ job.Template = &template
+ }
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ job.Type = &typeVar
+ }
+
+ // Set property "WorkloadProfileName":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.WorkloadProfileName != nil {
+ workloadProfileName := *typedInput.Properties.WorkloadProfileName
+ job.WorkloadProfileName = &workloadProfileName
+ }
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Job_STATUS populates our Job_STATUS from the provided source Job_STATUS
+func (job *Job_STATUS) AssignProperties_From_Job_STATUS(source *storage.Job_STATUS) error {
+
+ // Conditions
+ job.Conditions = genruntime.CloneSliceOfCondition(source.Conditions)
+
+ // Configuration
+ if source.Configuration != nil {
+ var configuration JobConfiguration_STATUS
+ err := configuration.AssignProperties_From_JobConfiguration_STATUS(source.Configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobConfiguration_STATUS() to populate field Configuration")
+ }
+ job.Configuration = &configuration
+ } else {
+ job.Configuration = nil
+ }
+
+ // EnvironmentId
+ job.EnvironmentId = genruntime.ClonePointerToString(source.EnvironmentId)
+
+ // EventStreamEndpoint
+ job.EventStreamEndpoint = genruntime.ClonePointerToString(source.EventStreamEndpoint)
+
+ // Id
+ job.Id = genruntime.ClonePointerToString(source.Id)
+
+ // Identity
+ if source.Identity != nil {
+ var identity ManagedServiceIdentity_STATUS
+ err := identity.AssignProperties_From_ManagedServiceIdentity_STATUS(source.Identity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedServiceIdentity_STATUS() to populate field Identity")
+ }
+ job.Identity = &identity
+ } else {
+ job.Identity = nil
+ }
+
+ // Location
+ job.Location = genruntime.ClonePointerToString(source.Location)
+
+ // Name
+ job.Name = genruntime.ClonePointerToString(source.Name)
+
+ // OutboundIpAddresses
+ job.OutboundIpAddresses = genruntime.CloneSliceOfString(source.OutboundIpAddresses)
+
+ // ProvisioningState
+ if source.ProvisioningState != nil {
+ provisioningState := *source.ProvisioningState
+ provisioningStateTemp := genruntime.ToEnum(provisioningState, job_Properties_ProvisioningState_STATUS_Values)
+ job.ProvisioningState = &provisioningStateTemp
+ } else {
+ job.ProvisioningState = nil
+ }
+
+ // SystemData
+ if source.SystemData != nil {
+ var systemDatum SystemData_STATUS
+ err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData")
+ }
+ job.SystemData = &systemDatum
+ } else {
+ job.SystemData = nil
+ }
+
+ // Tags
+ job.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // Template
+ if source.Template != nil {
+ var template JobTemplate_STATUS
+ err := template.AssignProperties_From_JobTemplate_STATUS(source.Template)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobTemplate_STATUS() to populate field Template")
+ }
+ job.Template = &template
+ } else {
+ job.Template = nil
+ }
+
+ // Type
+ job.Type = genruntime.ClonePointerToString(source.Type)
+
+ // WorkloadProfileName
+ job.WorkloadProfileName = genruntime.ClonePointerToString(source.WorkloadProfileName)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Job_STATUS populates the provided destination Job_STATUS from our Job_STATUS
+func (job *Job_STATUS) AssignProperties_To_Job_STATUS(destination *storage.Job_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Conditions
+ destination.Conditions = genruntime.CloneSliceOfCondition(job.Conditions)
+
+ // Configuration
+ if job.Configuration != nil {
+ var configuration storage.JobConfiguration_STATUS
+ err := job.Configuration.AssignProperties_To_JobConfiguration_STATUS(&configuration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobConfiguration_STATUS() to populate field Configuration")
+ }
+ destination.Configuration = &configuration
+ } else {
+ destination.Configuration = nil
+ }
+
+ // EnvironmentId
+ destination.EnvironmentId = genruntime.ClonePointerToString(job.EnvironmentId)
+
+ // EventStreamEndpoint
+ destination.EventStreamEndpoint = genruntime.ClonePointerToString(job.EventStreamEndpoint)
+
+ // Id
+ destination.Id = genruntime.ClonePointerToString(job.Id)
+
+ // Identity
+ if job.Identity != nil {
+ var identity storage.ManagedServiceIdentity_STATUS
+ err := job.Identity.AssignProperties_To_ManagedServiceIdentity_STATUS(&identity)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedServiceIdentity_STATUS() to populate field Identity")
+ }
+ destination.Identity = &identity
+ } else {
+ destination.Identity = nil
+ }
+
+ // Location
+ destination.Location = genruntime.ClonePointerToString(job.Location)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(job.Name)
+
+ // OutboundIpAddresses
+ destination.OutboundIpAddresses = genruntime.CloneSliceOfString(job.OutboundIpAddresses)
+
+ // ProvisioningState
+ if job.ProvisioningState != nil {
+ provisioningState := string(*job.ProvisioningState)
+ destination.ProvisioningState = &provisioningState
+ } else {
+ destination.ProvisioningState = nil
+ }
+
+ // SystemData
+ if job.SystemData != nil {
+ var systemDatum storage.SystemData_STATUS
+ err := job.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData")
+ }
+ destination.SystemData = &systemDatum
+ } else {
+ destination.SystemData = nil
+ }
+
+ // Tags
+ destination.Tags = genruntime.CloneMapOfStringToString(job.Tags)
+
+ // Template
+ if job.Template != nil {
+ var template storage.JobTemplate_STATUS
+ err := job.Template.AssignProperties_To_JobTemplate_STATUS(&template)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobTemplate_STATUS() to populate field Template")
+ }
+ destination.Template = &template
+ } else {
+ destination.Template = nil
+ }
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(job.Type)
+
+ // WorkloadProfileName
+ destination.WorkloadProfileName = genruntime.ClonePointerToString(job.WorkloadProfileName)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type Job_Properties_ProvisioningState_STATUS string
+
+const (
+ Job_Properties_ProvisioningState_STATUS_Canceled = Job_Properties_ProvisioningState_STATUS("Canceled")
+ Job_Properties_ProvisioningState_STATUS_Deleting = Job_Properties_ProvisioningState_STATUS("Deleting")
+ Job_Properties_ProvisioningState_STATUS_Failed = Job_Properties_ProvisioningState_STATUS("Failed")
+ Job_Properties_ProvisioningState_STATUS_InProgress = Job_Properties_ProvisioningState_STATUS("InProgress")
+ Job_Properties_ProvisioningState_STATUS_Succeeded = Job_Properties_ProvisioningState_STATUS("Succeeded")
+)
+
+// Mapping from string to Job_Properties_ProvisioningState_STATUS
+var job_Properties_ProvisioningState_STATUS_Values = map[string]Job_Properties_ProvisioningState_STATUS{
+ "canceled": Job_Properties_ProvisioningState_STATUS_Canceled,
+ "deleting": Job_Properties_ProvisioningState_STATUS_Deleting,
+ "failed": Job_Properties_ProvisioningState_STATUS_Failed,
+ "inprogress": Job_Properties_ProvisioningState_STATUS_InProgress,
+ "succeeded": Job_Properties_ProvisioningState_STATUS_Succeeded,
+}
+
+// Non versioned Container Apps Job configuration properties
+type JobConfiguration struct {
+ // EventTriggerConfig: Trigger configuration of an event driven job.
+ EventTriggerConfig *JobConfiguration_EventTriggerConfig `json:"eventTriggerConfig,omitempty"`
+
+ // ManualTriggerConfig: Manual trigger configuration for a single execution job. Properties replicaCompletionCount and
+ // parallelism would be set to 1 by default
+ ManualTriggerConfig *JobConfiguration_ManualTriggerConfig `json:"manualTriggerConfig,omitempty"`
+
+ // Registries: Collection of private container registry credentials used by a Container apps job
+ Registries []RegistryCredentials `json:"registries,omitempty"`
+
+ // ReplicaRetryLimit: Maximum number of retries before failing the job.
+ ReplicaRetryLimit *int `json:"replicaRetryLimit,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // ReplicaTimeout: Maximum number of seconds a replica is allowed to run.
+ ReplicaTimeout *int `json:"replicaTimeout,omitempty"`
+
+ // ScheduleTriggerConfig: Cron formatted repeating trigger schedule ("* * * * *") for cronjobs. Properties completions and
+ // parallelism would be set to 1 by default
+ ScheduleTriggerConfig *JobConfiguration_ScheduleTriggerConfig `json:"scheduleTriggerConfig,omitempty"`
+
+ // Secrets: Collection of secrets used by a Container Apps Job
+ Secrets []Secret `json:"secrets,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // TriggerType: Trigger type of the job
+ TriggerType *JobConfiguration_TriggerType `json:"triggerType,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &JobConfiguration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (configuration *JobConfiguration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if configuration == nil {
+ return nil, nil
+ }
+ result := &arm.JobConfiguration{}
+
+ // Set property "EventTriggerConfig":
+ if configuration.EventTriggerConfig != nil {
+ eventTriggerConfig_ARM, err := (*configuration.EventTriggerConfig).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ eventTriggerConfig := *eventTriggerConfig_ARM.(*arm.JobConfiguration_EventTriggerConfig)
+ result.EventTriggerConfig = &eventTriggerConfig
+ }
+
+ // Set property "ManualTriggerConfig":
+ if configuration.ManualTriggerConfig != nil {
+ manualTriggerConfig_ARM, err := (*configuration.ManualTriggerConfig).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ manualTriggerConfig := *manualTriggerConfig_ARM.(*arm.JobConfiguration_ManualTriggerConfig)
+ result.ManualTriggerConfig = &manualTriggerConfig
+ }
+
+ // Set property "Registries":
+ for _, item := range configuration.Registries {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Registries = append(result.Registries, *item_ARM.(*arm.RegistryCredentials))
+ }
+
+ // Set property "ReplicaRetryLimit":
+ if configuration.ReplicaRetryLimit != nil {
+ replicaRetryLimit := *configuration.ReplicaRetryLimit
+ result.ReplicaRetryLimit = &replicaRetryLimit
+ }
+
+ // Set property "ReplicaTimeout":
+ if configuration.ReplicaTimeout != nil {
+ replicaTimeout := *configuration.ReplicaTimeout
+ result.ReplicaTimeout = &replicaTimeout
+ }
+
+ // Set property "ScheduleTriggerConfig":
+ if configuration.ScheduleTriggerConfig != nil {
+ scheduleTriggerConfig_ARM, err := (*configuration.ScheduleTriggerConfig).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ scheduleTriggerConfig := *scheduleTriggerConfig_ARM.(*arm.JobConfiguration_ScheduleTriggerConfig)
+ result.ScheduleTriggerConfig = &scheduleTriggerConfig
+ }
+
+ // Set property "Secrets":
+ for _, item := range configuration.Secrets {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Secrets = append(result.Secrets, *item_ARM.(*arm.Secret))
+ }
+
+ // Set property "TriggerType":
+ if configuration.TriggerType != nil {
+ var temp string
+ temp = string(*configuration.TriggerType)
+ triggerType := arm.JobConfiguration_TriggerType(temp)
+ result.TriggerType = &triggerType
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *JobConfiguration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobConfiguration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *JobConfiguration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobConfiguration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobConfiguration, got %T", armInput)
+ }
+
+ // Set property "EventTriggerConfig":
+ if typedInput.EventTriggerConfig != nil {
+ var eventTriggerConfig1 JobConfiguration_EventTriggerConfig
+ err := eventTriggerConfig1.PopulateFromARM(owner, *typedInput.EventTriggerConfig)
+ if err != nil {
+ return err
+ }
+ eventTriggerConfig := eventTriggerConfig1
+ configuration.EventTriggerConfig = &eventTriggerConfig
+ }
+
+ // Set property "ManualTriggerConfig":
+ if typedInput.ManualTriggerConfig != nil {
+ var manualTriggerConfig1 JobConfiguration_ManualTriggerConfig
+ err := manualTriggerConfig1.PopulateFromARM(owner, *typedInput.ManualTriggerConfig)
+ if err != nil {
+ return err
+ }
+ manualTriggerConfig := manualTriggerConfig1
+ configuration.ManualTriggerConfig = &manualTriggerConfig
+ }
+
+ // Set property "Registries":
+ for _, item := range typedInput.Registries {
+ var item1 RegistryCredentials
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ configuration.Registries = append(configuration.Registries, item1)
+ }
+
+ // Set property "ReplicaRetryLimit":
+ if typedInput.ReplicaRetryLimit != nil {
+ replicaRetryLimit := *typedInput.ReplicaRetryLimit
+ configuration.ReplicaRetryLimit = &replicaRetryLimit
+ }
+
+ // Set property "ReplicaTimeout":
+ if typedInput.ReplicaTimeout != nil {
+ replicaTimeout := *typedInput.ReplicaTimeout
+ configuration.ReplicaTimeout = &replicaTimeout
+ }
+
+ // Set property "ScheduleTriggerConfig":
+ if typedInput.ScheduleTriggerConfig != nil {
+ var scheduleTriggerConfig1 JobConfiguration_ScheduleTriggerConfig
+ err := scheduleTriggerConfig1.PopulateFromARM(owner, *typedInput.ScheduleTriggerConfig)
+ if err != nil {
+ return err
+ }
+ scheduleTriggerConfig := scheduleTriggerConfig1
+ configuration.ScheduleTriggerConfig = &scheduleTriggerConfig
+ }
+
+ // Set property "Secrets":
+ for _, item := range typedInput.Secrets {
+ var item1 Secret
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ configuration.Secrets = append(configuration.Secrets, item1)
+ }
+
+ // Set property "TriggerType":
+ if typedInput.TriggerType != nil {
+ var temp string
+ temp = string(*typedInput.TriggerType)
+ triggerType := JobConfiguration_TriggerType(temp)
+ configuration.TriggerType = &triggerType
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobConfiguration populates our JobConfiguration from the provided source JobConfiguration
+func (configuration *JobConfiguration) AssignProperties_From_JobConfiguration(source *storage.JobConfiguration) error {
+
+ // EventTriggerConfig
+ if source.EventTriggerConfig != nil {
+ var eventTriggerConfig JobConfiguration_EventTriggerConfig
+ err := eventTriggerConfig.AssignProperties_From_JobConfiguration_EventTriggerConfig(source.EventTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobConfiguration_EventTriggerConfig() to populate field EventTriggerConfig")
+ }
+ configuration.EventTriggerConfig = &eventTriggerConfig
+ } else {
+ configuration.EventTriggerConfig = nil
+ }
+
+ // ManualTriggerConfig
+ if source.ManualTriggerConfig != nil {
+ var manualTriggerConfig JobConfiguration_ManualTriggerConfig
+ err := manualTriggerConfig.AssignProperties_From_JobConfiguration_ManualTriggerConfig(source.ManualTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobConfiguration_ManualTriggerConfig() to populate field ManualTriggerConfig")
+ }
+ configuration.ManualTriggerConfig = &manualTriggerConfig
+ } else {
+ configuration.ManualTriggerConfig = nil
+ }
+
+ // Registries
+ if source.Registries != nil {
+ registryList := make([]RegistryCredentials, len(source.Registries))
+ for registryIndex, registryItem := range source.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry RegistryCredentials
+ err := registry.AssignProperties_From_RegistryCredentials(®istryItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_RegistryCredentials() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ configuration.Registries = registryList
+ } else {
+ configuration.Registries = nil
+ }
+
+ // ReplicaRetryLimit
+ configuration.ReplicaRetryLimit = genruntime.ClonePointerToInt(source.ReplicaRetryLimit)
+
+ // ReplicaTimeout
+ configuration.ReplicaTimeout = genruntime.ClonePointerToInt(source.ReplicaTimeout)
+
+ // ScheduleTriggerConfig
+ if source.ScheduleTriggerConfig != nil {
+ var scheduleTriggerConfig JobConfiguration_ScheduleTriggerConfig
+ err := scheduleTriggerConfig.AssignProperties_From_JobConfiguration_ScheduleTriggerConfig(source.ScheduleTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobConfiguration_ScheduleTriggerConfig() to populate field ScheduleTriggerConfig")
+ }
+ configuration.ScheduleTriggerConfig = &scheduleTriggerConfig
+ } else {
+ configuration.ScheduleTriggerConfig = nil
+ }
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]Secret, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret Secret
+ err := secret.AssignProperties_From_Secret(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Secret() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ configuration.Secrets = secretList
+ } else {
+ configuration.Secrets = nil
+ }
+
+ // TriggerType
+ if source.TriggerType != nil {
+ triggerType := *source.TriggerType
+ triggerTypeTemp := genruntime.ToEnum(triggerType, jobConfiguration_TriggerType_Values)
+ configuration.TriggerType = &triggerTypeTemp
+ } else {
+ configuration.TriggerType = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobConfiguration populates the provided destination JobConfiguration from our JobConfiguration
+func (configuration *JobConfiguration) AssignProperties_To_JobConfiguration(destination *storage.JobConfiguration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // EventTriggerConfig
+ if configuration.EventTriggerConfig != nil {
+ var eventTriggerConfig storage.JobConfiguration_EventTriggerConfig
+ err := configuration.EventTriggerConfig.AssignProperties_To_JobConfiguration_EventTriggerConfig(&eventTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobConfiguration_EventTriggerConfig() to populate field EventTriggerConfig")
+ }
+ destination.EventTriggerConfig = &eventTriggerConfig
+ } else {
+ destination.EventTriggerConfig = nil
+ }
+
+ // ManualTriggerConfig
+ if configuration.ManualTriggerConfig != nil {
+ var manualTriggerConfig storage.JobConfiguration_ManualTriggerConfig
+ err := configuration.ManualTriggerConfig.AssignProperties_To_JobConfiguration_ManualTriggerConfig(&manualTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobConfiguration_ManualTriggerConfig() to populate field ManualTriggerConfig")
+ }
+ destination.ManualTriggerConfig = &manualTriggerConfig
+ } else {
+ destination.ManualTriggerConfig = nil
+ }
+
+ // Registries
+ if configuration.Registries != nil {
+ registryList := make([]storage.RegistryCredentials, len(configuration.Registries))
+ for registryIndex, registryItem := range configuration.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry storage.RegistryCredentials
+ err := registryItem.AssignProperties_To_RegistryCredentials(®istry)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_RegistryCredentials() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ destination.Registries = registryList
+ } else {
+ destination.Registries = nil
+ }
+
+ // ReplicaRetryLimit
+ destination.ReplicaRetryLimit = genruntime.ClonePointerToInt(configuration.ReplicaRetryLimit)
+
+ // ReplicaTimeout
+ destination.ReplicaTimeout = genruntime.ClonePointerToInt(configuration.ReplicaTimeout)
+
+ // ScheduleTriggerConfig
+ if configuration.ScheduleTriggerConfig != nil {
+ var scheduleTriggerConfig storage.JobConfiguration_ScheduleTriggerConfig
+ err := configuration.ScheduleTriggerConfig.AssignProperties_To_JobConfiguration_ScheduleTriggerConfig(&scheduleTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobConfiguration_ScheduleTriggerConfig() to populate field ScheduleTriggerConfig")
+ }
+ destination.ScheduleTriggerConfig = &scheduleTriggerConfig
+ } else {
+ destination.ScheduleTriggerConfig = nil
+ }
+
+ // Secrets
+ if configuration.Secrets != nil {
+ secretList := make([]storage.Secret, len(configuration.Secrets))
+ for secretIndex, secretItem := range configuration.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret storage.Secret
+ err := secretItem.AssignProperties_To_Secret(&secret)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Secret() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ destination.Secrets = secretList
+ } else {
+ destination.Secrets = nil
+ }
+
+ // TriggerType
+ if configuration.TriggerType != nil {
+ triggerType := string(*configuration.TriggerType)
+ destination.TriggerType = &triggerType
+ } else {
+ destination.TriggerType = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_JobConfiguration_STATUS populates our JobConfiguration from the provided source JobConfiguration_STATUS
+func (configuration *JobConfiguration) Initialize_From_JobConfiguration_STATUS(source *JobConfiguration_STATUS) error {
+
+ // EventTriggerConfig
+ if source.EventTriggerConfig != nil {
+ var eventTriggerConfig JobConfiguration_EventTriggerConfig
+ err := eventTriggerConfig.Initialize_From_JobConfiguration_EventTriggerConfig_STATUS(source.EventTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_JobConfiguration_EventTriggerConfig_STATUS() to populate field EventTriggerConfig")
+ }
+ configuration.EventTriggerConfig = &eventTriggerConfig
+ } else {
+ configuration.EventTriggerConfig = nil
+ }
+
+ // ManualTriggerConfig
+ if source.ManualTriggerConfig != nil {
+ var manualTriggerConfig JobConfiguration_ManualTriggerConfig
+ err := manualTriggerConfig.Initialize_From_JobConfiguration_ManualTriggerConfig_STATUS(source.ManualTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_JobConfiguration_ManualTriggerConfig_STATUS() to populate field ManualTriggerConfig")
+ }
+ configuration.ManualTriggerConfig = &manualTriggerConfig
+ } else {
+ configuration.ManualTriggerConfig = nil
+ }
+
+ // Registries
+ if source.Registries != nil {
+ registryList := make([]RegistryCredentials, len(source.Registries))
+ for registryIndex, registryItem := range source.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry RegistryCredentials
+ err := registry.Initialize_From_RegistryCredentials_STATUS(®istryItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_RegistryCredentials_STATUS() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ configuration.Registries = registryList
+ } else {
+ configuration.Registries = nil
+ }
+
+ // ReplicaRetryLimit
+ configuration.ReplicaRetryLimit = genruntime.ClonePointerToInt(source.ReplicaRetryLimit)
+
+ // ReplicaTimeout
+ configuration.ReplicaTimeout = genruntime.ClonePointerToInt(source.ReplicaTimeout)
+
+ // ScheduleTriggerConfig
+ if source.ScheduleTriggerConfig != nil {
+ var scheduleTriggerConfig JobConfiguration_ScheduleTriggerConfig
+ err := scheduleTriggerConfig.Initialize_From_JobConfiguration_ScheduleTriggerConfig_STATUS(source.ScheduleTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_JobConfiguration_ScheduleTriggerConfig_STATUS() to populate field ScheduleTriggerConfig")
+ }
+ configuration.ScheduleTriggerConfig = &scheduleTriggerConfig
+ } else {
+ configuration.ScheduleTriggerConfig = nil
+ }
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]Secret, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret Secret
+ err := secret.Initialize_From_Secret_STATUS(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Secret_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ configuration.Secrets = secretList
+ } else {
+ configuration.Secrets = nil
+ }
+
+ // TriggerType
+ if source.TriggerType != nil {
+ triggerType := genruntime.ToEnum(string(*source.TriggerType), jobConfiguration_TriggerType_Values)
+ configuration.TriggerType = &triggerType
+ } else {
+ configuration.TriggerType = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Non versioned Container Apps Job configuration properties
+type JobConfiguration_STATUS struct {
+ // EventTriggerConfig: Trigger configuration of an event driven job.
+ EventTriggerConfig *JobConfiguration_EventTriggerConfig_STATUS `json:"eventTriggerConfig,omitempty"`
+
+ // ManualTriggerConfig: Manual trigger configuration for a single execution job. Properties replicaCompletionCount and
+ // parallelism would be set to 1 by default
+ ManualTriggerConfig *JobConfiguration_ManualTriggerConfig_STATUS `json:"manualTriggerConfig,omitempty"`
+
+ // Registries: Collection of private container registry credentials used by a Container apps job
+ Registries []RegistryCredentials_STATUS `json:"registries,omitempty"`
+
+ // ReplicaRetryLimit: Maximum number of retries before failing the job.
+ ReplicaRetryLimit *int `json:"replicaRetryLimit,omitempty"`
+
+ // ReplicaTimeout: Maximum number of seconds a replica is allowed to run.
+ ReplicaTimeout *int `json:"replicaTimeout,omitempty"`
+
+ // ScheduleTriggerConfig: Cron formatted repeating trigger schedule ("* * * * *") for cronjobs. Properties completions and
+ // parallelism would be set to 1 by default
+ ScheduleTriggerConfig *JobConfiguration_ScheduleTriggerConfig_STATUS `json:"scheduleTriggerConfig,omitempty"`
+
+ // Secrets: Collection of secrets used by a Container Apps Job
+ Secrets []Secret_STATUS `json:"secrets,omitempty"`
+
+ // TriggerType: Trigger type of the job
+ TriggerType *JobConfiguration_TriggerType_STATUS `json:"triggerType,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &JobConfiguration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *JobConfiguration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobConfiguration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *JobConfiguration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobConfiguration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobConfiguration_STATUS, got %T", armInput)
+ }
+
+ // Set property "EventTriggerConfig":
+ if typedInput.EventTriggerConfig != nil {
+ var eventTriggerConfig1 JobConfiguration_EventTriggerConfig_STATUS
+ err := eventTriggerConfig1.PopulateFromARM(owner, *typedInput.EventTriggerConfig)
+ if err != nil {
+ return err
+ }
+ eventTriggerConfig := eventTriggerConfig1
+ configuration.EventTriggerConfig = &eventTriggerConfig
+ }
+
+ // Set property "ManualTriggerConfig":
+ if typedInput.ManualTriggerConfig != nil {
+ var manualTriggerConfig1 JobConfiguration_ManualTriggerConfig_STATUS
+ err := manualTriggerConfig1.PopulateFromARM(owner, *typedInput.ManualTriggerConfig)
+ if err != nil {
+ return err
+ }
+ manualTriggerConfig := manualTriggerConfig1
+ configuration.ManualTriggerConfig = &manualTriggerConfig
+ }
+
+ // Set property "Registries":
+ for _, item := range typedInput.Registries {
+ var item1 RegistryCredentials_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ configuration.Registries = append(configuration.Registries, item1)
+ }
+
+ // Set property "ReplicaRetryLimit":
+ if typedInput.ReplicaRetryLimit != nil {
+ replicaRetryLimit := *typedInput.ReplicaRetryLimit
+ configuration.ReplicaRetryLimit = &replicaRetryLimit
+ }
+
+ // Set property "ReplicaTimeout":
+ if typedInput.ReplicaTimeout != nil {
+ replicaTimeout := *typedInput.ReplicaTimeout
+ configuration.ReplicaTimeout = &replicaTimeout
+ }
+
+ // Set property "ScheduleTriggerConfig":
+ if typedInput.ScheduleTriggerConfig != nil {
+ var scheduleTriggerConfig1 JobConfiguration_ScheduleTriggerConfig_STATUS
+ err := scheduleTriggerConfig1.PopulateFromARM(owner, *typedInput.ScheduleTriggerConfig)
+ if err != nil {
+ return err
+ }
+ scheduleTriggerConfig := scheduleTriggerConfig1
+ configuration.ScheduleTriggerConfig = &scheduleTriggerConfig
+ }
+
+ // Set property "Secrets":
+ for _, item := range typedInput.Secrets {
+ var item1 Secret_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ configuration.Secrets = append(configuration.Secrets, item1)
+ }
+
+ // Set property "TriggerType":
+ if typedInput.TriggerType != nil {
+ var temp string
+ temp = string(*typedInput.TriggerType)
+ triggerType := JobConfiguration_TriggerType_STATUS(temp)
+ configuration.TriggerType = &triggerType
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobConfiguration_STATUS populates our JobConfiguration_STATUS from the provided source JobConfiguration_STATUS
+func (configuration *JobConfiguration_STATUS) AssignProperties_From_JobConfiguration_STATUS(source *storage.JobConfiguration_STATUS) error {
+
+ // EventTriggerConfig
+ if source.EventTriggerConfig != nil {
+ var eventTriggerConfig JobConfiguration_EventTriggerConfig_STATUS
+ err := eventTriggerConfig.AssignProperties_From_JobConfiguration_EventTriggerConfig_STATUS(source.EventTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobConfiguration_EventTriggerConfig_STATUS() to populate field EventTriggerConfig")
+ }
+ configuration.EventTriggerConfig = &eventTriggerConfig
+ } else {
+ configuration.EventTriggerConfig = nil
+ }
+
+ // ManualTriggerConfig
+ if source.ManualTriggerConfig != nil {
+ var manualTriggerConfig JobConfiguration_ManualTriggerConfig_STATUS
+ err := manualTriggerConfig.AssignProperties_From_JobConfiguration_ManualTriggerConfig_STATUS(source.ManualTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobConfiguration_ManualTriggerConfig_STATUS() to populate field ManualTriggerConfig")
+ }
+ configuration.ManualTriggerConfig = &manualTriggerConfig
+ } else {
+ configuration.ManualTriggerConfig = nil
+ }
+
+ // Registries
+ if source.Registries != nil {
+ registryList := make([]RegistryCredentials_STATUS, len(source.Registries))
+ for registryIndex, registryItem := range source.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry RegistryCredentials_STATUS
+ err := registry.AssignProperties_From_RegistryCredentials_STATUS(®istryItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_RegistryCredentials_STATUS() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ configuration.Registries = registryList
+ } else {
+ configuration.Registries = nil
+ }
+
+ // ReplicaRetryLimit
+ configuration.ReplicaRetryLimit = genruntime.ClonePointerToInt(source.ReplicaRetryLimit)
+
+ // ReplicaTimeout
+ configuration.ReplicaTimeout = genruntime.ClonePointerToInt(source.ReplicaTimeout)
+
+ // ScheduleTriggerConfig
+ if source.ScheduleTriggerConfig != nil {
+ var scheduleTriggerConfig JobConfiguration_ScheduleTriggerConfig_STATUS
+ err := scheduleTriggerConfig.AssignProperties_From_JobConfiguration_ScheduleTriggerConfig_STATUS(source.ScheduleTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobConfiguration_ScheduleTriggerConfig_STATUS() to populate field ScheduleTriggerConfig")
+ }
+ configuration.ScheduleTriggerConfig = &scheduleTriggerConfig
+ } else {
+ configuration.ScheduleTriggerConfig = nil
+ }
+
+ // Secrets
+ if source.Secrets != nil {
+ secretList := make([]Secret_STATUS, len(source.Secrets))
+ for secretIndex, secretItem := range source.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret Secret_STATUS
+ err := secret.AssignProperties_From_Secret_STATUS(&secretItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Secret_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ configuration.Secrets = secretList
+ } else {
+ configuration.Secrets = nil
+ }
+
+ // TriggerType
+ if source.TriggerType != nil {
+ triggerType := *source.TriggerType
+ triggerTypeTemp := genruntime.ToEnum(triggerType, jobConfiguration_TriggerType_STATUS_Values)
+ configuration.TriggerType = &triggerTypeTemp
+ } else {
+ configuration.TriggerType = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobConfiguration_STATUS populates the provided destination JobConfiguration_STATUS from our JobConfiguration_STATUS
+func (configuration *JobConfiguration_STATUS) AssignProperties_To_JobConfiguration_STATUS(destination *storage.JobConfiguration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // EventTriggerConfig
+ if configuration.EventTriggerConfig != nil {
+ var eventTriggerConfig storage.JobConfiguration_EventTriggerConfig_STATUS
+ err := configuration.EventTriggerConfig.AssignProperties_To_JobConfiguration_EventTriggerConfig_STATUS(&eventTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobConfiguration_EventTriggerConfig_STATUS() to populate field EventTriggerConfig")
+ }
+ destination.EventTriggerConfig = &eventTriggerConfig
+ } else {
+ destination.EventTriggerConfig = nil
+ }
+
+ // ManualTriggerConfig
+ if configuration.ManualTriggerConfig != nil {
+ var manualTriggerConfig storage.JobConfiguration_ManualTriggerConfig_STATUS
+ err := configuration.ManualTriggerConfig.AssignProperties_To_JobConfiguration_ManualTriggerConfig_STATUS(&manualTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobConfiguration_ManualTriggerConfig_STATUS() to populate field ManualTriggerConfig")
+ }
+ destination.ManualTriggerConfig = &manualTriggerConfig
+ } else {
+ destination.ManualTriggerConfig = nil
+ }
+
+ // Registries
+ if configuration.Registries != nil {
+ registryList := make([]storage.RegistryCredentials_STATUS, len(configuration.Registries))
+ for registryIndex, registryItem := range configuration.Registries {
+ // Shadow the loop variable to avoid aliasing
+ registryItem := registryItem
+ var registry storage.RegistryCredentials_STATUS
+ err := registryItem.AssignProperties_To_RegistryCredentials_STATUS(®istry)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_RegistryCredentials_STATUS() to populate field Registries")
+ }
+ registryList[registryIndex] = registry
+ }
+ destination.Registries = registryList
+ } else {
+ destination.Registries = nil
+ }
+
+ // ReplicaRetryLimit
+ destination.ReplicaRetryLimit = genruntime.ClonePointerToInt(configuration.ReplicaRetryLimit)
+
+ // ReplicaTimeout
+ destination.ReplicaTimeout = genruntime.ClonePointerToInt(configuration.ReplicaTimeout)
+
+ // ScheduleTriggerConfig
+ if configuration.ScheduleTriggerConfig != nil {
+ var scheduleTriggerConfig storage.JobConfiguration_ScheduleTriggerConfig_STATUS
+ err := configuration.ScheduleTriggerConfig.AssignProperties_To_JobConfiguration_ScheduleTriggerConfig_STATUS(&scheduleTriggerConfig)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobConfiguration_ScheduleTriggerConfig_STATUS() to populate field ScheduleTriggerConfig")
+ }
+ destination.ScheduleTriggerConfig = &scheduleTriggerConfig
+ } else {
+ destination.ScheduleTriggerConfig = nil
+ }
+
+ // Secrets
+ if configuration.Secrets != nil {
+ secretList := make([]storage.Secret_STATUS, len(configuration.Secrets))
+ for secretIndex, secretItem := range configuration.Secrets {
+ // Shadow the loop variable to avoid aliasing
+ secretItem := secretItem
+ var secret storage.Secret_STATUS
+ err := secretItem.AssignProperties_To_Secret_STATUS(&secret)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Secret_STATUS() to populate field Secrets")
+ }
+ secretList[secretIndex] = secret
+ }
+ destination.Secrets = secretList
+ } else {
+ destination.Secrets = nil
+ }
+
+ // TriggerType
+ if configuration.TriggerType != nil {
+ triggerType := string(*configuration.TriggerType)
+ destination.TriggerType = &triggerType
+ } else {
+ destination.TriggerType = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure
+type JobOperatorSpec struct {
+ // ConfigMapExpressions: configures where to place operator written dynamic ConfigMaps (created with CEL expressions).
+ ConfigMapExpressions []*core.DestinationExpression `json:"configMapExpressions,omitempty"`
+
+ // SecretExpressions: configures where to place operator written dynamic secrets (created with CEL expressions).
+ SecretExpressions []*core.DestinationExpression `json:"secretExpressions,omitempty"`
+}
+
+// AssignProperties_From_JobOperatorSpec populates our JobOperatorSpec from the provided source JobOperatorSpec
+func (operator *JobOperatorSpec) AssignProperties_From_JobOperatorSpec(source *storage.JobOperatorSpec) error {
+
+ // ConfigMapExpressions
+ if source.ConfigMapExpressions != nil {
+ configMapExpressionList := make([]*core.DestinationExpression, len(source.ConfigMapExpressions))
+ for configMapExpressionIndex, configMapExpressionItem := range source.ConfigMapExpressions {
+ // Shadow the loop variable to avoid aliasing
+ configMapExpressionItem := configMapExpressionItem
+ if configMapExpressionItem != nil {
+ configMapExpression := *configMapExpressionItem.DeepCopy()
+ configMapExpressionList[configMapExpressionIndex] = &configMapExpression
+ } else {
+ configMapExpressionList[configMapExpressionIndex] = nil
+ }
+ }
+ operator.ConfigMapExpressions = configMapExpressionList
+ } else {
+ operator.ConfigMapExpressions = nil
+ }
+
+ // SecretExpressions
+ if source.SecretExpressions != nil {
+ secretExpressionList := make([]*core.DestinationExpression, len(source.SecretExpressions))
+ for secretExpressionIndex, secretExpressionItem := range source.SecretExpressions {
+ // Shadow the loop variable to avoid aliasing
+ secretExpressionItem := secretExpressionItem
+ if secretExpressionItem != nil {
+ secretExpression := *secretExpressionItem.DeepCopy()
+ secretExpressionList[secretExpressionIndex] = &secretExpression
+ } else {
+ secretExpressionList[secretExpressionIndex] = nil
+ }
+ }
+ operator.SecretExpressions = secretExpressionList
+ } else {
+ operator.SecretExpressions = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobOperatorSpec populates the provided destination JobOperatorSpec from our JobOperatorSpec
+func (operator *JobOperatorSpec) AssignProperties_To_JobOperatorSpec(destination *storage.JobOperatorSpec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ConfigMapExpressions
+ if operator.ConfigMapExpressions != nil {
+ configMapExpressionList := make([]*core.DestinationExpression, len(operator.ConfigMapExpressions))
+ for configMapExpressionIndex, configMapExpressionItem := range operator.ConfigMapExpressions {
+ // Shadow the loop variable to avoid aliasing
+ configMapExpressionItem := configMapExpressionItem
+ if configMapExpressionItem != nil {
+ configMapExpression := *configMapExpressionItem.DeepCopy()
+ configMapExpressionList[configMapExpressionIndex] = &configMapExpression
+ } else {
+ configMapExpressionList[configMapExpressionIndex] = nil
+ }
+ }
+ destination.ConfigMapExpressions = configMapExpressionList
+ } else {
+ destination.ConfigMapExpressions = nil
+ }
+
+ // SecretExpressions
+ if operator.SecretExpressions != nil {
+ secretExpressionList := make([]*core.DestinationExpression, len(operator.SecretExpressions))
+ for secretExpressionIndex, secretExpressionItem := range operator.SecretExpressions {
+ // Shadow the loop variable to avoid aliasing
+ secretExpressionItem := secretExpressionItem
+ if secretExpressionItem != nil {
+ secretExpression := *secretExpressionItem.DeepCopy()
+ secretExpressionList[secretExpressionIndex] = &secretExpression
+ } else {
+ secretExpressionList[secretExpressionIndex] = nil
+ }
+ }
+ destination.SecretExpressions = secretExpressionList
+ } else {
+ destination.SecretExpressions = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container Apps Job versioned application definition. Defines the desired state of an immutable revision. Any changes to
+// this section Will result in a new revision being created
+type JobTemplate struct {
+ // Containers: List of container definitions for the Container App.
+ Containers []Container `json:"containers,omitempty"`
+
+ // InitContainers: List of specialized containers that run before app containers.
+ InitContainers []BaseContainer `json:"initContainers,omitempty"`
+
+ // Volumes: List of volume definitions for the Container App.
+ Volumes []Volume `json:"volumes,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &JobTemplate{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (template *JobTemplate) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if template == nil {
+ return nil, nil
+ }
+ result := &arm.JobTemplate{}
+
+ // Set property "Containers":
+ for _, item := range template.Containers {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Containers = append(result.Containers, *item_ARM.(*arm.Container))
+ }
+
+ // Set property "InitContainers":
+ for _, item := range template.InitContainers {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.InitContainers = append(result.InitContainers, *item_ARM.(*arm.BaseContainer))
+ }
+
+ // Set property "Volumes":
+ for _, item := range template.Volumes {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Volumes = append(result.Volumes, *item_ARM.(*arm.Volume))
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (template *JobTemplate) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobTemplate{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (template *JobTemplate) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobTemplate)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobTemplate, got %T", armInput)
+ }
+
+ // Set property "Containers":
+ for _, item := range typedInput.Containers {
+ var item1 Container
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.Containers = append(template.Containers, item1)
+ }
+
+ // Set property "InitContainers":
+ for _, item := range typedInput.InitContainers {
+ var item1 BaseContainer
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.InitContainers = append(template.InitContainers, item1)
+ }
+
+ // Set property "Volumes":
+ for _, item := range typedInput.Volumes {
+ var item1 Volume
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.Volumes = append(template.Volumes, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobTemplate populates our JobTemplate from the provided source JobTemplate
+func (template *JobTemplate) AssignProperties_From_JobTemplate(source *storage.JobTemplate) error {
+
+ // Containers
+ if source.Containers != nil {
+ containerList := make([]Container, len(source.Containers))
+ for containerIndex, containerItem := range source.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container Container
+ err := container.AssignProperties_From_Container(&containerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Container() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ template.Containers = containerList
+ } else {
+ template.Containers = nil
+ }
+
+ // InitContainers
+ if source.InitContainers != nil {
+ initContainerList := make([]BaseContainer, len(source.InitContainers))
+ for initContainerIndex, initContainerItem := range source.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer BaseContainer
+ err := initContainer.AssignProperties_From_BaseContainer(&initContainerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_BaseContainer() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ template.InitContainers = initContainerList
+ } else {
+ template.InitContainers = nil
+ }
+
+ // Volumes
+ if source.Volumes != nil {
+ volumeList := make([]Volume, len(source.Volumes))
+ for volumeIndex, volumeItem := range source.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume Volume
+ err := volume.AssignProperties_From_Volume(&volumeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Volume() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ template.Volumes = volumeList
+ } else {
+ template.Volumes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobTemplate populates the provided destination JobTemplate from our JobTemplate
+func (template *JobTemplate) AssignProperties_To_JobTemplate(destination *storage.JobTemplate) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Containers
+ if template.Containers != nil {
+ containerList := make([]storage.Container, len(template.Containers))
+ for containerIndex, containerItem := range template.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container storage.Container
+ err := containerItem.AssignProperties_To_Container(&container)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Container() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ destination.Containers = containerList
+ } else {
+ destination.Containers = nil
+ }
+
+ // InitContainers
+ if template.InitContainers != nil {
+ initContainerList := make([]storage.BaseContainer, len(template.InitContainers))
+ for initContainerIndex, initContainerItem := range template.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer storage.BaseContainer
+ err := initContainerItem.AssignProperties_To_BaseContainer(&initContainer)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_BaseContainer() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ destination.InitContainers = initContainerList
+ } else {
+ destination.InitContainers = nil
+ }
+
+ // Volumes
+ if template.Volumes != nil {
+ volumeList := make([]storage.Volume, len(template.Volumes))
+ for volumeIndex, volumeItem := range template.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume storage.Volume
+ err := volumeItem.AssignProperties_To_Volume(&volume)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Volume() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ destination.Volumes = volumeList
+ } else {
+ destination.Volumes = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_JobTemplate_STATUS populates our JobTemplate from the provided source JobTemplate_STATUS
+func (template *JobTemplate) Initialize_From_JobTemplate_STATUS(source *JobTemplate_STATUS) error {
+
+ // Containers
+ if source.Containers != nil {
+ containerList := make([]Container, len(source.Containers))
+ for containerIndex, containerItem := range source.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container Container
+ err := container.Initialize_From_Container_STATUS(&containerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Container_STATUS() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ template.Containers = containerList
+ } else {
+ template.Containers = nil
+ }
+
+ // InitContainers
+ if source.InitContainers != nil {
+ initContainerList := make([]BaseContainer, len(source.InitContainers))
+ for initContainerIndex, initContainerItem := range source.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer BaseContainer
+ err := initContainer.Initialize_From_BaseContainer_STATUS(&initContainerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_BaseContainer_STATUS() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ template.InitContainers = initContainerList
+ } else {
+ template.InitContainers = nil
+ }
+
+ // Volumes
+ if source.Volumes != nil {
+ volumeList := make([]Volume, len(source.Volumes))
+ for volumeIndex, volumeItem := range source.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume Volume
+ err := volume.Initialize_From_Volume_STATUS(&volumeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Volume_STATUS() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ template.Volumes = volumeList
+ } else {
+ template.Volumes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Container Apps Job versioned application definition. Defines the desired state of an immutable revision. Any changes to
+// this section Will result in a new revision being created
+type JobTemplate_STATUS struct {
+ // Containers: List of container definitions for the Container App.
+ Containers []Container_STATUS `json:"containers,omitempty"`
+
+ // InitContainers: List of specialized containers that run before app containers.
+ InitContainers []BaseContainer_STATUS `json:"initContainers,omitempty"`
+
+ // Volumes: List of volume definitions for the Container App.
+ Volumes []Volume_STATUS `json:"volumes,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &JobTemplate_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (template *JobTemplate_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobTemplate_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (template *JobTemplate_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobTemplate_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobTemplate_STATUS, got %T", armInput)
+ }
+
+ // Set property "Containers":
+ for _, item := range typedInput.Containers {
+ var item1 Container_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.Containers = append(template.Containers, item1)
+ }
+
+ // Set property "InitContainers":
+ for _, item := range typedInput.InitContainers {
+ var item1 BaseContainer_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.InitContainers = append(template.InitContainers, item1)
+ }
+
+ // Set property "Volumes":
+ for _, item := range typedInput.Volumes {
+ var item1 Volume_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ template.Volumes = append(template.Volumes, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobTemplate_STATUS populates our JobTemplate_STATUS from the provided source JobTemplate_STATUS
+func (template *JobTemplate_STATUS) AssignProperties_From_JobTemplate_STATUS(source *storage.JobTemplate_STATUS) error {
+
+ // Containers
+ if source.Containers != nil {
+ containerList := make([]Container_STATUS, len(source.Containers))
+ for containerIndex, containerItem := range source.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container Container_STATUS
+ err := container.AssignProperties_From_Container_STATUS(&containerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Container_STATUS() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ template.Containers = containerList
+ } else {
+ template.Containers = nil
+ }
+
+ // InitContainers
+ if source.InitContainers != nil {
+ initContainerList := make([]BaseContainer_STATUS, len(source.InitContainers))
+ for initContainerIndex, initContainerItem := range source.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer BaseContainer_STATUS
+ err := initContainer.AssignProperties_From_BaseContainer_STATUS(&initContainerItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_BaseContainer_STATUS() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ template.InitContainers = initContainerList
+ } else {
+ template.InitContainers = nil
+ }
+
+ // Volumes
+ if source.Volumes != nil {
+ volumeList := make([]Volume_STATUS, len(source.Volumes))
+ for volumeIndex, volumeItem := range source.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume Volume_STATUS
+ err := volume.AssignProperties_From_Volume_STATUS(&volumeItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Volume_STATUS() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ template.Volumes = volumeList
+ } else {
+ template.Volumes = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobTemplate_STATUS populates the provided destination JobTemplate_STATUS from our JobTemplate_STATUS
+func (template *JobTemplate_STATUS) AssignProperties_To_JobTemplate_STATUS(destination *storage.JobTemplate_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Containers
+ if template.Containers != nil {
+ containerList := make([]storage.Container_STATUS, len(template.Containers))
+ for containerIndex, containerItem := range template.Containers {
+ // Shadow the loop variable to avoid aliasing
+ containerItem := containerItem
+ var container storage.Container_STATUS
+ err := containerItem.AssignProperties_To_Container_STATUS(&container)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Container_STATUS() to populate field Containers")
+ }
+ containerList[containerIndex] = container
+ }
+ destination.Containers = containerList
+ } else {
+ destination.Containers = nil
+ }
+
+ // InitContainers
+ if template.InitContainers != nil {
+ initContainerList := make([]storage.BaseContainer_STATUS, len(template.InitContainers))
+ for initContainerIndex, initContainerItem := range template.InitContainers {
+ // Shadow the loop variable to avoid aliasing
+ initContainerItem := initContainerItem
+ var initContainer storage.BaseContainer_STATUS
+ err := initContainerItem.AssignProperties_To_BaseContainer_STATUS(&initContainer)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_BaseContainer_STATUS() to populate field InitContainers")
+ }
+ initContainerList[initContainerIndex] = initContainer
+ }
+ destination.InitContainers = initContainerList
+ } else {
+ destination.InitContainers = nil
+ }
+
+ // Volumes
+ if template.Volumes != nil {
+ volumeList := make([]storage.Volume_STATUS, len(template.Volumes))
+ for volumeIndex, volumeItem := range template.Volumes {
+ // Shadow the loop variable to avoid aliasing
+ volumeItem := volumeItem
+ var volume storage.Volume_STATUS
+ err := volumeItem.AssignProperties_To_Volume_STATUS(&volume)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Volume_STATUS() to populate field Volumes")
+ }
+ volumeList[volumeIndex] = volume
+ }
+ destination.Volumes = volumeList
+ } else {
+ destination.Volumes = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type JobConfiguration_EventTriggerConfig struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+
+ // Scale: Scaling configurations for event driven jobs.
+ Scale *JobScale `json:"scale,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &JobConfiguration_EventTriggerConfig{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (config *JobConfiguration_EventTriggerConfig) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if config == nil {
+ return nil, nil
+ }
+ result := &arm.JobConfiguration_EventTriggerConfig{}
+
+ // Set property "Parallelism":
+ if config.Parallelism != nil {
+ parallelism := *config.Parallelism
+ result.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if config.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *config.ReplicaCompletionCount
+ result.ReplicaCompletionCount = &replicaCompletionCount
+ }
+
+ // Set property "Scale":
+ if config.Scale != nil {
+ scale_ARM, err := (*config.Scale).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ scale := *scale_ARM.(*arm.JobScale)
+ result.Scale = &scale
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *JobConfiguration_EventTriggerConfig) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobConfiguration_EventTriggerConfig{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *JobConfiguration_EventTriggerConfig) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobConfiguration_EventTriggerConfig)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobConfiguration_EventTriggerConfig, got %T", armInput)
+ }
+
+ // Set property "Parallelism":
+ if typedInput.Parallelism != nil {
+ parallelism := *typedInput.Parallelism
+ config.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if typedInput.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *typedInput.ReplicaCompletionCount
+ config.ReplicaCompletionCount = &replicaCompletionCount
+ }
+
+ // Set property "Scale":
+ if typedInput.Scale != nil {
+ var scale1 JobScale
+ err := scale1.PopulateFromARM(owner, *typedInput.Scale)
+ if err != nil {
+ return err
+ }
+ scale := scale1
+ config.Scale = &scale
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobConfiguration_EventTriggerConfig populates our JobConfiguration_EventTriggerConfig from the provided source JobConfiguration_EventTriggerConfig
+func (config *JobConfiguration_EventTriggerConfig) AssignProperties_From_JobConfiguration_EventTriggerConfig(source *storage.JobConfiguration_EventTriggerConfig) error {
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // Scale
+ if source.Scale != nil {
+ var scale JobScale
+ err := scale.AssignProperties_From_JobScale(source.Scale)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobScale() to populate field Scale")
+ }
+ config.Scale = &scale
+ } else {
+ config.Scale = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobConfiguration_EventTriggerConfig populates the provided destination JobConfiguration_EventTriggerConfig from our JobConfiguration_EventTriggerConfig
+func (config *JobConfiguration_EventTriggerConfig) AssignProperties_To_JobConfiguration_EventTriggerConfig(destination *storage.JobConfiguration_EventTriggerConfig) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Parallelism
+ destination.Parallelism = genruntime.ClonePointerToInt(config.Parallelism)
+
+ // ReplicaCompletionCount
+ destination.ReplicaCompletionCount = genruntime.ClonePointerToInt(config.ReplicaCompletionCount)
+
+ // Scale
+ if config.Scale != nil {
+ var scale storage.JobScale
+ err := config.Scale.AssignProperties_To_JobScale(&scale)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobScale() to populate field Scale")
+ }
+ destination.Scale = &scale
+ } else {
+ destination.Scale = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_JobConfiguration_EventTriggerConfig_STATUS populates our JobConfiguration_EventTriggerConfig from the provided source JobConfiguration_EventTriggerConfig_STATUS
+func (config *JobConfiguration_EventTriggerConfig) Initialize_From_JobConfiguration_EventTriggerConfig_STATUS(source *JobConfiguration_EventTriggerConfig_STATUS) error {
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // Scale
+ if source.Scale != nil {
+ var scale JobScale
+ err := scale.Initialize_From_JobScale_STATUS(source.Scale)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_JobScale_STATUS() to populate field Scale")
+ }
+ config.Scale = &scale
+ } else {
+ config.Scale = nil
+ }
+
+ // No error
+ return nil
+}
+
+type JobConfiguration_EventTriggerConfig_STATUS struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+
+ // Scale: Scaling configurations for event driven jobs.
+ Scale *JobScale_STATUS `json:"scale,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &JobConfiguration_EventTriggerConfig_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *JobConfiguration_EventTriggerConfig_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobConfiguration_EventTriggerConfig_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *JobConfiguration_EventTriggerConfig_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobConfiguration_EventTriggerConfig_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobConfiguration_EventTriggerConfig_STATUS, got %T", armInput)
+ }
+
+ // Set property "Parallelism":
+ if typedInput.Parallelism != nil {
+ parallelism := *typedInput.Parallelism
+ config.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if typedInput.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *typedInput.ReplicaCompletionCount
+ config.ReplicaCompletionCount = &replicaCompletionCount
+ }
+
+ // Set property "Scale":
+ if typedInput.Scale != nil {
+ var scale1 JobScale_STATUS
+ err := scale1.PopulateFromARM(owner, *typedInput.Scale)
+ if err != nil {
+ return err
+ }
+ scale := scale1
+ config.Scale = &scale
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobConfiguration_EventTriggerConfig_STATUS populates our JobConfiguration_EventTriggerConfig_STATUS from the provided source JobConfiguration_EventTriggerConfig_STATUS
+func (config *JobConfiguration_EventTriggerConfig_STATUS) AssignProperties_From_JobConfiguration_EventTriggerConfig_STATUS(source *storage.JobConfiguration_EventTriggerConfig_STATUS) error {
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // Scale
+ if source.Scale != nil {
+ var scale JobScale_STATUS
+ err := scale.AssignProperties_From_JobScale_STATUS(source.Scale)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobScale_STATUS() to populate field Scale")
+ }
+ config.Scale = &scale
+ } else {
+ config.Scale = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobConfiguration_EventTriggerConfig_STATUS populates the provided destination JobConfiguration_EventTriggerConfig_STATUS from our JobConfiguration_EventTriggerConfig_STATUS
+func (config *JobConfiguration_EventTriggerConfig_STATUS) AssignProperties_To_JobConfiguration_EventTriggerConfig_STATUS(destination *storage.JobConfiguration_EventTriggerConfig_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Parallelism
+ destination.Parallelism = genruntime.ClonePointerToInt(config.Parallelism)
+
+ // ReplicaCompletionCount
+ destination.ReplicaCompletionCount = genruntime.ClonePointerToInt(config.ReplicaCompletionCount)
+
+ // Scale
+ if config.Scale != nil {
+ var scale storage.JobScale_STATUS
+ err := config.Scale.AssignProperties_To_JobScale_STATUS(&scale)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobScale_STATUS() to populate field Scale")
+ }
+ destination.Scale = &scale
+ } else {
+ destination.Scale = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type JobConfiguration_ManualTriggerConfig struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &JobConfiguration_ManualTriggerConfig{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (config *JobConfiguration_ManualTriggerConfig) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if config == nil {
+ return nil, nil
+ }
+ result := &arm.JobConfiguration_ManualTriggerConfig{}
+
+ // Set property "Parallelism":
+ if config.Parallelism != nil {
+ parallelism := *config.Parallelism
+ result.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if config.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *config.ReplicaCompletionCount
+ result.ReplicaCompletionCount = &replicaCompletionCount
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *JobConfiguration_ManualTriggerConfig) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobConfiguration_ManualTriggerConfig{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *JobConfiguration_ManualTriggerConfig) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobConfiguration_ManualTriggerConfig)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobConfiguration_ManualTriggerConfig, got %T", armInput)
+ }
+
+ // Set property "Parallelism":
+ if typedInput.Parallelism != nil {
+ parallelism := *typedInput.Parallelism
+ config.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if typedInput.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *typedInput.ReplicaCompletionCount
+ config.ReplicaCompletionCount = &replicaCompletionCount
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobConfiguration_ManualTriggerConfig populates our JobConfiguration_ManualTriggerConfig from the provided source JobConfiguration_ManualTriggerConfig
+func (config *JobConfiguration_ManualTriggerConfig) AssignProperties_From_JobConfiguration_ManualTriggerConfig(source *storage.JobConfiguration_ManualTriggerConfig) error {
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobConfiguration_ManualTriggerConfig populates the provided destination JobConfiguration_ManualTriggerConfig from our JobConfiguration_ManualTriggerConfig
+func (config *JobConfiguration_ManualTriggerConfig) AssignProperties_To_JobConfiguration_ManualTriggerConfig(destination *storage.JobConfiguration_ManualTriggerConfig) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Parallelism
+ destination.Parallelism = genruntime.ClonePointerToInt(config.Parallelism)
+
+ // ReplicaCompletionCount
+ destination.ReplicaCompletionCount = genruntime.ClonePointerToInt(config.ReplicaCompletionCount)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_JobConfiguration_ManualTriggerConfig_STATUS populates our JobConfiguration_ManualTriggerConfig from the provided source JobConfiguration_ManualTriggerConfig_STATUS
+func (config *JobConfiguration_ManualTriggerConfig) Initialize_From_JobConfiguration_ManualTriggerConfig_STATUS(source *JobConfiguration_ManualTriggerConfig_STATUS) error {
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // No error
+ return nil
+}
+
+type JobConfiguration_ManualTriggerConfig_STATUS struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &JobConfiguration_ManualTriggerConfig_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *JobConfiguration_ManualTriggerConfig_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobConfiguration_ManualTriggerConfig_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *JobConfiguration_ManualTriggerConfig_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobConfiguration_ManualTriggerConfig_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobConfiguration_ManualTriggerConfig_STATUS, got %T", armInput)
+ }
+
+ // Set property "Parallelism":
+ if typedInput.Parallelism != nil {
+ parallelism := *typedInput.Parallelism
+ config.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if typedInput.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *typedInput.ReplicaCompletionCount
+ config.ReplicaCompletionCount = &replicaCompletionCount
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobConfiguration_ManualTriggerConfig_STATUS populates our JobConfiguration_ManualTriggerConfig_STATUS from the provided source JobConfiguration_ManualTriggerConfig_STATUS
+func (config *JobConfiguration_ManualTriggerConfig_STATUS) AssignProperties_From_JobConfiguration_ManualTriggerConfig_STATUS(source *storage.JobConfiguration_ManualTriggerConfig_STATUS) error {
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobConfiguration_ManualTriggerConfig_STATUS populates the provided destination JobConfiguration_ManualTriggerConfig_STATUS from our JobConfiguration_ManualTriggerConfig_STATUS
+func (config *JobConfiguration_ManualTriggerConfig_STATUS) AssignProperties_To_JobConfiguration_ManualTriggerConfig_STATUS(destination *storage.JobConfiguration_ManualTriggerConfig_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Parallelism
+ destination.Parallelism = genruntime.ClonePointerToInt(config.Parallelism)
+
+ // ReplicaCompletionCount
+ destination.ReplicaCompletionCount = genruntime.ClonePointerToInt(config.ReplicaCompletionCount)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type JobConfiguration_ScheduleTriggerConfig struct {
+ // +kubebuilder:validation:Required
+ // CronExpression: Cron formatted repeating schedule ("* * * * *") of a Cron Job.
+ CronExpression *string `json:"cronExpression,omitempty"`
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &JobConfiguration_ScheduleTriggerConfig{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (config *JobConfiguration_ScheduleTriggerConfig) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if config == nil {
+ return nil, nil
+ }
+ result := &arm.JobConfiguration_ScheduleTriggerConfig{}
+
+ // Set property "CronExpression":
+ if config.CronExpression != nil {
+ cronExpression := *config.CronExpression
+ result.CronExpression = &cronExpression
+ }
+
+ // Set property "Parallelism":
+ if config.Parallelism != nil {
+ parallelism := *config.Parallelism
+ result.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if config.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *config.ReplicaCompletionCount
+ result.ReplicaCompletionCount = &replicaCompletionCount
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *JobConfiguration_ScheduleTriggerConfig) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobConfiguration_ScheduleTriggerConfig{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *JobConfiguration_ScheduleTriggerConfig) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobConfiguration_ScheduleTriggerConfig)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobConfiguration_ScheduleTriggerConfig, got %T", armInput)
+ }
+
+ // Set property "CronExpression":
+ if typedInput.CronExpression != nil {
+ cronExpression := *typedInput.CronExpression
+ config.CronExpression = &cronExpression
+ }
+
+ // Set property "Parallelism":
+ if typedInput.Parallelism != nil {
+ parallelism := *typedInput.Parallelism
+ config.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if typedInput.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *typedInput.ReplicaCompletionCount
+ config.ReplicaCompletionCount = &replicaCompletionCount
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobConfiguration_ScheduleTriggerConfig populates our JobConfiguration_ScheduleTriggerConfig from the provided source JobConfiguration_ScheduleTriggerConfig
+func (config *JobConfiguration_ScheduleTriggerConfig) AssignProperties_From_JobConfiguration_ScheduleTriggerConfig(source *storage.JobConfiguration_ScheduleTriggerConfig) error {
+
+ // CronExpression
+ config.CronExpression = genruntime.ClonePointerToString(source.CronExpression)
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobConfiguration_ScheduleTriggerConfig populates the provided destination JobConfiguration_ScheduleTriggerConfig from our JobConfiguration_ScheduleTriggerConfig
+func (config *JobConfiguration_ScheduleTriggerConfig) AssignProperties_To_JobConfiguration_ScheduleTriggerConfig(destination *storage.JobConfiguration_ScheduleTriggerConfig) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // CronExpression
+ destination.CronExpression = genruntime.ClonePointerToString(config.CronExpression)
+
+ // Parallelism
+ destination.Parallelism = genruntime.ClonePointerToInt(config.Parallelism)
+
+ // ReplicaCompletionCount
+ destination.ReplicaCompletionCount = genruntime.ClonePointerToInt(config.ReplicaCompletionCount)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_JobConfiguration_ScheduleTriggerConfig_STATUS populates our JobConfiguration_ScheduleTriggerConfig from the provided source JobConfiguration_ScheduleTriggerConfig_STATUS
+func (config *JobConfiguration_ScheduleTriggerConfig) Initialize_From_JobConfiguration_ScheduleTriggerConfig_STATUS(source *JobConfiguration_ScheduleTriggerConfig_STATUS) error {
+
+ // CronExpression
+ config.CronExpression = genruntime.ClonePointerToString(source.CronExpression)
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // No error
+ return nil
+}
+
+type JobConfiguration_ScheduleTriggerConfig_STATUS struct {
+ // CronExpression: Cron formatted repeating schedule ("* * * * *") of a Cron Job.
+ CronExpression *string `json:"cronExpression,omitempty"`
+ Parallelism *int `json:"parallelism,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &JobConfiguration_ScheduleTriggerConfig_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (config *JobConfiguration_ScheduleTriggerConfig_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobConfiguration_ScheduleTriggerConfig_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (config *JobConfiguration_ScheduleTriggerConfig_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobConfiguration_ScheduleTriggerConfig_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobConfiguration_ScheduleTriggerConfig_STATUS, got %T", armInput)
+ }
+
+ // Set property "CronExpression":
+ if typedInput.CronExpression != nil {
+ cronExpression := *typedInput.CronExpression
+ config.CronExpression = &cronExpression
+ }
+
+ // Set property "Parallelism":
+ if typedInput.Parallelism != nil {
+ parallelism := *typedInput.Parallelism
+ config.Parallelism = ¶llelism
+ }
+
+ // Set property "ReplicaCompletionCount":
+ if typedInput.ReplicaCompletionCount != nil {
+ replicaCompletionCount := *typedInput.ReplicaCompletionCount
+ config.ReplicaCompletionCount = &replicaCompletionCount
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobConfiguration_ScheduleTriggerConfig_STATUS populates our JobConfiguration_ScheduleTriggerConfig_STATUS from the provided source JobConfiguration_ScheduleTriggerConfig_STATUS
+func (config *JobConfiguration_ScheduleTriggerConfig_STATUS) AssignProperties_From_JobConfiguration_ScheduleTriggerConfig_STATUS(source *storage.JobConfiguration_ScheduleTriggerConfig_STATUS) error {
+
+ // CronExpression
+ config.CronExpression = genruntime.ClonePointerToString(source.CronExpression)
+
+ // Parallelism
+ config.Parallelism = genruntime.ClonePointerToInt(source.Parallelism)
+
+ // ReplicaCompletionCount
+ config.ReplicaCompletionCount = genruntime.ClonePointerToInt(source.ReplicaCompletionCount)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobConfiguration_ScheduleTriggerConfig_STATUS populates the provided destination JobConfiguration_ScheduleTriggerConfig_STATUS from our JobConfiguration_ScheduleTriggerConfig_STATUS
+func (config *JobConfiguration_ScheduleTriggerConfig_STATUS) AssignProperties_To_JobConfiguration_ScheduleTriggerConfig_STATUS(destination *storage.JobConfiguration_ScheduleTriggerConfig_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // CronExpression
+ destination.CronExpression = genruntime.ClonePointerToString(config.CronExpression)
+
+ // Parallelism
+ destination.Parallelism = genruntime.ClonePointerToInt(config.Parallelism)
+
+ // ReplicaCompletionCount
+ destination.ReplicaCompletionCount = genruntime.ClonePointerToInt(config.ReplicaCompletionCount)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// +kubebuilder:validation:Enum={"Event","Manual","Schedule"}
+type JobConfiguration_TriggerType string
+
+const (
+ JobConfiguration_TriggerType_Event = JobConfiguration_TriggerType("Event")
+ JobConfiguration_TriggerType_Manual = JobConfiguration_TriggerType("Manual")
+ JobConfiguration_TriggerType_Schedule = JobConfiguration_TriggerType("Schedule")
+)
+
+// Mapping from string to JobConfiguration_TriggerType
+var jobConfiguration_TriggerType_Values = map[string]JobConfiguration_TriggerType{
+ "event": JobConfiguration_TriggerType_Event,
+ "manual": JobConfiguration_TriggerType_Manual,
+ "schedule": JobConfiguration_TriggerType_Schedule,
+}
+
+type JobConfiguration_TriggerType_STATUS string
+
+const (
+ JobConfiguration_TriggerType_STATUS_Event = JobConfiguration_TriggerType_STATUS("Event")
+ JobConfiguration_TriggerType_STATUS_Manual = JobConfiguration_TriggerType_STATUS("Manual")
+ JobConfiguration_TriggerType_STATUS_Schedule = JobConfiguration_TriggerType_STATUS("Schedule")
+)
+
+// Mapping from string to JobConfiguration_TriggerType_STATUS
+var jobConfiguration_TriggerType_STATUS_Values = map[string]JobConfiguration_TriggerType_STATUS{
+ "event": JobConfiguration_TriggerType_STATUS_Event,
+ "manual": JobConfiguration_TriggerType_STATUS_Manual,
+ "schedule": JobConfiguration_TriggerType_STATUS_Schedule,
+}
+
+// Scaling configurations for event driven jobs.
+type JobScale struct {
+ // MaxExecutions: Maximum number of job executions that are created for a trigger, default 100.
+ MaxExecutions *int `json:"maxExecutions,omitempty"`
+
+ // MinExecutions: Minimum number of job executions that are created for a trigger, default 0
+ MinExecutions *int `json:"minExecutions,omitempty"`
+ PollingInterval *int `json:"pollingInterval,omitempty"`
+
+ // Rules: Scaling rules.
+ Rules []JobScaleRule `json:"rules,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &JobScale{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (scale *JobScale) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if scale == nil {
+ return nil, nil
+ }
+ result := &arm.JobScale{}
+
+ // Set property "MaxExecutions":
+ if scale.MaxExecutions != nil {
+ maxExecutions := *scale.MaxExecutions
+ result.MaxExecutions = &maxExecutions
+ }
+
+ // Set property "MinExecutions":
+ if scale.MinExecutions != nil {
+ minExecutions := *scale.MinExecutions
+ result.MinExecutions = &minExecutions
+ }
+
+ // Set property "PollingInterval":
+ if scale.PollingInterval != nil {
+ pollingInterval := *scale.PollingInterval
+ result.PollingInterval = &pollingInterval
+ }
+
+ // Set property "Rules":
+ for _, item := range scale.Rules {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Rules = append(result.Rules, *item_ARM.(*arm.JobScaleRule))
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (scale *JobScale) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobScale{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (scale *JobScale) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobScale)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobScale, got %T", armInput)
+ }
+
+ // Set property "MaxExecutions":
+ if typedInput.MaxExecutions != nil {
+ maxExecutions := *typedInput.MaxExecutions
+ scale.MaxExecutions = &maxExecutions
+ }
+
+ // Set property "MinExecutions":
+ if typedInput.MinExecutions != nil {
+ minExecutions := *typedInput.MinExecutions
+ scale.MinExecutions = &minExecutions
+ }
+
+ // Set property "PollingInterval":
+ if typedInput.PollingInterval != nil {
+ pollingInterval := *typedInput.PollingInterval
+ scale.PollingInterval = &pollingInterval
+ }
+
+ // Set property "Rules":
+ for _, item := range typedInput.Rules {
+ var item1 JobScaleRule
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ scale.Rules = append(scale.Rules, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobScale populates our JobScale from the provided source JobScale
+func (scale *JobScale) AssignProperties_From_JobScale(source *storage.JobScale) error {
+
+ // MaxExecutions
+ scale.MaxExecutions = genruntime.ClonePointerToInt(source.MaxExecutions)
+
+ // MinExecutions
+ scale.MinExecutions = genruntime.ClonePointerToInt(source.MinExecutions)
+
+ // PollingInterval
+ scale.PollingInterval = genruntime.ClonePointerToInt(source.PollingInterval)
+
+ // Rules
+ if source.Rules != nil {
+ ruleList := make([]JobScaleRule, len(source.Rules))
+ for ruleIndex, ruleItem := range source.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule JobScaleRule
+ err := rule.AssignProperties_From_JobScaleRule(&ruleItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobScaleRule() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ scale.Rules = ruleList
+ } else {
+ scale.Rules = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobScale populates the provided destination JobScale from our JobScale
+func (scale *JobScale) AssignProperties_To_JobScale(destination *storage.JobScale) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MaxExecutions
+ destination.MaxExecutions = genruntime.ClonePointerToInt(scale.MaxExecutions)
+
+ // MinExecutions
+ destination.MinExecutions = genruntime.ClonePointerToInt(scale.MinExecutions)
+
+ // PollingInterval
+ destination.PollingInterval = genruntime.ClonePointerToInt(scale.PollingInterval)
+
+ // Rules
+ if scale.Rules != nil {
+ ruleList := make([]storage.JobScaleRule, len(scale.Rules))
+ for ruleIndex, ruleItem := range scale.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule storage.JobScaleRule
+ err := ruleItem.AssignProperties_To_JobScaleRule(&rule)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobScaleRule() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ destination.Rules = ruleList
+ } else {
+ destination.Rules = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_JobScale_STATUS populates our JobScale from the provided source JobScale_STATUS
+func (scale *JobScale) Initialize_From_JobScale_STATUS(source *JobScale_STATUS) error {
+
+ // MaxExecutions
+ scale.MaxExecutions = genruntime.ClonePointerToInt(source.MaxExecutions)
+
+ // MinExecutions
+ scale.MinExecutions = genruntime.ClonePointerToInt(source.MinExecutions)
+
+ // PollingInterval
+ scale.PollingInterval = genruntime.ClonePointerToInt(source.PollingInterval)
+
+ // Rules
+ if source.Rules != nil {
+ ruleList := make([]JobScaleRule, len(source.Rules))
+ for ruleIndex, ruleItem := range source.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule JobScaleRule
+ err := rule.Initialize_From_JobScaleRule_STATUS(&ruleItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_JobScaleRule_STATUS() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ scale.Rules = ruleList
+ } else {
+ scale.Rules = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Scaling configurations for event driven jobs.
+type JobScale_STATUS struct {
+ // MaxExecutions: Maximum number of job executions that are created for a trigger, default 100.
+ MaxExecutions *int `json:"maxExecutions,omitempty"`
+
+ // MinExecutions: Minimum number of job executions that are created for a trigger, default 0
+ MinExecutions *int `json:"minExecutions,omitempty"`
+ PollingInterval *int `json:"pollingInterval,omitempty"`
+
+ // Rules: Scaling rules.
+ Rules []JobScaleRule_STATUS `json:"rules,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &JobScale_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (scale *JobScale_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobScale_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (scale *JobScale_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobScale_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobScale_STATUS, got %T", armInput)
+ }
+
+ // Set property "MaxExecutions":
+ if typedInput.MaxExecutions != nil {
+ maxExecutions := *typedInput.MaxExecutions
+ scale.MaxExecutions = &maxExecutions
+ }
+
+ // Set property "MinExecutions":
+ if typedInput.MinExecutions != nil {
+ minExecutions := *typedInput.MinExecutions
+ scale.MinExecutions = &minExecutions
+ }
+
+ // Set property "PollingInterval":
+ if typedInput.PollingInterval != nil {
+ pollingInterval := *typedInput.PollingInterval
+ scale.PollingInterval = &pollingInterval
+ }
+
+ // Set property "Rules":
+ for _, item := range typedInput.Rules {
+ var item1 JobScaleRule_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ scale.Rules = append(scale.Rules, item1)
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobScale_STATUS populates our JobScale_STATUS from the provided source JobScale_STATUS
+func (scale *JobScale_STATUS) AssignProperties_From_JobScale_STATUS(source *storage.JobScale_STATUS) error {
+
+ // MaxExecutions
+ scale.MaxExecutions = genruntime.ClonePointerToInt(source.MaxExecutions)
+
+ // MinExecutions
+ scale.MinExecutions = genruntime.ClonePointerToInt(source.MinExecutions)
+
+ // PollingInterval
+ scale.PollingInterval = genruntime.ClonePointerToInt(source.PollingInterval)
+
+ // Rules
+ if source.Rules != nil {
+ ruleList := make([]JobScaleRule_STATUS, len(source.Rules))
+ for ruleIndex, ruleItem := range source.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule JobScaleRule_STATUS
+ err := rule.AssignProperties_From_JobScaleRule_STATUS(&ruleItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_JobScaleRule_STATUS() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ scale.Rules = ruleList
+ } else {
+ scale.Rules = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobScale_STATUS populates the provided destination JobScale_STATUS from our JobScale_STATUS
+func (scale *JobScale_STATUS) AssignProperties_To_JobScale_STATUS(destination *storage.JobScale_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MaxExecutions
+ destination.MaxExecutions = genruntime.ClonePointerToInt(scale.MaxExecutions)
+
+ // MinExecutions
+ destination.MinExecutions = genruntime.ClonePointerToInt(scale.MinExecutions)
+
+ // PollingInterval
+ destination.PollingInterval = genruntime.ClonePointerToInt(scale.PollingInterval)
+
+ // Rules
+ if scale.Rules != nil {
+ ruleList := make([]storage.JobScaleRule_STATUS, len(scale.Rules))
+ for ruleIndex, ruleItem := range scale.Rules {
+ // Shadow the loop variable to avoid aliasing
+ ruleItem := ruleItem
+ var rule storage.JobScaleRule_STATUS
+ err := ruleItem.AssignProperties_To_JobScaleRule_STATUS(&rule)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_JobScaleRule_STATUS() to populate field Rules")
+ }
+ ruleList[ruleIndex] = rule
+ }
+ destination.Rules = ruleList
+ } else {
+ destination.Rules = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Scaling rule.
+type JobScaleRule struct {
+ // Auth: Authentication secrets for the scale rule.
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe the scale rule.
+ Metadata map[string]v1.JSON `json:"metadata,omitempty"`
+
+ // Name: Scale Rule Name
+ Name *string `json:"name,omitempty"`
+
+ // Type: Type of the scale rule
+ // eg: azure-servicebus, redis etc.
+ Type *string `json:"type,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &JobScaleRule{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (rule *JobScaleRule) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if rule == nil {
+ return nil, nil
+ }
+ result := &arm.JobScaleRule{}
+
+ // Set property "Auth":
+ for _, item := range rule.Auth {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Auth = append(result.Auth, *item_ARM.(*arm.ScaleRuleAuth))
+ }
+
+ // Set property "Metadata":
+ if rule.Metadata != nil {
+ result.Metadata = make(map[string]v1.JSON, len(rule.Metadata))
+ for key, value := range rule.Metadata {
+ result.Metadata[key] = *value.DeepCopy()
+ }
+ }
+
+ // Set property "Name":
+ if rule.Name != nil {
+ name := *rule.Name
+ result.Name = &name
+ }
+
+ // Set property "Type":
+ if rule.Type != nil {
+ typeVar := *rule.Type
+ result.Type = &typeVar
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *JobScaleRule) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobScaleRule{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *JobScaleRule) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobScaleRule)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobScaleRule, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "Metadata":
+ if typedInput.Metadata != nil {
+ rule.Metadata = make(map[string]v1.JSON, len(typedInput.Metadata))
+ for key, value := range typedInput.Metadata {
+ rule.Metadata[key] = *value.DeepCopy()
+ }
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ rule.Name = &name
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ rule.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobScaleRule populates our JobScaleRule from the provided source JobScaleRule
+func (rule *JobScaleRule) AssignProperties_From_JobScaleRule(source *storage.JobScaleRule) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.AssignProperties_From_ScaleRuleAuth(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ if source.Metadata != nil {
+ metadatumMap := make(map[string]v1.JSON, len(source.Metadata))
+ for metadatumKey, metadatumValue := range source.Metadata {
+ // Shadow the loop variable to avoid aliasing
+ metadatumValue := metadatumValue
+ metadatumMap[metadatumKey] = *metadatumValue.DeepCopy()
+ }
+ rule.Metadata = metadatumMap
+ } else {
+ rule.Metadata = nil
+ }
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Type
+ rule.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobScaleRule populates the provided destination JobScaleRule from our JobScaleRule
+func (rule *JobScaleRule) AssignProperties_To_JobScaleRule(destination *storage.JobScaleRule) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth
+ err := authItem.AssignProperties_To_ScaleRuleAuth(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // Metadata
+ if rule.Metadata != nil {
+ metadatumMap := make(map[string]v1.JSON, len(rule.Metadata))
+ for metadatumKey, metadatumValue := range rule.Metadata {
+ // Shadow the loop variable to avoid aliasing
+ metadatumValue := metadatumValue
+ metadatumMap[metadatumKey] = *metadatumValue.DeepCopy()
+ }
+ destination.Metadata = metadatumMap
+ } else {
+ destination.Metadata = nil
+ }
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(rule.Name)
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(rule.Type)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_JobScaleRule_STATUS populates our JobScaleRule from the provided source JobScaleRule_STATUS
+func (rule *JobScaleRule) Initialize_From_JobScaleRule_STATUS(source *JobScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth
+ err := auth.Initialize_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ if source.Metadata != nil {
+ metadatumMap := make(map[string]v1.JSON, len(source.Metadata))
+ for metadatumKey, metadatumValue := range source.Metadata {
+ // Shadow the loop variable to avoid aliasing
+ metadatumValue := metadatumValue
+ metadatumMap[metadatumKey] = *metadatumValue.DeepCopy()
+ }
+ rule.Metadata = metadatumMap
+ } else {
+ rule.Metadata = nil
+ }
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Type
+ rule.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// Scaling rule.
+type JobScaleRule_STATUS struct {
+ // Auth: Authentication secrets for the scale rule.
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+
+ // Metadata: Metadata properties to describe the scale rule.
+ Metadata map[string]v1.JSON `json:"metadata,omitempty"`
+
+ // Name: Scale Rule Name
+ Name *string `json:"name,omitempty"`
+
+ // Type: Type of the scale rule
+ // eg: azure-servicebus, redis etc.
+ Type *string `json:"type,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &JobScaleRule_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (rule *JobScaleRule_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.JobScaleRule_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (rule *JobScaleRule_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.JobScaleRule_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.JobScaleRule_STATUS, got %T", armInput)
+ }
+
+ // Set property "Auth":
+ for _, item := range typedInput.Auth {
+ var item1 ScaleRuleAuth_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ rule.Auth = append(rule.Auth, item1)
+ }
+
+ // Set property "Metadata":
+ if typedInput.Metadata != nil {
+ rule.Metadata = make(map[string]v1.JSON, len(typedInput.Metadata))
+ for key, value := range typedInput.Metadata {
+ rule.Metadata[key] = *value.DeepCopy()
+ }
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ rule.Name = &name
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ rule.Type = &typeVar
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_JobScaleRule_STATUS populates our JobScaleRule_STATUS from the provided source JobScaleRule_STATUS
+func (rule *JobScaleRule_STATUS) AssignProperties_From_JobScaleRule_STATUS(source *storage.JobScaleRule_STATUS) error {
+
+ // Auth
+ if source.Auth != nil {
+ authList := make([]ScaleRuleAuth_STATUS, len(source.Auth))
+ for authIndex, authItem := range source.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth ScaleRuleAuth_STATUS
+ err := auth.AssignProperties_From_ScaleRuleAuth_STATUS(&authItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ rule.Auth = authList
+ } else {
+ rule.Auth = nil
+ }
+
+ // Metadata
+ if source.Metadata != nil {
+ metadatumMap := make(map[string]v1.JSON, len(source.Metadata))
+ for metadatumKey, metadatumValue := range source.Metadata {
+ // Shadow the loop variable to avoid aliasing
+ metadatumValue := metadatumValue
+ metadatumMap[metadatumKey] = *metadatumValue.DeepCopy()
+ }
+ rule.Metadata = metadatumMap
+ } else {
+ rule.Metadata = nil
+ }
+
+ // Name
+ rule.Name = genruntime.ClonePointerToString(source.Name)
+
+ // Type
+ rule.Type = genruntime.ClonePointerToString(source.Type)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_JobScaleRule_STATUS populates the provided destination JobScaleRule_STATUS from our JobScaleRule_STATUS
+func (rule *JobScaleRule_STATUS) AssignProperties_To_JobScaleRule_STATUS(destination *storage.JobScaleRule_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Auth
+ if rule.Auth != nil {
+ authList := make([]storage.ScaleRuleAuth_STATUS, len(rule.Auth))
+ for authIndex, authItem := range rule.Auth {
+ // Shadow the loop variable to avoid aliasing
+ authItem := authItem
+ var auth storage.ScaleRuleAuth_STATUS
+ err := authItem.AssignProperties_To_ScaleRuleAuth_STATUS(&auth)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ScaleRuleAuth_STATUS() to populate field Auth")
+ }
+ authList[authIndex] = auth
+ }
+ destination.Auth = authList
+ } else {
+ destination.Auth = nil
+ }
+
+ // Metadata
+ if rule.Metadata != nil {
+ metadatumMap := make(map[string]v1.JSON, len(rule.Metadata))
+ for metadatumKey, metadatumValue := range rule.Metadata {
+ // Shadow the loop variable to avoid aliasing
+ metadatumValue := metadatumValue
+ metadatumMap[metadatumKey] = *metadatumValue.DeepCopy()
+ }
+ destination.Metadata = metadatumMap
+ } else {
+ destination.Metadata = nil
+ }
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(rule.Name)
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(rule.Type)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+func init() {
+ SchemeBuilder.Register(&Job{}, &JobList{})
+}
diff --git a/v2/api/app/v1api20240301/job_types_gen_test.go b/v2/api/app/v1api20240301/job_types_gen_test.go
new file mode 100644
index 00000000000..e0202fbf8cf
--- /dev/null
+++ b/v2/api/app/v1api20240301/job_types_gen_test.go
@@ -0,0 +1,2098 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package v1api20240301
+
+import (
+ "encoding/json"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/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_Job_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 Job to hub returns original",
+ prop.ForAll(RunResourceConversionTestForJob, JobGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunResourceConversionTestForJob tests if a specific instance of Job round trips to the hub storage version and back losslessly
+func RunResourceConversionTestForJob(subject Job) string {
+ // Copy subject to make sure conversion doesn't modify it
+ copied := subject.DeepCopy()
+
+ // Convert to our hub version
+ var hub storage.Job
+ err := copied.ConvertTo(&hub)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Convert from our hub version
+ var actual Job
+ 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_Job_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Job to Job via AssignProperties_To_Job & AssignProperties_From_Job returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJob, JobGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJob tests if a specific instance of Job can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJob(subject Job) 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.Job
+ err := copied.AssignProperties_To_Job(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Job
+ err = actual.AssignProperties_From_Job(&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_Job_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 Job via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob, JobGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob runs a test to see if a specific instance of Job round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob(subject Job) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job
+ 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 Job instances for property testing - lazily instantiated by JobGenerator()
+var jobGenerator gopter.Gen
+
+// JobGenerator returns a generator of Job instances for property testing.
+func JobGenerator() gopter.Gen {
+ if jobGenerator != nil {
+ return jobGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForJob(generators)
+ jobGenerator = gen.Struct(reflect.TypeOf(Job{}), generators)
+
+ return jobGenerator
+}
+
+// AddRelatedPropertyGeneratorsForJob is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob(gens map[string]gopter.Gen) {
+ gens["Spec"] = Job_SpecGenerator()
+ gens["Status"] = Job_STATUSGenerator()
+}
+
+func Test_JobConfiguration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobConfiguration to JobConfiguration via AssignProperties_To_JobConfiguration & AssignProperties_From_JobConfiguration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobConfiguration, JobConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobConfiguration tests if a specific instance of JobConfiguration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobConfiguration(subject JobConfiguration) 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.JobConfiguration
+ err := copied.AssignProperties_To_JobConfiguration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobConfiguration
+ err = actual.AssignProperties_From_JobConfiguration(&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_JobConfiguration_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 JobConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration, JobConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration runs a test to see if a specific instance of JobConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration(subject JobConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration
+ 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 JobConfiguration instances for property testing - lazily instantiated by JobConfigurationGenerator()
+var jobConfigurationGenerator gopter.Gen
+
+// JobConfigurationGenerator returns a generator of JobConfiguration instances for property testing.
+// We first initialize jobConfigurationGenerator 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 JobConfigurationGenerator() gopter.Gen {
+ if jobConfigurationGenerator != nil {
+ return jobConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration(generators)
+ jobConfigurationGenerator = gen.Struct(reflect.TypeOf(JobConfiguration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration(generators)
+ jobConfigurationGenerator = gen.Struct(reflect.TypeOf(JobConfiguration{}), generators)
+
+ return jobConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration(gens map[string]gopter.Gen) {
+ gens["ReplicaRetryLimit"] = gen.PtrOf(gen.Int())
+ gens["ReplicaTimeout"] = gen.PtrOf(gen.Int())
+ gens["TriggerType"] = gen.PtrOf(gen.OneConstOf(JobConfiguration_TriggerType_Event, JobConfiguration_TriggerType_Manual, JobConfiguration_TriggerType_Schedule))
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration(gens map[string]gopter.Gen) {
+ gens["EventTriggerConfig"] = gen.PtrOf(JobConfiguration_EventTriggerConfigGenerator())
+ gens["ManualTriggerConfig"] = gen.PtrOf(JobConfiguration_ManualTriggerConfigGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentialsGenerator())
+ gens["ScheduleTriggerConfig"] = gen.PtrOf(JobConfiguration_ScheduleTriggerConfigGenerator())
+ gens["Secrets"] = gen.SliceOf(SecretGenerator())
+}
+
+func Test_JobConfiguration_EventTriggerConfig_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobConfiguration_EventTriggerConfig to JobConfiguration_EventTriggerConfig via AssignProperties_To_JobConfiguration_EventTriggerConfig & AssignProperties_From_JobConfiguration_EventTriggerConfig returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobConfiguration_EventTriggerConfig, JobConfiguration_EventTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobConfiguration_EventTriggerConfig tests if a specific instance of JobConfiguration_EventTriggerConfig can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobConfiguration_EventTriggerConfig(subject JobConfiguration_EventTriggerConfig) 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.JobConfiguration_EventTriggerConfig
+ err := copied.AssignProperties_To_JobConfiguration_EventTriggerConfig(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobConfiguration_EventTriggerConfig
+ err = actual.AssignProperties_From_JobConfiguration_EventTriggerConfig(&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_JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_EventTriggerConfig, JobConfiguration_EventTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_EventTriggerConfig runs a test to see if a specific instance of JobConfiguration_EventTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_EventTriggerConfig(subject JobConfiguration_EventTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_EventTriggerConfig
+ 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 JobConfiguration_EventTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_EventTriggerConfigGenerator()
+var jobConfiguration_EventTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_EventTriggerConfigGenerator returns a generator of JobConfiguration_EventTriggerConfig instances for property testing.
+// We first initialize jobConfiguration_EventTriggerConfigGenerator 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 JobConfiguration_EventTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_EventTriggerConfigGenerator != nil {
+ return jobConfiguration_EventTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ jobConfiguration_EventTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ jobConfiguration_EventTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig{}), generators)
+
+ return jobConfiguration_EventTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Scale"] = gen.PtrOf(JobScaleGenerator())
+}
+
+func Test_JobConfiguration_EventTriggerConfig_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobConfiguration_EventTriggerConfig_STATUS to JobConfiguration_EventTriggerConfig_STATUS via AssignProperties_To_JobConfiguration_EventTriggerConfig_STATUS & AssignProperties_From_JobConfiguration_EventTriggerConfig_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobConfiguration_EventTriggerConfig_STATUS, JobConfiguration_EventTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobConfiguration_EventTriggerConfig_STATUS tests if a specific instance of JobConfiguration_EventTriggerConfig_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobConfiguration_EventTriggerConfig_STATUS(subject JobConfiguration_EventTriggerConfig_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.JobConfiguration_EventTriggerConfig_STATUS
+ err := copied.AssignProperties_To_JobConfiguration_EventTriggerConfig_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobConfiguration_EventTriggerConfig_STATUS
+ err = actual.AssignProperties_From_JobConfiguration_EventTriggerConfig_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_JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS, JobConfiguration_EventTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_EventTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS(subject JobConfiguration_EventTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_EventTriggerConfig_STATUSGenerator()
+var jobConfiguration_EventTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_EventTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_EventTriggerConfig_STATUS instances for property testing.
+// We first initialize jobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_EventTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_EventTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ jobConfiguration_EventTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ jobConfiguration_EventTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_EventTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Scale"] = gen.PtrOf(JobScale_STATUSGenerator())
+}
+
+func Test_JobConfiguration_ManualTriggerConfig_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobConfiguration_ManualTriggerConfig to JobConfiguration_ManualTriggerConfig via AssignProperties_To_JobConfiguration_ManualTriggerConfig & AssignProperties_From_JobConfiguration_ManualTriggerConfig returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobConfiguration_ManualTriggerConfig, JobConfiguration_ManualTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobConfiguration_ManualTriggerConfig tests if a specific instance of JobConfiguration_ManualTriggerConfig can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobConfiguration_ManualTriggerConfig(subject JobConfiguration_ManualTriggerConfig) 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.JobConfiguration_ManualTriggerConfig
+ err := copied.AssignProperties_To_JobConfiguration_ManualTriggerConfig(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobConfiguration_ManualTriggerConfig
+ err = actual.AssignProperties_From_JobConfiguration_ManualTriggerConfig(&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_JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig, JobConfiguration_ManualTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig runs a test to see if a specific instance of JobConfiguration_ManualTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig(subject JobConfiguration_ManualTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ManualTriggerConfig
+ 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 JobConfiguration_ManualTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_ManualTriggerConfigGenerator()
+var jobConfiguration_ManualTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_ManualTriggerConfigGenerator returns a generator of JobConfiguration_ManualTriggerConfig instances for property testing.
+func JobConfiguration_ManualTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_ManualTriggerConfigGenerator != nil {
+ return jobConfiguration_ManualTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig(generators)
+ jobConfiguration_ManualTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ManualTriggerConfig{}), generators)
+
+ return jobConfiguration_ManualTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobConfiguration_ManualTriggerConfig_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobConfiguration_ManualTriggerConfig_STATUS to JobConfiguration_ManualTriggerConfig_STATUS via AssignProperties_To_JobConfiguration_ManualTriggerConfig_STATUS & AssignProperties_From_JobConfiguration_ManualTriggerConfig_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobConfiguration_ManualTriggerConfig_STATUS, JobConfiguration_ManualTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobConfiguration_ManualTriggerConfig_STATUS tests if a specific instance of JobConfiguration_ManualTriggerConfig_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobConfiguration_ManualTriggerConfig_STATUS(subject JobConfiguration_ManualTriggerConfig_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.JobConfiguration_ManualTriggerConfig_STATUS
+ err := copied.AssignProperties_To_JobConfiguration_ManualTriggerConfig_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobConfiguration_ManualTriggerConfig_STATUS
+ err = actual.AssignProperties_From_JobConfiguration_ManualTriggerConfig_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_JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS, JobConfiguration_ManualTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_ManualTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS(subject JobConfiguration_ManualTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_ManualTriggerConfig_STATUSGenerator()
+var jobConfiguration_ManualTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_ManualTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_ManualTriggerConfig_STATUS instances for property testing.
+func JobConfiguration_ManualTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_ManualTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_ManualTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS(generators)
+ jobConfiguration_ManualTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ManualTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_ManualTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobConfiguration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobConfiguration_STATUS to JobConfiguration_STATUS via AssignProperties_To_JobConfiguration_STATUS & AssignProperties_From_JobConfiguration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobConfiguration_STATUS, JobConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobConfiguration_STATUS tests if a specific instance of JobConfiguration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobConfiguration_STATUS(subject JobConfiguration_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.JobConfiguration_STATUS
+ err := copied.AssignProperties_To_JobConfiguration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobConfiguration_STATUS
+ err = actual.AssignProperties_From_JobConfiguration_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_JobConfiguration_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 JobConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_STATUS, JobConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_STATUS runs a test to see if a specific instance of JobConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_STATUS(subject JobConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_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 JobConfiguration_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_STATUSGenerator()
+var jobConfiguration_STATUSGenerator gopter.Gen
+
+// JobConfiguration_STATUSGenerator returns a generator of JobConfiguration_STATUS instances for property testing.
+// We first initialize jobConfiguration_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 JobConfiguration_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_STATUSGenerator != nil {
+ return jobConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ jobConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ jobConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_STATUS{}), generators)
+
+ return jobConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["ReplicaRetryLimit"] = gen.PtrOf(gen.Int())
+ gens["ReplicaTimeout"] = gen.PtrOf(gen.Int())
+ gens["TriggerType"] = gen.PtrOf(gen.OneConstOf(JobConfiguration_TriggerType_STATUS_Event, JobConfiguration_TriggerType_STATUS_Manual, JobConfiguration_TriggerType_STATUS_Schedule))
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["EventTriggerConfig"] = gen.PtrOf(JobConfiguration_EventTriggerConfig_STATUSGenerator())
+ gens["ManualTriggerConfig"] = gen.PtrOf(JobConfiguration_ManualTriggerConfig_STATUSGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentials_STATUSGenerator())
+ gens["ScheduleTriggerConfig"] = gen.PtrOf(JobConfiguration_ScheduleTriggerConfig_STATUSGenerator())
+ gens["Secrets"] = gen.SliceOf(Secret_STATUSGenerator())
+}
+
+func Test_JobConfiguration_ScheduleTriggerConfig_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobConfiguration_ScheduleTriggerConfig to JobConfiguration_ScheduleTriggerConfig via AssignProperties_To_JobConfiguration_ScheduleTriggerConfig & AssignProperties_From_JobConfiguration_ScheduleTriggerConfig returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobConfiguration_ScheduleTriggerConfig, JobConfiguration_ScheduleTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobConfiguration_ScheduleTriggerConfig tests if a specific instance of JobConfiguration_ScheduleTriggerConfig can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobConfiguration_ScheduleTriggerConfig(subject JobConfiguration_ScheduleTriggerConfig) 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.JobConfiguration_ScheduleTriggerConfig
+ err := copied.AssignProperties_To_JobConfiguration_ScheduleTriggerConfig(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobConfiguration_ScheduleTriggerConfig
+ err = actual.AssignProperties_From_JobConfiguration_ScheduleTriggerConfig(&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_JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig, JobConfiguration_ScheduleTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig runs a test to see if a specific instance of JobConfiguration_ScheduleTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig(subject JobConfiguration_ScheduleTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ScheduleTriggerConfig
+ 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 JobConfiguration_ScheduleTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_ScheduleTriggerConfigGenerator()
+var jobConfiguration_ScheduleTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_ScheduleTriggerConfigGenerator returns a generator of JobConfiguration_ScheduleTriggerConfig instances for property testing.
+func JobConfiguration_ScheduleTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_ScheduleTriggerConfigGenerator != nil {
+ return jobConfiguration_ScheduleTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig(generators)
+ jobConfiguration_ScheduleTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ScheduleTriggerConfig{}), generators)
+
+ return jobConfiguration_ScheduleTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig(gens map[string]gopter.Gen) {
+ gens["CronExpression"] = gen.PtrOf(gen.AlphaString())
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobConfiguration_ScheduleTriggerConfig_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobConfiguration_ScheduleTriggerConfig_STATUS to JobConfiguration_ScheduleTriggerConfig_STATUS via AssignProperties_To_JobConfiguration_ScheduleTriggerConfig_STATUS & AssignProperties_From_JobConfiguration_ScheduleTriggerConfig_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobConfiguration_ScheduleTriggerConfig_STATUS, JobConfiguration_ScheduleTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobConfiguration_ScheduleTriggerConfig_STATUS tests if a specific instance of JobConfiguration_ScheduleTriggerConfig_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobConfiguration_ScheduleTriggerConfig_STATUS(subject JobConfiguration_ScheduleTriggerConfig_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.JobConfiguration_ScheduleTriggerConfig_STATUS
+ err := copied.AssignProperties_To_JobConfiguration_ScheduleTriggerConfig_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobConfiguration_ScheduleTriggerConfig_STATUS
+ err = actual.AssignProperties_From_JobConfiguration_ScheduleTriggerConfig_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_JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS, JobConfiguration_ScheduleTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_ScheduleTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS(subject JobConfiguration_ScheduleTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_ScheduleTriggerConfig_STATUSGenerator()
+var jobConfiguration_ScheduleTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_ScheduleTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_ScheduleTriggerConfig_STATUS instances for property testing.
+func JobConfiguration_ScheduleTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_ScheduleTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_ScheduleTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS(generators)
+ jobConfiguration_ScheduleTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ScheduleTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_ScheduleTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["CronExpression"] = gen.PtrOf(gen.AlphaString())
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobOperatorSpec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobOperatorSpec to JobOperatorSpec via AssignProperties_To_JobOperatorSpec & AssignProperties_From_JobOperatorSpec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobOperatorSpec, JobOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobOperatorSpec tests if a specific instance of JobOperatorSpec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobOperatorSpec(subject JobOperatorSpec) 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.JobOperatorSpec
+ err := copied.AssignProperties_To_JobOperatorSpec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobOperatorSpec
+ err = actual.AssignProperties_From_JobOperatorSpec(&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_JobOperatorSpec_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 JobOperatorSpec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobOperatorSpec, JobOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobOperatorSpec runs a test to see if a specific instance of JobOperatorSpec round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobOperatorSpec(subject JobOperatorSpec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobOperatorSpec
+ 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 JobOperatorSpec instances for property testing - lazily instantiated by JobOperatorSpecGenerator()
+var jobOperatorSpecGenerator gopter.Gen
+
+// JobOperatorSpecGenerator returns a generator of JobOperatorSpec instances for property testing.
+func JobOperatorSpecGenerator() gopter.Gen {
+ if jobOperatorSpecGenerator != nil {
+ return jobOperatorSpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ jobOperatorSpecGenerator = gen.Struct(reflect.TypeOf(JobOperatorSpec{}), generators)
+
+ return jobOperatorSpecGenerator
+}
+
+func Test_JobScale_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobScale to JobScale via AssignProperties_To_JobScale & AssignProperties_From_JobScale returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobScale, JobScaleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobScale tests if a specific instance of JobScale can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobScale(subject JobScale) 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.JobScale
+ err := copied.AssignProperties_To_JobScale(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobScale
+ err = actual.AssignProperties_From_JobScale(&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_JobScale_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 JobScale via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScale, JobScaleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScale runs a test to see if a specific instance of JobScale round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScale(subject JobScale) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScale
+ 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 JobScale instances for property testing - lazily instantiated by JobScaleGenerator()
+var jobScaleGenerator gopter.Gen
+
+// JobScaleGenerator returns a generator of JobScale instances for property testing.
+// We first initialize jobScaleGenerator 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 JobScaleGenerator() gopter.Gen {
+ if jobScaleGenerator != nil {
+ return jobScaleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale(generators)
+ jobScaleGenerator = gen.Struct(reflect.TypeOf(JobScale{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale(generators)
+ AddRelatedPropertyGeneratorsForJobScale(generators)
+ jobScaleGenerator = gen.Struct(reflect.TypeOf(JobScale{}), generators)
+
+ return jobScaleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScale is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScale(gens map[string]gopter.Gen) {
+ gens["MaxExecutions"] = gen.PtrOf(gen.Int())
+ gens["MinExecutions"] = gen.PtrOf(gen.Int())
+ gens["PollingInterval"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobScale is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScale(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(JobScaleRuleGenerator())
+}
+
+func Test_JobScaleRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobScaleRule to JobScaleRule via AssignProperties_To_JobScaleRule & AssignProperties_From_JobScaleRule returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobScaleRule, JobScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobScaleRule tests if a specific instance of JobScaleRule can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobScaleRule(subject JobScaleRule) 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.JobScaleRule
+ err := copied.AssignProperties_To_JobScaleRule(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobScaleRule
+ err = actual.AssignProperties_From_JobScaleRule(&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_JobScaleRule_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 JobScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScaleRule, JobScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScaleRule runs a test to see if a specific instance of JobScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScaleRule(subject JobScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScaleRule
+ 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 JobScaleRule instances for property testing - lazily instantiated by JobScaleRuleGenerator()
+var jobScaleRuleGenerator gopter.Gen
+
+// JobScaleRuleGenerator returns a generator of JobScaleRule instances for property testing.
+// We first initialize jobScaleRuleGenerator 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 JobScaleRuleGenerator() gopter.Gen {
+ if jobScaleRuleGenerator != nil {
+ return jobScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule(generators)
+ jobScaleRuleGenerator = gen.Struct(reflect.TypeOf(JobScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule(generators)
+ AddRelatedPropertyGeneratorsForJobScaleRule(generators)
+ jobScaleRuleGenerator = gen.Struct(reflect.TypeOf(JobScaleRule{}), generators)
+
+ return jobScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScaleRule(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJobScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_JobScaleRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobScaleRule_STATUS to JobScaleRule_STATUS via AssignProperties_To_JobScaleRule_STATUS & AssignProperties_From_JobScaleRule_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobScaleRule_STATUS, JobScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobScaleRule_STATUS tests if a specific instance of JobScaleRule_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobScaleRule_STATUS(subject JobScaleRule_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.JobScaleRule_STATUS
+ err := copied.AssignProperties_To_JobScaleRule_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobScaleRule_STATUS
+ err = actual.AssignProperties_From_JobScaleRule_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_JobScaleRule_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 JobScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScaleRule_STATUS, JobScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScaleRule_STATUS runs a test to see if a specific instance of JobScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScaleRule_STATUS(subject JobScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScaleRule_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 JobScaleRule_STATUS instances for property testing - lazily instantiated by
+// JobScaleRule_STATUSGenerator()
+var jobScaleRule_STATUSGenerator gopter.Gen
+
+// JobScaleRule_STATUSGenerator returns a generator of JobScaleRule_STATUS instances for property testing.
+// We first initialize jobScaleRule_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 JobScaleRule_STATUSGenerator() gopter.Gen {
+ if jobScaleRule_STATUSGenerator != nil {
+ return jobScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ jobScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ jobScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScaleRule_STATUS{}), generators)
+
+ return jobScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJobScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_JobScale_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobScale_STATUS to JobScale_STATUS via AssignProperties_To_JobScale_STATUS & AssignProperties_From_JobScale_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobScale_STATUS, JobScale_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobScale_STATUS tests if a specific instance of JobScale_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobScale_STATUS(subject JobScale_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.JobScale_STATUS
+ err := copied.AssignProperties_To_JobScale_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobScale_STATUS
+ err = actual.AssignProperties_From_JobScale_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_JobScale_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 JobScale_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScale_STATUS, JobScale_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScale_STATUS runs a test to see if a specific instance of JobScale_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScale_STATUS(subject JobScale_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScale_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 JobScale_STATUS instances for property testing - lazily instantiated by JobScale_STATUSGenerator()
+var jobScale_STATUSGenerator gopter.Gen
+
+// JobScale_STATUSGenerator returns a generator of JobScale_STATUS instances for property testing.
+// We first initialize jobScale_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 JobScale_STATUSGenerator() gopter.Gen {
+ if jobScale_STATUSGenerator != nil {
+ return jobScale_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale_STATUS(generators)
+ jobScale_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScale_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobScale_STATUS(generators)
+ jobScale_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScale_STATUS{}), generators)
+
+ return jobScale_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScale_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScale_STATUS(gens map[string]gopter.Gen) {
+ gens["MaxExecutions"] = gen.PtrOf(gen.Int())
+ gens["MinExecutions"] = gen.PtrOf(gen.Int())
+ gens["PollingInterval"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobScale_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScale_STATUS(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(JobScaleRule_STATUSGenerator())
+}
+
+func Test_JobTemplate_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobTemplate to JobTemplate via AssignProperties_To_JobTemplate & AssignProperties_From_JobTemplate returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobTemplate, JobTemplateGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobTemplate tests if a specific instance of JobTemplate can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobTemplate(subject JobTemplate) 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.JobTemplate
+ err := copied.AssignProperties_To_JobTemplate(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobTemplate
+ err = actual.AssignProperties_From_JobTemplate(&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_JobTemplate_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 JobTemplate via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobTemplate, JobTemplateGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobTemplate runs a test to see if a specific instance of JobTemplate round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobTemplate(subject JobTemplate) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobTemplate
+ 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 JobTemplate instances for property testing - lazily instantiated by JobTemplateGenerator()
+var jobTemplateGenerator gopter.Gen
+
+// JobTemplateGenerator returns a generator of JobTemplate instances for property testing.
+func JobTemplateGenerator() gopter.Gen {
+ if jobTemplateGenerator != nil {
+ return jobTemplateGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForJobTemplate(generators)
+ jobTemplateGenerator = gen.Struct(reflect.TypeOf(JobTemplate{}), generators)
+
+ return jobTemplateGenerator
+}
+
+// AddRelatedPropertyGeneratorsForJobTemplate is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobTemplate(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(ContainerGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainerGenerator())
+ gens["Volumes"] = gen.SliceOf(VolumeGenerator())
+}
+
+func Test_JobTemplate_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from JobTemplate_STATUS to JobTemplate_STATUS via AssignProperties_To_JobTemplate_STATUS & AssignProperties_From_JobTemplate_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJobTemplate_STATUS, JobTemplate_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJobTemplate_STATUS tests if a specific instance of JobTemplate_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJobTemplate_STATUS(subject JobTemplate_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.JobTemplate_STATUS
+ err := copied.AssignProperties_To_JobTemplate_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual JobTemplate_STATUS
+ err = actual.AssignProperties_From_JobTemplate_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_JobTemplate_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 JobTemplate_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobTemplate_STATUS, JobTemplate_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobTemplate_STATUS runs a test to see if a specific instance of JobTemplate_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobTemplate_STATUS(subject JobTemplate_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobTemplate_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 JobTemplate_STATUS instances for property testing - lazily instantiated by JobTemplate_STATUSGenerator()
+var jobTemplate_STATUSGenerator gopter.Gen
+
+// JobTemplate_STATUSGenerator returns a generator of JobTemplate_STATUS instances for property testing.
+func JobTemplate_STATUSGenerator() gopter.Gen {
+ if jobTemplate_STATUSGenerator != nil {
+ return jobTemplate_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForJobTemplate_STATUS(generators)
+ jobTemplate_STATUSGenerator = gen.Struct(reflect.TypeOf(JobTemplate_STATUS{}), generators)
+
+ return jobTemplate_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForJobTemplate_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(Container_STATUSGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainer_STATUSGenerator())
+ gens["Volumes"] = gen.SliceOf(Volume_STATUSGenerator())
+}
+
+func Test_Job_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Job_STATUS to Job_STATUS via AssignProperties_To_Job_STATUS & AssignProperties_From_Job_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJob_STATUS, Job_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJob_STATUS tests if a specific instance of Job_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJob_STATUS(subject Job_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.Job_STATUS
+ err := copied.AssignProperties_To_Job_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Job_STATUS
+ err = actual.AssignProperties_From_Job_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_Job_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 Job_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob_STATUS, Job_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob_STATUS runs a test to see if a specific instance of Job_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob_STATUS(subject Job_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job_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 Job_STATUS instances for property testing - lazily instantiated by Job_STATUSGenerator()
+var job_STATUSGenerator gopter.Gen
+
+// Job_STATUSGenerator returns a generator of Job_STATUS instances for property testing.
+// We first initialize job_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 Job_STATUSGenerator() gopter.Gen {
+ if job_STATUSGenerator != nil {
+ return job_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_STATUS(generators)
+ job_STATUSGenerator = gen.Struct(reflect.TypeOf(Job_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJob_STATUS(generators)
+ job_STATUSGenerator = gen.Struct(reflect.TypeOf(Job_STATUS{}), generators)
+
+ return job_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJob_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJob_STATUS(gens map[string]gopter.Gen) {
+ gens["EnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["OutboundIpAddresses"] = gen.SliceOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.OneConstOf(
+ Job_Properties_ProvisioningState_STATUS_Canceled,
+ Job_Properties_ProvisioningState_STATUS_Deleting,
+ Job_Properties_ProvisioningState_STATUS_Failed,
+ Job_Properties_ProvisioningState_STATUS_InProgress,
+ Job_Properties_ProvisioningState_STATUS_Succeeded))
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJob_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob_STATUS(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(JobConfiguration_STATUSGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentity_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+ gens["Template"] = gen.PtrOf(JobTemplate_STATUSGenerator())
+}
+
+func Test_Job_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Job_Spec to Job_Spec via AssignProperties_To_Job_Spec & AssignProperties_From_Job_Spec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForJob_Spec, Job_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForJob_Spec tests if a specific instance of Job_Spec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForJob_Spec(subject Job_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.Job_Spec
+ err := copied.AssignProperties_To_Job_Spec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Job_Spec
+ err = actual.AssignProperties_From_Job_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_Job_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 Job_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob_Spec, Job_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob_Spec runs a test to see if a specific instance of Job_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob_Spec(subject Job_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job_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 Job_Spec instances for property testing - lazily instantiated by Job_SpecGenerator()
+var job_SpecGenerator gopter.Gen
+
+// Job_SpecGenerator returns a generator of Job_Spec instances for property testing.
+// We first initialize job_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 Job_SpecGenerator() gopter.Gen {
+ if job_SpecGenerator != nil {
+ return job_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Spec(generators)
+ job_SpecGenerator = gen.Struct(reflect.TypeOf(Job_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Spec(generators)
+ AddRelatedPropertyGeneratorsForJob_Spec(generators)
+ job_SpecGenerator = gen.Struct(reflect.TypeOf(Job_Spec{}), generators)
+
+ return job_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJob_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJob_Spec(gens map[string]gopter.Gen) {
+ gens["AzureName"] = gen.AlphaString()
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJob_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob_Spec(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(JobConfigurationGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentityGenerator())
+ gens["OperatorSpec"] = gen.PtrOf(JobOperatorSpecGenerator())
+ gens["Template"] = gen.PtrOf(JobTemplateGenerator())
+}
diff --git a/v2/api/app/v1api20240301/managed_environment_types_gen.go b/v2/api/app/v1api20240301/managed_environment_types_gen.go
new file mode 100644
index 00000000000..7633e9349d9
--- /dev/null
+++ b/v2/api/app/v1api20240301/managed_environment_types_gen.go
@@ -0,0 +1,4179 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package v1api20240301
+
+import (
+ "fmt"
+ arm "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/arm"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/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/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/secrets"
+ "github.com/rotisserie/eris"
+ 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: /app/resource-manager/Microsoft.App/stable/2024-03-01/ManagedEnvironments.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}
+type ManagedEnvironment struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty"`
+ Spec ManagedEnvironment_Spec `json:"spec,omitempty"`
+ Status ManagedEnvironment_STATUS `json:"status,omitempty"`
+}
+
+var _ conditions.Conditioner = &ManagedEnvironment{}
+
+// GetConditions returns the conditions of the resource
+func (environment *ManagedEnvironment) GetConditions() conditions.Conditions {
+ return environment.Status.Conditions
+}
+
+// SetConditions sets the conditions on the resource status
+func (environment *ManagedEnvironment) SetConditions(conditions conditions.Conditions) {
+ environment.Status.Conditions = conditions
+}
+
+var _ conversion.Convertible = &ManagedEnvironment{}
+
+// ConvertFrom populates our ManagedEnvironment from the provided hub ManagedEnvironment
+func (environment *ManagedEnvironment) ConvertFrom(hub conversion.Hub) error {
+ source, ok := hub.(*storage.ManagedEnvironment)
+ if !ok {
+ return fmt.Errorf("expected app/v1api20240301/storage/ManagedEnvironment but received %T instead", hub)
+ }
+
+ return environment.AssignProperties_From_ManagedEnvironment(source)
+}
+
+// ConvertTo populates the provided hub ManagedEnvironment from our ManagedEnvironment
+func (environment *ManagedEnvironment) ConvertTo(hub conversion.Hub) error {
+ destination, ok := hub.(*storage.ManagedEnvironment)
+ if !ok {
+ return fmt.Errorf("expected app/v1api20240301/storage/ManagedEnvironment but received %T instead", hub)
+ }
+
+ return environment.AssignProperties_To_ManagedEnvironment(destination)
+}
+
+// +kubebuilder:webhook:path=/mutate-app-azure-com-v1api20240301-managedenvironment,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=app.azure.com,resources=managedenvironments,verbs=create;update,versions=v1api20240301,name=default.v1api20240301.managedenvironments.app.azure.com,admissionReviewVersions=v1
+
+var _ admission.Defaulter = &ManagedEnvironment{}
+
+// Default applies defaults to the ManagedEnvironment resource
+func (environment *ManagedEnvironment) Default() {
+ environment.defaultImpl()
+ var temp any = environment
+ if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok {
+ runtimeDefaulter.CustomDefault()
+ }
+}
+
+// defaultAzureName defaults the Azure name of the resource to the Kubernetes name
+func (environment *ManagedEnvironment) defaultAzureName() {
+ if environment.Spec.AzureName == "" {
+ environment.Spec.AzureName = environment.Name
+ }
+}
+
+// defaultImpl applies the code generated defaults to the ManagedEnvironment resource
+func (environment *ManagedEnvironment) defaultImpl() { environment.defaultAzureName() }
+
+var _ configmaps.Exporter = &ManagedEnvironment{}
+
+// ConfigMapDestinationExpressions returns the Spec.OperatorSpec.ConfigMapExpressions property
+func (environment *ManagedEnvironment) ConfigMapDestinationExpressions() []*core.DestinationExpression {
+ if environment.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return environment.Spec.OperatorSpec.ConfigMapExpressions
+}
+
+var _ secrets.Exporter = &ManagedEnvironment{}
+
+// SecretDestinationExpressions returns the Spec.OperatorSpec.SecretExpressions property
+func (environment *ManagedEnvironment) SecretDestinationExpressions() []*core.DestinationExpression {
+ if environment.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return environment.Spec.OperatorSpec.SecretExpressions
+}
+
+var _ genruntime.ImportableResource = &ManagedEnvironment{}
+
+// InitializeSpec initializes the spec for this resource from the given status
+func (environment *ManagedEnvironment) InitializeSpec(status genruntime.ConvertibleStatus) error {
+ if s, ok := status.(*ManagedEnvironment_STATUS); ok {
+ return environment.Spec.Initialize_From_ManagedEnvironment_STATUS(s)
+ }
+
+ return fmt.Errorf("expected Status of type ManagedEnvironment_STATUS but received %T instead", status)
+}
+
+var _ genruntime.KubernetesResource = &ManagedEnvironment{}
+
+// AzureName returns the Azure name of the resource
+func (environment *ManagedEnvironment) AzureName() string {
+ return environment.Spec.AzureName
+}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (environment ManagedEnvironment) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetResourceScope returns the scope of the resource
+func (environment *ManagedEnvironment) GetResourceScope() genruntime.ResourceScope {
+ return genruntime.ResourceScopeResourceGroup
+}
+
+// GetSpec returns the specification of this resource
+func (environment *ManagedEnvironment) GetSpec() genruntime.ConvertibleSpec {
+ return &environment.Spec
+}
+
+// GetStatus returns the status of this resource
+func (environment *ManagedEnvironment) GetStatus() genruntime.ConvertibleStatus {
+ return &environment.Status
+}
+
+// GetSupportedOperations returns the operations supported by the resource
+func (environment *ManagedEnvironment) GetSupportedOperations() []genruntime.ResourceOperation {
+ return []genruntime.ResourceOperation{
+ genruntime.ResourceOperationDelete,
+ genruntime.ResourceOperationGet,
+ genruntime.ResourceOperationPut,
+ }
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/managedEnvironments"
+func (environment *ManagedEnvironment) GetType() string {
+ return "Microsoft.App/managedEnvironments"
+}
+
+// NewEmptyStatus returns a new empty (blank) status
+func (environment *ManagedEnvironment) NewEmptyStatus() genruntime.ConvertibleStatus {
+ return &ManagedEnvironment_STATUS{}
+}
+
+// Owner returns the ResourceReference of the owner
+func (environment *ManagedEnvironment) Owner() *genruntime.ResourceReference {
+ if environment.Spec.Owner == nil {
+ return nil
+ }
+
+ group, kind := genruntime.LookupOwnerGroupKind(environment.Spec)
+ return environment.Spec.Owner.AsResourceReference(group, kind)
+}
+
+// SetStatus sets the status of this resource
+func (environment *ManagedEnvironment) SetStatus(status genruntime.ConvertibleStatus) error {
+ // If we have exactly the right type of status, assign it
+ if st, ok := status.(*ManagedEnvironment_STATUS); ok {
+ environment.Status = *st
+ return nil
+ }
+
+ // Convert status to required version
+ var st ManagedEnvironment_STATUS
+ err := status.ConvertStatusTo(&st)
+ if err != nil {
+ return eris.Wrap(err, "failed to convert status")
+ }
+
+ environment.Status = st
+ return nil
+}
+
+// +kubebuilder:webhook:path=/validate-app-azure-com-v1api20240301-managedenvironment,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=app.azure.com,resources=managedenvironments,verbs=create;update,versions=v1api20240301,name=validate.v1api20240301.managedenvironments.app.azure.com,admissionReviewVersions=v1
+
+var _ admission.Validator = &ManagedEnvironment{}
+
+// ValidateCreate validates the creation of the resource
+func (environment *ManagedEnvironment) ValidateCreate() (admission.Warnings, error) {
+ validations := environment.createValidations()
+ var temp any = environment
+ if runtimeValidator, ok := temp.(genruntime.Validator); ok {
+ validations = append(validations, runtimeValidator.CreateValidations()...)
+ }
+ return genruntime.ValidateCreate(validations)
+}
+
+// ValidateDelete validates the deletion of the resource
+func (environment *ManagedEnvironment) ValidateDelete() (admission.Warnings, error) {
+ validations := environment.deleteValidations()
+ var temp any = environment
+ if runtimeValidator, ok := temp.(genruntime.Validator); ok {
+ validations = append(validations, runtimeValidator.DeleteValidations()...)
+ }
+ return genruntime.ValidateDelete(validations)
+}
+
+// ValidateUpdate validates an update of the resource
+func (environment *ManagedEnvironment) ValidateUpdate(old runtime.Object) (admission.Warnings, error) {
+ validations := environment.updateValidations()
+ var temp any = environment
+ 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 (environment *ManagedEnvironment) createValidations() []func() (admission.Warnings, error) {
+ return []func() (admission.Warnings, error){environment.validateResourceReferences, environment.validateOwnerReference, environment.validateSecretDestinations, environment.validateConfigMapDestinations}
+}
+
+// deleteValidations validates the deletion of the resource
+func (environment *ManagedEnvironment) deleteValidations() []func() (admission.Warnings, error) {
+ return nil
+}
+
+// updateValidations validates the update of the resource
+func (environment *ManagedEnvironment) updateValidations() []func(old runtime.Object) (admission.Warnings, error) {
+ return []func(old runtime.Object) (admission.Warnings, error){
+ func(old runtime.Object) (admission.Warnings, error) {
+ return environment.validateResourceReferences()
+ },
+ environment.validateWriteOnceProperties,
+ func(old runtime.Object) (admission.Warnings, error) {
+ return environment.validateOwnerReference()
+ },
+ func(old runtime.Object) (admission.Warnings, error) {
+ return environment.validateSecretDestinations()
+ },
+ func(old runtime.Object) (admission.Warnings, error) {
+ return environment.validateConfigMapDestinations()
+ },
+ }
+}
+
+// validateConfigMapDestinations validates there are no colliding genruntime.ConfigMapDestinations
+func (environment *ManagedEnvironment) validateConfigMapDestinations() (admission.Warnings, error) {
+ if environment.Spec.OperatorSpec == nil {
+ return nil, nil
+ }
+ return configmaps.ValidateDestinations(environment, nil, environment.Spec.OperatorSpec.ConfigMapExpressions)
+}
+
+// validateOwnerReference validates the owner field
+func (environment *ManagedEnvironment) validateOwnerReference() (admission.Warnings, error) {
+ return genruntime.ValidateOwner(environment)
+}
+
+// validateResourceReferences validates all resource references
+func (environment *ManagedEnvironment) validateResourceReferences() (admission.Warnings, error) {
+ refs, err := reflecthelpers.FindResourceReferences(&environment.Spec)
+ if err != nil {
+ return nil, err
+ }
+ return genruntime.ValidateResourceReferences(refs)
+}
+
+// validateSecretDestinations validates there are no colliding genruntime.SecretDestination's
+func (environment *ManagedEnvironment) validateSecretDestinations() (admission.Warnings, error) {
+ if environment.Spec.OperatorSpec == nil {
+ return nil, nil
+ }
+ return secrets.ValidateDestinations(environment, nil, environment.Spec.OperatorSpec.SecretExpressions)
+}
+
+// validateWriteOnceProperties validates all WriteOnce properties
+func (environment *ManagedEnvironment) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) {
+ oldObj, ok := old.(*ManagedEnvironment)
+ if !ok {
+ return nil, nil
+ }
+
+ return genruntime.ValidateWriteOnceProperties(oldObj, environment)
+}
+
+// AssignProperties_From_ManagedEnvironment populates our ManagedEnvironment from the provided source ManagedEnvironment
+func (environment *ManagedEnvironment) AssignProperties_From_ManagedEnvironment(source *storage.ManagedEnvironment) error {
+
+ // ObjectMeta
+ environment.ObjectMeta = *source.ObjectMeta.DeepCopy()
+
+ // Spec
+ var spec ManagedEnvironment_Spec
+ err := spec.AssignProperties_From_ManagedEnvironment_Spec(&source.Spec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironment_Spec() to populate field Spec")
+ }
+ environment.Spec = spec
+
+ // Status
+ var status ManagedEnvironment_STATUS
+ err = status.AssignProperties_From_ManagedEnvironment_STATUS(&source.Status)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironment_STATUS() to populate field Status")
+ }
+ environment.Status = status
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment populates the provided destination ManagedEnvironment from our ManagedEnvironment
+func (environment *ManagedEnvironment) AssignProperties_To_ManagedEnvironment(destination *storage.ManagedEnvironment) error {
+
+ // ObjectMeta
+ destination.ObjectMeta = *environment.ObjectMeta.DeepCopy()
+
+ // Spec
+ var spec storage.ManagedEnvironment_Spec
+ err := environment.Spec.AssignProperties_To_ManagedEnvironment_Spec(&spec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironment_Spec() to populate field Spec")
+ }
+ destination.Spec = spec
+
+ // Status
+ var status storage.ManagedEnvironment_STATUS
+ err = environment.Status.AssignProperties_To_ManagedEnvironment_STATUS(&status)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironment_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 (environment *ManagedEnvironment) OriginalGVK() *schema.GroupVersionKind {
+ return &schema.GroupVersionKind{
+ Group: GroupVersion.Group,
+ Version: environment.Spec.OriginalVersion(),
+ Kind: "ManagedEnvironment",
+ }
+}
+
+// +kubebuilder:object:root=true
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/ManagedEnvironments.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}
+type ManagedEnvironmentList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata,omitempty"`
+ Items []ManagedEnvironment `json:"items"`
+}
+
+type ManagedEnvironment_Spec struct {
+ // AppLogsConfiguration: Cluster configuration which enables the log daemon to export app logs to configured destination.
+ AppLogsConfiguration *AppLogsConfiguration `json:"appLogsConfiguration,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"`
+
+ // CustomDomainConfiguration: Custom domain configuration for the environment
+ CustomDomainConfiguration *CustomDomainConfiguration `json:"customDomainConfiguration,omitempty"`
+
+ // DaprAIConnectionString: Application Insights connection string used by Dapr to export Service to Service communication
+ // telemetry
+ DaprAIConnectionString *genruntime.SecretReference `json:"daprAIConnectionString,omitempty"`
+
+ // DaprAIInstrumentationKey: Azure Monitor instrumentation key used by Dapr to export Service to Service communication
+ // telemetry
+ DaprAIInstrumentationKey *genruntime.SecretReference `json:"daprAIInstrumentationKey,omitempty"`
+
+ // InfrastructureResourceGroup: Name of the platform-managed resource group created for the Managed Environment to host
+ // infrastructure resources. If a subnet ID is provided, this resource group will be created in the same subscription as
+ // the subnet.
+ InfrastructureResourceGroup *string `json:"infrastructureResourceGroup,omitempty"`
+
+ // Kind: Kind of the Environment.
+ Kind *string `json:"kind,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Location: The geo-location where the resource lives
+ Location *string `json:"location,omitempty"`
+
+ // OperatorSpec: The specification for configuring operator behavior. This field is interpreted by the operator and not
+ // passed directly to Azure
+ OperatorSpec *ManagedEnvironmentOperatorSpec `json:"operatorSpec,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"`
+
+ // PeerAuthentication: Peer authentication settings for the Managed Environment
+ PeerAuthentication *ManagedEnvironment_Properties_PeerAuthentication_Spec `json:"peerAuthentication,omitempty"`
+
+ // PeerTrafficConfiguration: Peer traffic settings for the Managed Environment
+ PeerTrafficConfiguration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec `json:"peerTrafficConfiguration,omitempty"`
+
+ // Tags: Resource tags.
+ Tags map[string]string `json:"tags,omitempty"`
+
+ // VnetConfiguration: Vnet configuration for the environment
+ VnetConfiguration *VnetConfiguration `json:"vnetConfiguration,omitempty"`
+
+ // WorkloadProfiles: Workload profiles configured for the Managed Environment.
+ WorkloadProfiles []WorkloadProfile `json:"workloadProfiles,omitempty"`
+
+ // ZoneRedundant: Whether or not this Managed Environment is zone-redundant.
+ ZoneRedundant *bool `json:"zoneRedundant,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ManagedEnvironment_Spec{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (environment *ManagedEnvironment_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if environment == nil {
+ return nil, nil
+ }
+ result := &arm.ManagedEnvironment_Spec{}
+
+ // Set property "Kind":
+ if environment.Kind != nil {
+ kind := *environment.Kind
+ result.Kind = &kind
+ }
+
+ // Set property "Location":
+ if environment.Location != nil {
+ location := *environment.Location
+ result.Location = &location
+ }
+
+ // Set property "Name":
+ result.Name = resolved.Name
+
+ // Set property "Properties":
+ if environment.AppLogsConfiguration != nil ||
+ environment.CustomDomainConfiguration != nil ||
+ environment.DaprAIConnectionString != nil ||
+ environment.DaprAIInstrumentationKey != nil ||
+ environment.InfrastructureResourceGroup != nil ||
+ environment.PeerAuthentication != nil ||
+ environment.PeerTrafficConfiguration != nil ||
+ environment.VnetConfiguration != nil ||
+ environment.WorkloadProfiles != nil ||
+ environment.ZoneRedundant != nil {
+ result.Properties = &arm.ManagedEnvironment_Properties_Spec{}
+ }
+ if environment.AppLogsConfiguration != nil {
+ appLogsConfiguration_ARM, err := (*environment.AppLogsConfiguration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ appLogsConfiguration := *appLogsConfiguration_ARM.(*arm.AppLogsConfiguration)
+ result.Properties.AppLogsConfiguration = &appLogsConfiguration
+ }
+ if environment.CustomDomainConfiguration != nil {
+ customDomainConfiguration_ARM, err := (*environment.CustomDomainConfiguration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ customDomainConfiguration := *customDomainConfiguration_ARM.(*arm.CustomDomainConfiguration)
+ result.Properties.CustomDomainConfiguration = &customDomainConfiguration
+ }
+ if environment.DaprAIConnectionString != nil {
+ daprAIConnectionStringSecret, err := resolved.ResolvedSecrets.Lookup(*environment.DaprAIConnectionString)
+ if err != nil {
+ return nil, eris.Wrap(err, "looking up secret for property DaprAIConnectionString")
+ }
+ daprAIConnectionString := daprAIConnectionStringSecret
+ result.Properties.DaprAIConnectionString = &daprAIConnectionString
+ }
+ if environment.DaprAIInstrumentationKey != nil {
+ daprAIInstrumentationKeySecret, err := resolved.ResolvedSecrets.Lookup(*environment.DaprAIInstrumentationKey)
+ if err != nil {
+ return nil, eris.Wrap(err, "looking up secret for property DaprAIInstrumentationKey")
+ }
+ daprAIInstrumentationKey := daprAIInstrumentationKeySecret
+ result.Properties.DaprAIInstrumentationKey = &daprAIInstrumentationKey
+ }
+ if environment.InfrastructureResourceGroup != nil {
+ infrastructureResourceGroup := *environment.InfrastructureResourceGroup
+ result.Properties.InfrastructureResourceGroup = &infrastructureResourceGroup
+ }
+ if environment.PeerAuthentication != nil {
+ peerAuthentication_ARM, err := (*environment.PeerAuthentication).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ peerAuthentication := *peerAuthentication_ARM.(*arm.ManagedEnvironment_Properties_PeerAuthentication_Spec)
+ result.Properties.PeerAuthentication = &peerAuthentication
+ }
+ if environment.PeerTrafficConfiguration != nil {
+ peerTrafficConfiguration_ARM, err := (*environment.PeerTrafficConfiguration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ peerTrafficConfiguration := *peerTrafficConfiguration_ARM.(*arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec)
+ result.Properties.PeerTrafficConfiguration = &peerTrafficConfiguration
+ }
+ if environment.VnetConfiguration != nil {
+ vnetConfiguration_ARM, err := (*environment.VnetConfiguration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ vnetConfiguration := *vnetConfiguration_ARM.(*arm.VnetConfiguration)
+ result.Properties.VnetConfiguration = &vnetConfiguration
+ }
+ for _, item := range environment.WorkloadProfiles {
+ item_ARM, err := item.ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ result.Properties.WorkloadProfiles = append(result.Properties.WorkloadProfiles, *item_ARM.(*arm.WorkloadProfile))
+ }
+ if environment.ZoneRedundant != nil {
+ zoneRedundant := *environment.ZoneRedundant
+ result.Properties.ZoneRedundant = &zoneRedundant
+ }
+
+ // Set property "Tags":
+ if environment.Tags != nil {
+ result.Tags = make(map[string]string, len(environment.Tags))
+ for key, value := range environment.Tags {
+ result.Tags[key] = value
+ }
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (environment *ManagedEnvironment_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedEnvironment_Spec{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (environment *ManagedEnvironment_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedEnvironment_Spec)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedEnvironment_Spec, got %T", armInput)
+ }
+
+ // Set property "AppLogsConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.AppLogsConfiguration != nil {
+ var appLogsConfiguration1 AppLogsConfiguration
+ err := appLogsConfiguration1.PopulateFromARM(owner, *typedInput.Properties.AppLogsConfiguration)
+ if err != nil {
+ return err
+ }
+ appLogsConfiguration := appLogsConfiguration1
+ environment.AppLogsConfiguration = &appLogsConfiguration
+ }
+ }
+
+ // Set property "AzureName":
+ environment.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name))
+
+ // Set property "CustomDomainConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.CustomDomainConfiguration != nil {
+ var customDomainConfiguration1 CustomDomainConfiguration
+ err := customDomainConfiguration1.PopulateFromARM(owner, *typedInput.Properties.CustomDomainConfiguration)
+ if err != nil {
+ return err
+ }
+ customDomainConfiguration := customDomainConfiguration1
+ environment.CustomDomainConfiguration = &customDomainConfiguration
+ }
+ }
+
+ // no assignment for property "DaprAIConnectionString"
+
+ // no assignment for property "DaprAIInstrumentationKey"
+
+ // Set property "InfrastructureResourceGroup":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.InfrastructureResourceGroup != nil {
+ infrastructureResourceGroup := *typedInput.Properties.InfrastructureResourceGroup
+ environment.InfrastructureResourceGroup = &infrastructureResourceGroup
+ }
+ }
+
+ // Set property "Kind":
+ if typedInput.Kind != nil {
+ kind := *typedInput.Kind
+ environment.Kind = &kind
+ }
+
+ // Set property "Location":
+ if typedInput.Location != nil {
+ location := *typedInput.Location
+ environment.Location = &location
+ }
+
+ // no assignment for property "OperatorSpec"
+
+ // Set property "Owner":
+ environment.Owner = &genruntime.KnownResourceReference{
+ Name: owner.Name,
+ ARMID: owner.ARMID,
+ }
+
+ // Set property "PeerAuthentication":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.PeerAuthentication != nil {
+ var peerAuthentication1 ManagedEnvironment_Properties_PeerAuthentication_Spec
+ err := peerAuthentication1.PopulateFromARM(owner, *typedInput.Properties.PeerAuthentication)
+ if err != nil {
+ return err
+ }
+ peerAuthentication := peerAuthentication1
+ environment.PeerAuthentication = &peerAuthentication
+ }
+ }
+
+ // Set property "PeerTrafficConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.PeerTrafficConfiguration != nil {
+ var peerTrafficConfiguration1 ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+ err := peerTrafficConfiguration1.PopulateFromARM(owner, *typedInput.Properties.PeerTrafficConfiguration)
+ if err != nil {
+ return err
+ }
+ peerTrafficConfiguration := peerTrafficConfiguration1
+ environment.PeerTrafficConfiguration = &peerTrafficConfiguration
+ }
+ }
+
+ // Set property "Tags":
+ if typedInput.Tags != nil {
+ environment.Tags = make(map[string]string, len(typedInput.Tags))
+ for key, value := range typedInput.Tags {
+ environment.Tags[key] = value
+ }
+ }
+
+ // Set property "VnetConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.VnetConfiguration != nil {
+ var vnetConfiguration1 VnetConfiguration
+ err := vnetConfiguration1.PopulateFromARM(owner, *typedInput.Properties.VnetConfiguration)
+ if err != nil {
+ return err
+ }
+ vnetConfiguration := vnetConfiguration1
+ environment.VnetConfiguration = &vnetConfiguration
+ }
+ }
+
+ // Set property "WorkloadProfiles":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ for _, item := range typedInput.Properties.WorkloadProfiles {
+ var item1 WorkloadProfile
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ environment.WorkloadProfiles = append(environment.WorkloadProfiles, item1)
+ }
+ }
+
+ // Set property "ZoneRedundant":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.ZoneRedundant != nil {
+ zoneRedundant := *typedInput.Properties.ZoneRedundant
+ environment.ZoneRedundant = &zoneRedundant
+ }
+ }
+
+ // No error
+ return nil
+}
+
+var _ genruntime.ConvertibleSpec = &ManagedEnvironment_Spec{}
+
+// ConvertSpecFrom populates our ManagedEnvironment_Spec from the provided source
+func (environment *ManagedEnvironment_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error {
+ src, ok := source.(*storage.ManagedEnvironment_Spec)
+ if ok {
+ // Populate our instance from source
+ return environment.AssignProperties_From_ManagedEnvironment_Spec(src)
+ }
+
+ // Convert to an intermediate form
+ src = &storage.ManagedEnvironment_Spec{}
+ err := src.ConvertSpecFrom(source)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertSpecFrom()")
+ }
+
+ // Update our instance from src
+ err = environment.AssignProperties_From_ManagedEnvironment_Spec(src)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertSpecFrom()")
+ }
+
+ return nil
+}
+
+// ConvertSpecTo populates the provided destination from our ManagedEnvironment_Spec
+func (environment *ManagedEnvironment_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error {
+ dst, ok := destination.(*storage.ManagedEnvironment_Spec)
+ if ok {
+ // Populate destination from our instance
+ return environment.AssignProperties_To_ManagedEnvironment_Spec(dst)
+ }
+
+ // Convert to an intermediate form
+ dst = &storage.ManagedEnvironment_Spec{}
+ err := environment.AssignProperties_To_ManagedEnvironment_Spec(dst)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertSpecTo()")
+ }
+
+ // Update dst from our instance
+ err = dst.ConvertSpecTo(destination)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertSpecTo()")
+ }
+
+ return nil
+}
+
+// AssignProperties_From_ManagedEnvironment_Spec populates our ManagedEnvironment_Spec from the provided source ManagedEnvironment_Spec
+func (environment *ManagedEnvironment_Spec) AssignProperties_From_ManagedEnvironment_Spec(source *storage.ManagedEnvironment_Spec) error {
+
+ // AppLogsConfiguration
+ if source.AppLogsConfiguration != nil {
+ var appLogsConfiguration AppLogsConfiguration
+ err := appLogsConfiguration.AssignProperties_From_AppLogsConfiguration(source.AppLogsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AppLogsConfiguration() to populate field AppLogsConfiguration")
+ }
+ environment.AppLogsConfiguration = &appLogsConfiguration
+ } else {
+ environment.AppLogsConfiguration = nil
+ }
+
+ // AzureName
+ environment.AzureName = source.AzureName
+
+ // CustomDomainConfiguration
+ if source.CustomDomainConfiguration != nil {
+ var customDomainConfiguration CustomDomainConfiguration
+ err := customDomainConfiguration.AssignProperties_From_CustomDomainConfiguration(source.CustomDomainConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CustomDomainConfiguration() to populate field CustomDomainConfiguration")
+ }
+ environment.CustomDomainConfiguration = &customDomainConfiguration
+ } else {
+ environment.CustomDomainConfiguration = nil
+ }
+
+ // DaprAIConnectionString
+ if source.DaprAIConnectionString != nil {
+ daprAIConnectionString := source.DaprAIConnectionString.Copy()
+ environment.DaprAIConnectionString = &daprAIConnectionString
+ } else {
+ environment.DaprAIConnectionString = nil
+ }
+
+ // DaprAIInstrumentationKey
+ if source.DaprAIInstrumentationKey != nil {
+ daprAIInstrumentationKey := source.DaprAIInstrumentationKey.Copy()
+ environment.DaprAIInstrumentationKey = &daprAIInstrumentationKey
+ } else {
+ environment.DaprAIInstrumentationKey = nil
+ }
+
+ // InfrastructureResourceGroup
+ environment.InfrastructureResourceGroup = genruntime.ClonePointerToString(source.InfrastructureResourceGroup)
+
+ // Kind
+ environment.Kind = genruntime.ClonePointerToString(source.Kind)
+
+ // Location
+ environment.Location = genruntime.ClonePointerToString(source.Location)
+
+ // OperatorSpec
+ if source.OperatorSpec != nil {
+ var operatorSpec ManagedEnvironmentOperatorSpec
+ err := operatorSpec.AssignProperties_From_ManagedEnvironmentOperatorSpec(source.OperatorSpec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironmentOperatorSpec() to populate field OperatorSpec")
+ }
+ environment.OperatorSpec = &operatorSpec
+ } else {
+ environment.OperatorSpec = nil
+ }
+
+ // Owner
+ if source.Owner != nil {
+ owner := source.Owner.Copy()
+ environment.Owner = &owner
+ } else {
+ environment.Owner = nil
+ }
+
+ // PeerAuthentication
+ if source.PeerAuthentication != nil {
+ var peerAuthentication ManagedEnvironment_Properties_PeerAuthentication_Spec
+ err := peerAuthentication.AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_Spec(source.PeerAuthentication)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_Spec() to populate field PeerAuthentication")
+ }
+ environment.PeerAuthentication = &peerAuthentication
+ } else {
+ environment.PeerAuthentication = nil
+ }
+
+ // PeerTrafficConfiguration
+ if source.PeerTrafficConfiguration != nil {
+ var peerTrafficConfiguration ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+ err := peerTrafficConfiguration.AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(source.PeerTrafficConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec() to populate field PeerTrafficConfiguration")
+ }
+ environment.PeerTrafficConfiguration = &peerTrafficConfiguration
+ } else {
+ environment.PeerTrafficConfiguration = nil
+ }
+
+ // Tags
+ environment.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // VnetConfiguration
+ if source.VnetConfiguration != nil {
+ var vnetConfiguration VnetConfiguration
+ err := vnetConfiguration.AssignProperties_From_VnetConfiguration(source.VnetConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_VnetConfiguration() to populate field VnetConfiguration")
+ }
+ environment.VnetConfiguration = &vnetConfiguration
+ } else {
+ environment.VnetConfiguration = nil
+ }
+
+ // WorkloadProfiles
+ if source.WorkloadProfiles != nil {
+ workloadProfileList := make([]WorkloadProfile, len(source.WorkloadProfiles))
+ for workloadProfileIndex, workloadProfileItem := range source.WorkloadProfiles {
+ // Shadow the loop variable to avoid aliasing
+ workloadProfileItem := workloadProfileItem
+ var workloadProfile WorkloadProfile
+ err := workloadProfile.AssignProperties_From_WorkloadProfile(&workloadProfileItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_WorkloadProfile() to populate field WorkloadProfiles")
+ }
+ workloadProfileList[workloadProfileIndex] = workloadProfile
+ }
+ environment.WorkloadProfiles = workloadProfileList
+ } else {
+ environment.WorkloadProfiles = nil
+ }
+
+ // ZoneRedundant
+ if source.ZoneRedundant != nil {
+ zoneRedundant := *source.ZoneRedundant
+ environment.ZoneRedundant = &zoneRedundant
+ } else {
+ environment.ZoneRedundant = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment_Spec populates the provided destination ManagedEnvironment_Spec from our ManagedEnvironment_Spec
+func (environment *ManagedEnvironment_Spec) AssignProperties_To_ManagedEnvironment_Spec(destination *storage.ManagedEnvironment_Spec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AppLogsConfiguration
+ if environment.AppLogsConfiguration != nil {
+ var appLogsConfiguration storage.AppLogsConfiguration
+ err := environment.AppLogsConfiguration.AssignProperties_To_AppLogsConfiguration(&appLogsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AppLogsConfiguration() to populate field AppLogsConfiguration")
+ }
+ destination.AppLogsConfiguration = &appLogsConfiguration
+ } else {
+ destination.AppLogsConfiguration = nil
+ }
+
+ // AzureName
+ destination.AzureName = environment.AzureName
+
+ // CustomDomainConfiguration
+ if environment.CustomDomainConfiguration != nil {
+ var customDomainConfiguration storage.CustomDomainConfiguration
+ err := environment.CustomDomainConfiguration.AssignProperties_To_CustomDomainConfiguration(&customDomainConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CustomDomainConfiguration() to populate field CustomDomainConfiguration")
+ }
+ destination.CustomDomainConfiguration = &customDomainConfiguration
+ } else {
+ destination.CustomDomainConfiguration = nil
+ }
+
+ // DaprAIConnectionString
+ if environment.DaprAIConnectionString != nil {
+ daprAIConnectionString := environment.DaprAIConnectionString.Copy()
+ destination.DaprAIConnectionString = &daprAIConnectionString
+ } else {
+ destination.DaprAIConnectionString = nil
+ }
+
+ // DaprAIInstrumentationKey
+ if environment.DaprAIInstrumentationKey != nil {
+ daprAIInstrumentationKey := environment.DaprAIInstrumentationKey.Copy()
+ destination.DaprAIInstrumentationKey = &daprAIInstrumentationKey
+ } else {
+ destination.DaprAIInstrumentationKey = nil
+ }
+
+ // InfrastructureResourceGroup
+ destination.InfrastructureResourceGroup = genruntime.ClonePointerToString(environment.InfrastructureResourceGroup)
+
+ // Kind
+ destination.Kind = genruntime.ClonePointerToString(environment.Kind)
+
+ // Location
+ destination.Location = genruntime.ClonePointerToString(environment.Location)
+
+ // OperatorSpec
+ if environment.OperatorSpec != nil {
+ var operatorSpec storage.ManagedEnvironmentOperatorSpec
+ err := environment.OperatorSpec.AssignProperties_To_ManagedEnvironmentOperatorSpec(&operatorSpec)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironmentOperatorSpec() to populate field OperatorSpec")
+ }
+ destination.OperatorSpec = &operatorSpec
+ } else {
+ destination.OperatorSpec = nil
+ }
+
+ // OriginalVersion
+ destination.OriginalVersion = environment.OriginalVersion()
+
+ // Owner
+ if environment.Owner != nil {
+ owner := environment.Owner.Copy()
+ destination.Owner = &owner
+ } else {
+ destination.Owner = nil
+ }
+
+ // PeerAuthentication
+ if environment.PeerAuthentication != nil {
+ var peerAuthentication storage.ManagedEnvironment_Properties_PeerAuthentication_Spec
+ err := environment.PeerAuthentication.AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_Spec(&peerAuthentication)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_Spec() to populate field PeerAuthentication")
+ }
+ destination.PeerAuthentication = &peerAuthentication
+ } else {
+ destination.PeerAuthentication = nil
+ }
+
+ // PeerTrafficConfiguration
+ if environment.PeerTrafficConfiguration != nil {
+ var peerTrafficConfiguration storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+ err := environment.PeerTrafficConfiguration.AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(&peerTrafficConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec() to populate field PeerTrafficConfiguration")
+ }
+ destination.PeerTrafficConfiguration = &peerTrafficConfiguration
+ } else {
+ destination.PeerTrafficConfiguration = nil
+ }
+
+ // Tags
+ destination.Tags = genruntime.CloneMapOfStringToString(environment.Tags)
+
+ // VnetConfiguration
+ if environment.VnetConfiguration != nil {
+ var vnetConfiguration storage.VnetConfiguration
+ err := environment.VnetConfiguration.AssignProperties_To_VnetConfiguration(&vnetConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_VnetConfiguration() to populate field VnetConfiguration")
+ }
+ destination.VnetConfiguration = &vnetConfiguration
+ } else {
+ destination.VnetConfiguration = nil
+ }
+
+ // WorkloadProfiles
+ if environment.WorkloadProfiles != nil {
+ workloadProfileList := make([]storage.WorkloadProfile, len(environment.WorkloadProfiles))
+ for workloadProfileIndex, workloadProfileItem := range environment.WorkloadProfiles {
+ // Shadow the loop variable to avoid aliasing
+ workloadProfileItem := workloadProfileItem
+ var workloadProfile storage.WorkloadProfile
+ err := workloadProfileItem.AssignProperties_To_WorkloadProfile(&workloadProfile)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_WorkloadProfile() to populate field WorkloadProfiles")
+ }
+ workloadProfileList[workloadProfileIndex] = workloadProfile
+ }
+ destination.WorkloadProfiles = workloadProfileList
+ } else {
+ destination.WorkloadProfiles = nil
+ }
+
+ // ZoneRedundant
+ if environment.ZoneRedundant != nil {
+ zoneRedundant := *environment.ZoneRedundant
+ destination.ZoneRedundant = &zoneRedundant
+ } else {
+ destination.ZoneRedundant = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ManagedEnvironment_STATUS populates our ManagedEnvironment_Spec from the provided source ManagedEnvironment_STATUS
+func (environment *ManagedEnvironment_Spec) Initialize_From_ManagedEnvironment_STATUS(source *ManagedEnvironment_STATUS) error {
+
+ // AppLogsConfiguration
+ if source.AppLogsConfiguration != nil {
+ var appLogsConfiguration AppLogsConfiguration
+ err := appLogsConfiguration.Initialize_From_AppLogsConfiguration_STATUS(source.AppLogsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_AppLogsConfiguration_STATUS() to populate field AppLogsConfiguration")
+ }
+ environment.AppLogsConfiguration = &appLogsConfiguration
+ } else {
+ environment.AppLogsConfiguration = nil
+ }
+
+ // CustomDomainConfiguration
+ if source.CustomDomainConfiguration != nil {
+ var customDomainConfiguration CustomDomainConfiguration
+ err := customDomainConfiguration.Initialize_From_CustomDomainConfiguration_STATUS(source.CustomDomainConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_CustomDomainConfiguration_STATUS() to populate field CustomDomainConfiguration")
+ }
+ environment.CustomDomainConfiguration = &customDomainConfiguration
+ } else {
+ environment.CustomDomainConfiguration = nil
+ }
+
+ // InfrastructureResourceGroup
+ environment.InfrastructureResourceGroup = genruntime.ClonePointerToString(source.InfrastructureResourceGroup)
+
+ // Kind
+ environment.Kind = genruntime.ClonePointerToString(source.Kind)
+
+ // Location
+ environment.Location = genruntime.ClonePointerToString(source.Location)
+
+ // PeerAuthentication
+ if source.PeerAuthentication != nil {
+ var peerAuthentication ManagedEnvironment_Properties_PeerAuthentication_Spec
+ err := peerAuthentication.Initialize_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS(source.PeerAuthentication)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS() to populate field PeerAuthentication")
+ }
+ environment.PeerAuthentication = &peerAuthentication
+ } else {
+ environment.PeerAuthentication = nil
+ }
+
+ // PeerTrafficConfiguration
+ if source.PeerTrafficConfiguration != nil {
+ var peerTrafficConfiguration ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+ err := peerTrafficConfiguration.Initialize_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(source.PeerTrafficConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS() to populate field PeerTrafficConfiguration")
+ }
+ environment.PeerTrafficConfiguration = &peerTrafficConfiguration
+ } else {
+ environment.PeerTrafficConfiguration = nil
+ }
+
+ // Tags
+ environment.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // VnetConfiguration
+ if source.VnetConfiguration != nil {
+ var vnetConfiguration VnetConfiguration
+ err := vnetConfiguration.Initialize_From_VnetConfiguration_STATUS(source.VnetConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_VnetConfiguration_STATUS() to populate field VnetConfiguration")
+ }
+ environment.VnetConfiguration = &vnetConfiguration
+ } else {
+ environment.VnetConfiguration = nil
+ }
+
+ // WorkloadProfiles
+ if source.WorkloadProfiles != nil {
+ workloadProfileList := make([]WorkloadProfile, len(source.WorkloadProfiles))
+ for workloadProfileIndex, workloadProfileItem := range source.WorkloadProfiles {
+ // Shadow the loop variable to avoid aliasing
+ workloadProfileItem := workloadProfileItem
+ var workloadProfile WorkloadProfile
+ err := workloadProfile.Initialize_From_WorkloadProfile_STATUS(&workloadProfileItem)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_WorkloadProfile_STATUS() to populate field WorkloadProfiles")
+ }
+ workloadProfileList[workloadProfileIndex] = workloadProfile
+ }
+ environment.WorkloadProfiles = workloadProfileList
+ } else {
+ environment.WorkloadProfiles = nil
+ }
+
+ // ZoneRedundant
+ if source.ZoneRedundant != nil {
+ zoneRedundant := *source.ZoneRedundant
+ environment.ZoneRedundant = &zoneRedundant
+ } else {
+ environment.ZoneRedundant = nil
+ }
+
+ // No error
+ return nil
+}
+
+// OriginalVersion returns the original API version used to create the resource.
+func (environment *ManagedEnvironment_Spec) OriginalVersion() string {
+ return GroupVersion.Version
+}
+
+// SetAzureName sets the Azure name of the resource
+func (environment *ManagedEnvironment_Spec) SetAzureName(azureName string) {
+ environment.AzureName = azureName
+}
+
+// An environment for hosting container apps
+type ManagedEnvironment_STATUS struct {
+ // AppLogsConfiguration: Cluster configuration which enables the log daemon to export app logs to configured destination.
+ AppLogsConfiguration *AppLogsConfiguration_STATUS `json:"appLogsConfiguration,omitempty"`
+
+ // Conditions: The observed state of the resource
+ Conditions []conditions.Condition `json:"conditions,omitempty"`
+
+ // CustomDomainConfiguration: Custom domain configuration for the environment
+ CustomDomainConfiguration *CustomDomainConfiguration_STATUS `json:"customDomainConfiguration,omitempty"`
+
+ // DaprConfiguration: The configuration of Dapr component.
+ DaprConfiguration *DaprConfiguration_STATUS `json:"daprConfiguration,omitempty"`
+
+ // DefaultDomain: Default Domain Name for the cluster
+ DefaultDomain *string `json:"defaultDomain,omitempty"`
+
+ // DeploymentErrors: Any errors that occurred during deployment or deployment validation
+ DeploymentErrors *string `json:"deploymentErrors,omitempty"`
+
+ // EventStreamEndpoint: The endpoint of the eventstream of the Environment.
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+
+ // Id: Fully qualified resource ID for the resource. Ex -
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
+ Id *string `json:"id,omitempty"`
+
+ // InfrastructureResourceGroup: Name of the platform-managed resource group created for the Managed Environment to host
+ // infrastructure resources. If a subnet ID is provided, this resource group will be created in the same subscription as
+ // the subnet.
+ InfrastructureResourceGroup *string `json:"infrastructureResourceGroup,omitempty"`
+
+ // KedaConfiguration: The configuration of Keda component.
+ KedaConfiguration *KedaConfiguration_STATUS `json:"kedaConfiguration,omitempty"`
+
+ // Kind: Kind of the Environment.
+ Kind *string `json:"kind,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"`
+
+ // PeerAuthentication: Peer authentication settings for the Managed Environment
+ PeerAuthentication *ManagedEnvironment_Properties_PeerAuthentication_STATUS `json:"peerAuthentication,omitempty"`
+
+ // PeerTrafficConfiguration: Peer traffic settings for the Managed Environment
+ PeerTrafficConfiguration *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS `json:"peerTrafficConfiguration,omitempty"`
+
+ // ProvisioningState: Provisioning state of the Environment.
+ ProvisioningState *ManagedEnvironment_Properties_ProvisioningState_STATUS `json:"provisioningState,omitempty"`
+
+ // StaticIp: Static IP of the Environment
+ StaticIp *string `json:"staticIp,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"`
+
+ // VnetConfiguration: Vnet configuration for the environment
+ VnetConfiguration *VnetConfiguration_STATUS `json:"vnetConfiguration,omitempty"`
+
+ // WorkloadProfiles: Workload profiles configured for the Managed Environment.
+ WorkloadProfiles []WorkloadProfile_STATUS `json:"workloadProfiles,omitempty"`
+
+ // ZoneRedundant: Whether or not this Managed Environment is zone-redundant.
+ ZoneRedundant *bool `json:"zoneRedundant,omitempty"`
+}
+
+var _ genruntime.ConvertibleStatus = &ManagedEnvironment_STATUS{}
+
+// ConvertStatusFrom populates our ManagedEnvironment_STATUS from the provided source
+func (environment *ManagedEnvironment_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error {
+ src, ok := source.(*storage.ManagedEnvironment_STATUS)
+ if ok {
+ // Populate our instance from source
+ return environment.AssignProperties_From_ManagedEnvironment_STATUS(src)
+ }
+
+ // Convert to an intermediate form
+ src = &storage.ManagedEnvironment_STATUS{}
+ err := src.ConvertStatusFrom(source)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertStatusFrom()")
+ }
+
+ // Update our instance from src
+ err = environment.AssignProperties_From_ManagedEnvironment_STATUS(src)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertStatusFrom()")
+ }
+
+ return nil
+}
+
+// ConvertStatusTo populates the provided destination from our ManagedEnvironment_STATUS
+func (environment *ManagedEnvironment_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error {
+ dst, ok := destination.(*storage.ManagedEnvironment_STATUS)
+ if ok {
+ // Populate destination from our instance
+ return environment.AssignProperties_To_ManagedEnvironment_STATUS(dst)
+ }
+
+ // Convert to an intermediate form
+ dst = &storage.ManagedEnvironment_STATUS{}
+ err := environment.AssignProperties_To_ManagedEnvironment_STATUS(dst)
+ if err != nil {
+ return eris.Wrap(err, "initial step of conversion in ConvertStatusTo()")
+ }
+
+ // Update dst from our instance
+ err = dst.ConvertStatusTo(destination)
+ if err != nil {
+ return eris.Wrap(err, "final step of conversion in ConvertStatusTo()")
+ }
+
+ return nil
+}
+
+var _ genruntime.FromARMConverter = &ManagedEnvironment_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (environment *ManagedEnvironment_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedEnvironment_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (environment *ManagedEnvironment_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedEnvironment_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedEnvironment_STATUS, got %T", armInput)
+ }
+
+ // Set property "AppLogsConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.AppLogsConfiguration != nil {
+ var appLogsConfiguration1 AppLogsConfiguration_STATUS
+ err := appLogsConfiguration1.PopulateFromARM(owner, *typedInput.Properties.AppLogsConfiguration)
+ if err != nil {
+ return err
+ }
+ appLogsConfiguration := appLogsConfiguration1
+ environment.AppLogsConfiguration = &appLogsConfiguration
+ }
+ }
+
+ // no assignment for property "Conditions"
+
+ // Set property "CustomDomainConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.CustomDomainConfiguration != nil {
+ var customDomainConfiguration1 CustomDomainConfiguration_STATUS
+ err := customDomainConfiguration1.PopulateFromARM(owner, *typedInput.Properties.CustomDomainConfiguration)
+ if err != nil {
+ return err
+ }
+ customDomainConfiguration := customDomainConfiguration1
+ environment.CustomDomainConfiguration = &customDomainConfiguration
+ }
+ }
+
+ // Set property "DaprConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.DaprConfiguration != nil {
+ var daprConfiguration1 DaprConfiguration_STATUS
+ err := daprConfiguration1.PopulateFromARM(owner, *typedInput.Properties.DaprConfiguration)
+ if err != nil {
+ return err
+ }
+ daprConfiguration := daprConfiguration1
+ environment.DaprConfiguration = &daprConfiguration
+ }
+ }
+
+ // Set property "DefaultDomain":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.DefaultDomain != nil {
+ defaultDomain := *typedInput.Properties.DefaultDomain
+ environment.DefaultDomain = &defaultDomain
+ }
+ }
+
+ // Set property "DeploymentErrors":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.DeploymentErrors != nil {
+ deploymentErrors := *typedInput.Properties.DeploymentErrors
+ environment.DeploymentErrors = &deploymentErrors
+ }
+ }
+
+ // Set property "EventStreamEndpoint":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.EventStreamEndpoint != nil {
+ eventStreamEndpoint := *typedInput.Properties.EventStreamEndpoint
+ environment.EventStreamEndpoint = &eventStreamEndpoint
+ }
+ }
+
+ // Set property "Id":
+ if typedInput.Id != nil {
+ id := *typedInput.Id
+ environment.Id = &id
+ }
+
+ // Set property "InfrastructureResourceGroup":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.InfrastructureResourceGroup != nil {
+ infrastructureResourceGroup := *typedInput.Properties.InfrastructureResourceGroup
+ environment.InfrastructureResourceGroup = &infrastructureResourceGroup
+ }
+ }
+
+ // Set property "KedaConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.KedaConfiguration != nil {
+ var kedaConfiguration1 KedaConfiguration_STATUS
+ err := kedaConfiguration1.PopulateFromARM(owner, *typedInput.Properties.KedaConfiguration)
+ if err != nil {
+ return err
+ }
+ kedaConfiguration := kedaConfiguration1
+ environment.KedaConfiguration = &kedaConfiguration
+ }
+ }
+
+ // Set property "Kind":
+ if typedInput.Kind != nil {
+ kind := *typedInput.Kind
+ environment.Kind = &kind
+ }
+
+ // Set property "Location":
+ if typedInput.Location != nil {
+ location := *typedInput.Location
+ environment.Location = &location
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ environment.Name = &name
+ }
+
+ // Set property "PeerAuthentication":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.PeerAuthentication != nil {
+ var peerAuthentication1 ManagedEnvironment_Properties_PeerAuthentication_STATUS
+ err := peerAuthentication1.PopulateFromARM(owner, *typedInput.Properties.PeerAuthentication)
+ if err != nil {
+ return err
+ }
+ peerAuthentication := peerAuthentication1
+ environment.PeerAuthentication = &peerAuthentication
+ }
+ }
+
+ // Set property "PeerTrafficConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.PeerTrafficConfiguration != nil {
+ var peerTrafficConfiguration1 ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+ err := peerTrafficConfiguration1.PopulateFromARM(owner, *typedInput.Properties.PeerTrafficConfiguration)
+ if err != nil {
+ return err
+ }
+ peerTrafficConfiguration := peerTrafficConfiguration1
+ environment.PeerTrafficConfiguration = &peerTrafficConfiguration
+ }
+ }
+
+ // Set property "ProvisioningState":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.ProvisioningState != nil {
+ var temp string
+ temp = string(*typedInput.Properties.ProvisioningState)
+ provisioningState := ManagedEnvironment_Properties_ProvisioningState_STATUS(temp)
+ environment.ProvisioningState = &provisioningState
+ }
+ }
+
+ // Set property "StaticIp":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.StaticIp != nil {
+ staticIp := *typedInput.Properties.StaticIp
+ environment.StaticIp = &staticIp
+ }
+ }
+
+ // Set property "SystemData":
+ if typedInput.SystemData != nil {
+ var systemData1 SystemData_STATUS
+ err := systemData1.PopulateFromARM(owner, *typedInput.SystemData)
+ if err != nil {
+ return err
+ }
+ systemData := systemData1
+ environment.SystemData = &systemData
+ }
+
+ // Set property "Tags":
+ if typedInput.Tags != nil {
+ environment.Tags = make(map[string]string, len(typedInput.Tags))
+ for key, value := range typedInput.Tags {
+ environment.Tags[key] = value
+ }
+ }
+
+ // Set property "Type":
+ if typedInput.Type != nil {
+ typeVar := *typedInput.Type
+ environment.Type = &typeVar
+ }
+
+ // Set property "VnetConfiguration":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.VnetConfiguration != nil {
+ var vnetConfiguration1 VnetConfiguration_STATUS
+ err := vnetConfiguration1.PopulateFromARM(owner, *typedInput.Properties.VnetConfiguration)
+ if err != nil {
+ return err
+ }
+ vnetConfiguration := vnetConfiguration1
+ environment.VnetConfiguration = &vnetConfiguration
+ }
+ }
+
+ // Set property "WorkloadProfiles":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ for _, item := range typedInput.Properties.WorkloadProfiles {
+ var item1 WorkloadProfile_STATUS
+ err := item1.PopulateFromARM(owner, item)
+ if err != nil {
+ return err
+ }
+ environment.WorkloadProfiles = append(environment.WorkloadProfiles, item1)
+ }
+ }
+
+ // Set property "ZoneRedundant":
+ // copying flattened property:
+ if typedInput.Properties != nil {
+ if typedInput.Properties.ZoneRedundant != nil {
+ zoneRedundant := *typedInput.Properties.ZoneRedundant
+ environment.ZoneRedundant = &zoneRedundant
+ }
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedEnvironment_STATUS populates our ManagedEnvironment_STATUS from the provided source ManagedEnvironment_STATUS
+func (environment *ManagedEnvironment_STATUS) AssignProperties_From_ManagedEnvironment_STATUS(source *storage.ManagedEnvironment_STATUS) error {
+
+ // AppLogsConfiguration
+ if source.AppLogsConfiguration != nil {
+ var appLogsConfiguration AppLogsConfiguration_STATUS
+ err := appLogsConfiguration.AssignProperties_From_AppLogsConfiguration_STATUS(source.AppLogsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_AppLogsConfiguration_STATUS() to populate field AppLogsConfiguration")
+ }
+ environment.AppLogsConfiguration = &appLogsConfiguration
+ } else {
+ environment.AppLogsConfiguration = nil
+ }
+
+ // Conditions
+ environment.Conditions = genruntime.CloneSliceOfCondition(source.Conditions)
+
+ // CustomDomainConfiguration
+ if source.CustomDomainConfiguration != nil {
+ var customDomainConfiguration CustomDomainConfiguration_STATUS
+ err := customDomainConfiguration.AssignProperties_From_CustomDomainConfiguration_STATUS(source.CustomDomainConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_CustomDomainConfiguration_STATUS() to populate field CustomDomainConfiguration")
+ }
+ environment.CustomDomainConfiguration = &customDomainConfiguration
+ } else {
+ environment.CustomDomainConfiguration = nil
+ }
+
+ // DaprConfiguration
+ if source.DaprConfiguration != nil {
+ var daprConfiguration DaprConfiguration_STATUS
+ err := daprConfiguration.AssignProperties_From_DaprConfiguration_STATUS(source.DaprConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_DaprConfiguration_STATUS() to populate field DaprConfiguration")
+ }
+ environment.DaprConfiguration = &daprConfiguration
+ } else {
+ environment.DaprConfiguration = nil
+ }
+
+ // DefaultDomain
+ environment.DefaultDomain = genruntime.ClonePointerToString(source.DefaultDomain)
+
+ // DeploymentErrors
+ environment.DeploymentErrors = genruntime.ClonePointerToString(source.DeploymentErrors)
+
+ // EventStreamEndpoint
+ environment.EventStreamEndpoint = genruntime.ClonePointerToString(source.EventStreamEndpoint)
+
+ // Id
+ environment.Id = genruntime.ClonePointerToString(source.Id)
+
+ // InfrastructureResourceGroup
+ environment.InfrastructureResourceGroup = genruntime.ClonePointerToString(source.InfrastructureResourceGroup)
+
+ // KedaConfiguration
+ if source.KedaConfiguration != nil {
+ var kedaConfiguration KedaConfiguration_STATUS
+ err := kedaConfiguration.AssignProperties_From_KedaConfiguration_STATUS(source.KedaConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_KedaConfiguration_STATUS() to populate field KedaConfiguration")
+ }
+ environment.KedaConfiguration = &kedaConfiguration
+ } else {
+ environment.KedaConfiguration = nil
+ }
+
+ // Kind
+ environment.Kind = genruntime.ClonePointerToString(source.Kind)
+
+ // Location
+ environment.Location = genruntime.ClonePointerToString(source.Location)
+
+ // Name
+ environment.Name = genruntime.ClonePointerToString(source.Name)
+
+ // PeerAuthentication
+ if source.PeerAuthentication != nil {
+ var peerAuthentication ManagedEnvironment_Properties_PeerAuthentication_STATUS
+ err := peerAuthentication.AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS(source.PeerAuthentication)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS() to populate field PeerAuthentication")
+ }
+ environment.PeerAuthentication = &peerAuthentication
+ } else {
+ environment.PeerAuthentication = nil
+ }
+
+ // PeerTrafficConfiguration
+ if source.PeerTrafficConfiguration != nil {
+ var peerTrafficConfiguration ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+ err := peerTrafficConfiguration.AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(source.PeerTrafficConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS() to populate field PeerTrafficConfiguration")
+ }
+ environment.PeerTrafficConfiguration = &peerTrafficConfiguration
+ } else {
+ environment.PeerTrafficConfiguration = nil
+ }
+
+ // ProvisioningState
+ if source.ProvisioningState != nil {
+ provisioningState := *source.ProvisioningState
+ provisioningStateTemp := genruntime.ToEnum(provisioningState, managedEnvironment_Properties_ProvisioningState_STATUS_Values)
+ environment.ProvisioningState = &provisioningStateTemp
+ } else {
+ environment.ProvisioningState = nil
+ }
+
+ // StaticIp
+ environment.StaticIp = genruntime.ClonePointerToString(source.StaticIp)
+
+ // SystemData
+ if source.SystemData != nil {
+ var systemDatum SystemData_STATUS
+ err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData")
+ }
+ environment.SystemData = &systemDatum
+ } else {
+ environment.SystemData = nil
+ }
+
+ // Tags
+ environment.Tags = genruntime.CloneMapOfStringToString(source.Tags)
+
+ // Type
+ environment.Type = genruntime.ClonePointerToString(source.Type)
+
+ // VnetConfiguration
+ if source.VnetConfiguration != nil {
+ var vnetConfiguration VnetConfiguration_STATUS
+ err := vnetConfiguration.AssignProperties_From_VnetConfiguration_STATUS(source.VnetConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_VnetConfiguration_STATUS() to populate field VnetConfiguration")
+ }
+ environment.VnetConfiguration = &vnetConfiguration
+ } else {
+ environment.VnetConfiguration = nil
+ }
+
+ // WorkloadProfiles
+ if source.WorkloadProfiles != nil {
+ workloadProfileList := make([]WorkloadProfile_STATUS, len(source.WorkloadProfiles))
+ for workloadProfileIndex, workloadProfileItem := range source.WorkloadProfiles {
+ // Shadow the loop variable to avoid aliasing
+ workloadProfileItem := workloadProfileItem
+ var workloadProfile WorkloadProfile_STATUS
+ err := workloadProfile.AssignProperties_From_WorkloadProfile_STATUS(&workloadProfileItem)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_WorkloadProfile_STATUS() to populate field WorkloadProfiles")
+ }
+ workloadProfileList[workloadProfileIndex] = workloadProfile
+ }
+ environment.WorkloadProfiles = workloadProfileList
+ } else {
+ environment.WorkloadProfiles = nil
+ }
+
+ // ZoneRedundant
+ if source.ZoneRedundant != nil {
+ zoneRedundant := *source.ZoneRedundant
+ environment.ZoneRedundant = &zoneRedundant
+ } else {
+ environment.ZoneRedundant = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment_STATUS populates the provided destination ManagedEnvironment_STATUS from our ManagedEnvironment_STATUS
+func (environment *ManagedEnvironment_STATUS) AssignProperties_To_ManagedEnvironment_STATUS(destination *storage.ManagedEnvironment_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // AppLogsConfiguration
+ if environment.AppLogsConfiguration != nil {
+ var appLogsConfiguration storage.AppLogsConfiguration_STATUS
+ err := environment.AppLogsConfiguration.AssignProperties_To_AppLogsConfiguration_STATUS(&appLogsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_AppLogsConfiguration_STATUS() to populate field AppLogsConfiguration")
+ }
+ destination.AppLogsConfiguration = &appLogsConfiguration
+ } else {
+ destination.AppLogsConfiguration = nil
+ }
+
+ // Conditions
+ destination.Conditions = genruntime.CloneSliceOfCondition(environment.Conditions)
+
+ // CustomDomainConfiguration
+ if environment.CustomDomainConfiguration != nil {
+ var customDomainConfiguration storage.CustomDomainConfiguration_STATUS
+ err := environment.CustomDomainConfiguration.AssignProperties_To_CustomDomainConfiguration_STATUS(&customDomainConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_CustomDomainConfiguration_STATUS() to populate field CustomDomainConfiguration")
+ }
+ destination.CustomDomainConfiguration = &customDomainConfiguration
+ } else {
+ destination.CustomDomainConfiguration = nil
+ }
+
+ // DaprConfiguration
+ if environment.DaprConfiguration != nil {
+ var daprConfiguration storage.DaprConfiguration_STATUS
+ err := environment.DaprConfiguration.AssignProperties_To_DaprConfiguration_STATUS(&daprConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_DaprConfiguration_STATUS() to populate field DaprConfiguration")
+ }
+ destination.DaprConfiguration = &daprConfiguration
+ } else {
+ destination.DaprConfiguration = nil
+ }
+
+ // DefaultDomain
+ destination.DefaultDomain = genruntime.ClonePointerToString(environment.DefaultDomain)
+
+ // DeploymentErrors
+ destination.DeploymentErrors = genruntime.ClonePointerToString(environment.DeploymentErrors)
+
+ // EventStreamEndpoint
+ destination.EventStreamEndpoint = genruntime.ClonePointerToString(environment.EventStreamEndpoint)
+
+ // Id
+ destination.Id = genruntime.ClonePointerToString(environment.Id)
+
+ // InfrastructureResourceGroup
+ destination.InfrastructureResourceGroup = genruntime.ClonePointerToString(environment.InfrastructureResourceGroup)
+
+ // KedaConfiguration
+ if environment.KedaConfiguration != nil {
+ var kedaConfiguration storage.KedaConfiguration_STATUS
+ err := environment.KedaConfiguration.AssignProperties_To_KedaConfiguration_STATUS(&kedaConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_KedaConfiguration_STATUS() to populate field KedaConfiguration")
+ }
+ destination.KedaConfiguration = &kedaConfiguration
+ } else {
+ destination.KedaConfiguration = nil
+ }
+
+ // Kind
+ destination.Kind = genruntime.ClonePointerToString(environment.Kind)
+
+ // Location
+ destination.Location = genruntime.ClonePointerToString(environment.Location)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(environment.Name)
+
+ // PeerAuthentication
+ if environment.PeerAuthentication != nil {
+ var peerAuthentication storage.ManagedEnvironment_Properties_PeerAuthentication_STATUS
+ err := environment.PeerAuthentication.AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_STATUS(&peerAuthentication)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_STATUS() to populate field PeerAuthentication")
+ }
+ destination.PeerAuthentication = &peerAuthentication
+ } else {
+ destination.PeerAuthentication = nil
+ }
+
+ // PeerTrafficConfiguration
+ if environment.PeerTrafficConfiguration != nil {
+ var peerTrafficConfiguration storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+ err := environment.PeerTrafficConfiguration.AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(&peerTrafficConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS() to populate field PeerTrafficConfiguration")
+ }
+ destination.PeerTrafficConfiguration = &peerTrafficConfiguration
+ } else {
+ destination.PeerTrafficConfiguration = nil
+ }
+
+ // ProvisioningState
+ if environment.ProvisioningState != nil {
+ provisioningState := string(*environment.ProvisioningState)
+ destination.ProvisioningState = &provisioningState
+ } else {
+ destination.ProvisioningState = nil
+ }
+
+ // StaticIp
+ destination.StaticIp = genruntime.ClonePointerToString(environment.StaticIp)
+
+ // SystemData
+ if environment.SystemData != nil {
+ var systemDatum storage.SystemData_STATUS
+ err := environment.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData")
+ }
+ destination.SystemData = &systemDatum
+ } else {
+ destination.SystemData = nil
+ }
+
+ // Tags
+ destination.Tags = genruntime.CloneMapOfStringToString(environment.Tags)
+
+ // Type
+ destination.Type = genruntime.ClonePointerToString(environment.Type)
+
+ // VnetConfiguration
+ if environment.VnetConfiguration != nil {
+ var vnetConfiguration storage.VnetConfiguration_STATUS
+ err := environment.VnetConfiguration.AssignProperties_To_VnetConfiguration_STATUS(&vnetConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_VnetConfiguration_STATUS() to populate field VnetConfiguration")
+ }
+ destination.VnetConfiguration = &vnetConfiguration
+ } else {
+ destination.VnetConfiguration = nil
+ }
+
+ // WorkloadProfiles
+ if environment.WorkloadProfiles != nil {
+ workloadProfileList := make([]storage.WorkloadProfile_STATUS, len(environment.WorkloadProfiles))
+ for workloadProfileIndex, workloadProfileItem := range environment.WorkloadProfiles {
+ // Shadow the loop variable to avoid aliasing
+ workloadProfileItem := workloadProfileItem
+ var workloadProfile storage.WorkloadProfile_STATUS
+ err := workloadProfileItem.AssignProperties_To_WorkloadProfile_STATUS(&workloadProfile)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_WorkloadProfile_STATUS() to populate field WorkloadProfiles")
+ }
+ workloadProfileList[workloadProfileIndex] = workloadProfile
+ }
+ destination.WorkloadProfiles = workloadProfileList
+ } else {
+ destination.WorkloadProfiles = nil
+ }
+
+ // ZoneRedundant
+ if environment.ZoneRedundant != nil {
+ zoneRedundant := *environment.ZoneRedundant
+ destination.ZoneRedundant = &zoneRedundant
+ } else {
+ destination.ZoneRedundant = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration of application logs
+type AppLogsConfiguration struct {
+ // Destination: Logs destination, can be 'log-analytics', 'azure-monitor' or 'none'
+ Destination *string `json:"destination,omitempty"`
+
+ // LogAnalyticsConfiguration: Log Analytics configuration, must only be provided when destination is configured as
+ // 'log-analytics'
+ LogAnalyticsConfiguration *LogAnalyticsConfiguration `json:"logAnalyticsConfiguration,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &AppLogsConfiguration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (configuration *AppLogsConfiguration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if configuration == nil {
+ return nil, nil
+ }
+ result := &arm.AppLogsConfiguration{}
+
+ // Set property "Destination":
+ if configuration.Destination != nil {
+ destination := *configuration.Destination
+ result.Destination = &destination
+ }
+
+ // Set property "LogAnalyticsConfiguration":
+ if configuration.LogAnalyticsConfiguration != nil {
+ logAnalyticsConfiguration_ARM, err := (*configuration.LogAnalyticsConfiguration).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ logAnalyticsConfiguration := *logAnalyticsConfiguration_ARM.(*arm.LogAnalyticsConfiguration)
+ result.LogAnalyticsConfiguration = &logAnalyticsConfiguration
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *AppLogsConfiguration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AppLogsConfiguration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *AppLogsConfiguration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AppLogsConfiguration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AppLogsConfiguration, got %T", armInput)
+ }
+
+ // Set property "Destination":
+ if typedInput.Destination != nil {
+ destination := *typedInput.Destination
+ configuration.Destination = &destination
+ }
+
+ // Set property "LogAnalyticsConfiguration":
+ if typedInput.LogAnalyticsConfiguration != nil {
+ var logAnalyticsConfiguration1 LogAnalyticsConfiguration
+ err := logAnalyticsConfiguration1.PopulateFromARM(owner, *typedInput.LogAnalyticsConfiguration)
+ if err != nil {
+ return err
+ }
+ logAnalyticsConfiguration := logAnalyticsConfiguration1
+ configuration.LogAnalyticsConfiguration = &logAnalyticsConfiguration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AppLogsConfiguration populates our AppLogsConfiguration from the provided source AppLogsConfiguration
+func (configuration *AppLogsConfiguration) AssignProperties_From_AppLogsConfiguration(source *storage.AppLogsConfiguration) error {
+
+ // Destination
+ configuration.Destination = genruntime.ClonePointerToString(source.Destination)
+
+ // LogAnalyticsConfiguration
+ if source.LogAnalyticsConfiguration != nil {
+ var logAnalyticsConfiguration LogAnalyticsConfiguration
+ err := logAnalyticsConfiguration.AssignProperties_From_LogAnalyticsConfiguration(source.LogAnalyticsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LogAnalyticsConfiguration() to populate field LogAnalyticsConfiguration")
+ }
+ configuration.LogAnalyticsConfiguration = &logAnalyticsConfiguration
+ } else {
+ configuration.LogAnalyticsConfiguration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AppLogsConfiguration populates the provided destination AppLogsConfiguration from our AppLogsConfiguration
+func (configuration *AppLogsConfiguration) AssignProperties_To_AppLogsConfiguration(destination *storage.AppLogsConfiguration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Destination
+ destination.Destination = genruntime.ClonePointerToString(configuration.Destination)
+
+ // LogAnalyticsConfiguration
+ if configuration.LogAnalyticsConfiguration != nil {
+ var logAnalyticsConfiguration storage.LogAnalyticsConfiguration
+ err := configuration.LogAnalyticsConfiguration.AssignProperties_To_LogAnalyticsConfiguration(&logAnalyticsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LogAnalyticsConfiguration() to populate field LogAnalyticsConfiguration")
+ }
+ destination.LogAnalyticsConfiguration = &logAnalyticsConfiguration
+ } else {
+ destination.LogAnalyticsConfiguration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_AppLogsConfiguration_STATUS populates our AppLogsConfiguration from the provided source AppLogsConfiguration_STATUS
+func (configuration *AppLogsConfiguration) Initialize_From_AppLogsConfiguration_STATUS(source *AppLogsConfiguration_STATUS) error {
+
+ // Destination
+ configuration.Destination = genruntime.ClonePointerToString(source.Destination)
+
+ // LogAnalyticsConfiguration
+ if source.LogAnalyticsConfiguration != nil {
+ var logAnalyticsConfiguration LogAnalyticsConfiguration
+ err := logAnalyticsConfiguration.Initialize_From_LogAnalyticsConfiguration_STATUS(source.LogAnalyticsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_LogAnalyticsConfiguration_STATUS() to populate field LogAnalyticsConfiguration")
+ }
+ configuration.LogAnalyticsConfiguration = &logAnalyticsConfiguration
+ } else {
+ configuration.LogAnalyticsConfiguration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration of application logs
+type AppLogsConfiguration_STATUS struct {
+ // Destination: Logs destination, can be 'log-analytics', 'azure-monitor' or 'none'
+ Destination *string `json:"destination,omitempty"`
+
+ // LogAnalyticsConfiguration: Log Analytics configuration, must only be provided when destination is configured as
+ // 'log-analytics'
+ LogAnalyticsConfiguration *LogAnalyticsConfiguration_STATUS `json:"logAnalyticsConfiguration,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &AppLogsConfiguration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *AppLogsConfiguration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.AppLogsConfiguration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *AppLogsConfiguration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.AppLogsConfiguration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.AppLogsConfiguration_STATUS, got %T", armInput)
+ }
+
+ // Set property "Destination":
+ if typedInput.Destination != nil {
+ destination := *typedInput.Destination
+ configuration.Destination = &destination
+ }
+
+ // Set property "LogAnalyticsConfiguration":
+ if typedInput.LogAnalyticsConfiguration != nil {
+ var logAnalyticsConfiguration1 LogAnalyticsConfiguration_STATUS
+ err := logAnalyticsConfiguration1.PopulateFromARM(owner, *typedInput.LogAnalyticsConfiguration)
+ if err != nil {
+ return err
+ }
+ logAnalyticsConfiguration := logAnalyticsConfiguration1
+ configuration.LogAnalyticsConfiguration = &logAnalyticsConfiguration
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_AppLogsConfiguration_STATUS populates our AppLogsConfiguration_STATUS from the provided source AppLogsConfiguration_STATUS
+func (configuration *AppLogsConfiguration_STATUS) AssignProperties_From_AppLogsConfiguration_STATUS(source *storage.AppLogsConfiguration_STATUS) error {
+
+ // Destination
+ configuration.Destination = genruntime.ClonePointerToString(source.Destination)
+
+ // LogAnalyticsConfiguration
+ if source.LogAnalyticsConfiguration != nil {
+ var logAnalyticsConfiguration LogAnalyticsConfiguration_STATUS
+ err := logAnalyticsConfiguration.AssignProperties_From_LogAnalyticsConfiguration_STATUS(source.LogAnalyticsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_LogAnalyticsConfiguration_STATUS() to populate field LogAnalyticsConfiguration")
+ }
+ configuration.LogAnalyticsConfiguration = &logAnalyticsConfiguration
+ } else {
+ configuration.LogAnalyticsConfiguration = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_AppLogsConfiguration_STATUS populates the provided destination AppLogsConfiguration_STATUS from our AppLogsConfiguration_STATUS
+func (configuration *AppLogsConfiguration_STATUS) AssignProperties_To_AppLogsConfiguration_STATUS(destination *storage.AppLogsConfiguration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Destination
+ destination.Destination = genruntime.ClonePointerToString(configuration.Destination)
+
+ // LogAnalyticsConfiguration
+ if configuration.LogAnalyticsConfiguration != nil {
+ var logAnalyticsConfiguration storage.LogAnalyticsConfiguration_STATUS
+ err := configuration.LogAnalyticsConfiguration.AssignProperties_To_LogAnalyticsConfiguration_STATUS(&logAnalyticsConfiguration)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_LogAnalyticsConfiguration_STATUS() to populate field LogAnalyticsConfiguration")
+ }
+ destination.LogAnalyticsConfiguration = &logAnalyticsConfiguration
+ } else {
+ destination.LogAnalyticsConfiguration = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration properties for apps environment custom domain
+type CustomDomainConfiguration struct {
+ // CertificatePassword: Certificate password
+ CertificatePassword *genruntime.SecretReference `json:"certificatePassword,omitempty"`
+
+ // CertificateValue: PFX or PEM blob
+ CertificateValue *genruntime.SecretReference `json:"certificateValue,omitempty"`
+
+ // DnsSuffix: Dns suffix for the environment domain
+ DnsSuffix *string `json:"dnsSuffix,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &CustomDomainConfiguration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (configuration *CustomDomainConfiguration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if configuration == nil {
+ return nil, nil
+ }
+ result := &arm.CustomDomainConfiguration{}
+
+ // Set property "CertificatePassword":
+ if configuration.CertificatePassword != nil {
+ certificatePasswordSecret, err := resolved.ResolvedSecrets.Lookup(*configuration.CertificatePassword)
+ if err != nil {
+ return nil, eris.Wrap(err, "looking up secret for property CertificatePassword")
+ }
+ certificatePassword := certificatePasswordSecret
+ result.CertificatePassword = &certificatePassword
+ }
+
+ // Set property "CertificateValue":
+ if configuration.CertificateValue != nil {
+ certificateValueSecret, err := resolved.ResolvedSecrets.Lookup(*configuration.CertificateValue)
+ if err != nil {
+ return nil, eris.Wrap(err, "looking up secret for property CertificateValue")
+ }
+ certificateValue := certificateValueSecret
+ result.CertificateValue = &certificateValue
+ }
+
+ // Set property "DnsSuffix":
+ if configuration.DnsSuffix != nil {
+ dnsSuffix := *configuration.DnsSuffix
+ result.DnsSuffix = &dnsSuffix
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *CustomDomainConfiguration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CustomDomainConfiguration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *CustomDomainConfiguration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CustomDomainConfiguration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CustomDomainConfiguration, got %T", armInput)
+ }
+
+ // no assignment for property "CertificatePassword"
+
+ // no assignment for property "CertificateValue"
+
+ // Set property "DnsSuffix":
+ if typedInput.DnsSuffix != nil {
+ dnsSuffix := *typedInput.DnsSuffix
+ configuration.DnsSuffix = &dnsSuffix
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CustomDomainConfiguration populates our CustomDomainConfiguration from the provided source CustomDomainConfiguration
+func (configuration *CustomDomainConfiguration) AssignProperties_From_CustomDomainConfiguration(source *storage.CustomDomainConfiguration) error {
+
+ // CertificatePassword
+ if source.CertificatePassword != nil {
+ certificatePassword := source.CertificatePassword.Copy()
+ configuration.CertificatePassword = &certificatePassword
+ } else {
+ configuration.CertificatePassword = nil
+ }
+
+ // CertificateValue
+ if source.CertificateValue != nil {
+ certificateValue := source.CertificateValue.Copy()
+ configuration.CertificateValue = &certificateValue
+ } else {
+ configuration.CertificateValue = nil
+ }
+
+ // DnsSuffix
+ configuration.DnsSuffix = genruntime.ClonePointerToString(source.DnsSuffix)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CustomDomainConfiguration populates the provided destination CustomDomainConfiguration from our CustomDomainConfiguration
+func (configuration *CustomDomainConfiguration) AssignProperties_To_CustomDomainConfiguration(destination *storage.CustomDomainConfiguration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // CertificatePassword
+ if configuration.CertificatePassword != nil {
+ certificatePassword := configuration.CertificatePassword.Copy()
+ destination.CertificatePassword = &certificatePassword
+ } else {
+ destination.CertificatePassword = nil
+ }
+
+ // CertificateValue
+ if configuration.CertificateValue != nil {
+ certificateValue := configuration.CertificateValue.Copy()
+ destination.CertificateValue = &certificateValue
+ } else {
+ destination.CertificateValue = nil
+ }
+
+ // DnsSuffix
+ destination.DnsSuffix = genruntime.ClonePointerToString(configuration.DnsSuffix)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_CustomDomainConfiguration_STATUS populates our CustomDomainConfiguration from the provided source CustomDomainConfiguration_STATUS
+func (configuration *CustomDomainConfiguration) Initialize_From_CustomDomainConfiguration_STATUS(source *CustomDomainConfiguration_STATUS) error {
+
+ // DnsSuffix
+ configuration.DnsSuffix = genruntime.ClonePointerToString(source.DnsSuffix)
+
+ // No error
+ return nil
+}
+
+// Configuration properties for apps environment custom domain
+type CustomDomainConfiguration_STATUS struct {
+ // CustomDomainVerificationId: Id used to verify domain name ownership
+ CustomDomainVerificationId *string `json:"customDomainVerificationId,omitempty"`
+
+ // DnsSuffix: Dns suffix for the environment domain
+ DnsSuffix *string `json:"dnsSuffix,omitempty"`
+
+ // ExpirationDate: Certificate expiration date.
+ ExpirationDate *string `json:"expirationDate,omitempty"`
+
+ // SubjectName: Subject name of the certificate.
+ SubjectName *string `json:"subjectName,omitempty"`
+
+ // Thumbprint: Certificate thumbprint.
+ Thumbprint *string `json:"thumbprint,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &CustomDomainConfiguration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *CustomDomainConfiguration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.CustomDomainConfiguration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *CustomDomainConfiguration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.CustomDomainConfiguration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.CustomDomainConfiguration_STATUS, got %T", armInput)
+ }
+
+ // Set property "CustomDomainVerificationId":
+ if typedInput.CustomDomainVerificationId != nil {
+ customDomainVerificationId := *typedInput.CustomDomainVerificationId
+ configuration.CustomDomainVerificationId = &customDomainVerificationId
+ }
+
+ // Set property "DnsSuffix":
+ if typedInput.DnsSuffix != nil {
+ dnsSuffix := *typedInput.DnsSuffix
+ configuration.DnsSuffix = &dnsSuffix
+ }
+
+ // Set property "ExpirationDate":
+ if typedInput.ExpirationDate != nil {
+ expirationDate := *typedInput.ExpirationDate
+ configuration.ExpirationDate = &expirationDate
+ }
+
+ // Set property "SubjectName":
+ if typedInput.SubjectName != nil {
+ subjectName := *typedInput.SubjectName
+ configuration.SubjectName = &subjectName
+ }
+
+ // Set property "Thumbprint":
+ if typedInput.Thumbprint != nil {
+ thumbprint := *typedInput.Thumbprint
+ configuration.Thumbprint = &thumbprint
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_CustomDomainConfiguration_STATUS populates our CustomDomainConfiguration_STATUS from the provided source CustomDomainConfiguration_STATUS
+func (configuration *CustomDomainConfiguration_STATUS) AssignProperties_From_CustomDomainConfiguration_STATUS(source *storage.CustomDomainConfiguration_STATUS) error {
+
+ // CustomDomainVerificationId
+ configuration.CustomDomainVerificationId = genruntime.ClonePointerToString(source.CustomDomainVerificationId)
+
+ // DnsSuffix
+ configuration.DnsSuffix = genruntime.ClonePointerToString(source.DnsSuffix)
+
+ // ExpirationDate
+ configuration.ExpirationDate = genruntime.ClonePointerToString(source.ExpirationDate)
+
+ // SubjectName
+ configuration.SubjectName = genruntime.ClonePointerToString(source.SubjectName)
+
+ // Thumbprint
+ configuration.Thumbprint = genruntime.ClonePointerToString(source.Thumbprint)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_CustomDomainConfiguration_STATUS populates the provided destination CustomDomainConfiguration_STATUS from our CustomDomainConfiguration_STATUS
+func (configuration *CustomDomainConfiguration_STATUS) AssignProperties_To_CustomDomainConfiguration_STATUS(destination *storage.CustomDomainConfiguration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // CustomDomainVerificationId
+ destination.CustomDomainVerificationId = genruntime.ClonePointerToString(configuration.CustomDomainVerificationId)
+
+ // DnsSuffix
+ destination.DnsSuffix = genruntime.ClonePointerToString(configuration.DnsSuffix)
+
+ // ExpirationDate
+ destination.ExpirationDate = genruntime.ClonePointerToString(configuration.ExpirationDate)
+
+ // SubjectName
+ destination.SubjectName = genruntime.ClonePointerToString(configuration.SubjectName)
+
+ // Thumbprint
+ destination.Thumbprint = genruntime.ClonePointerToString(configuration.Thumbprint)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration properties Dapr component
+type DaprConfiguration_STATUS struct {
+ // Version: The version of Dapr
+ Version *string `json:"version,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &DaprConfiguration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *DaprConfiguration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.DaprConfiguration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *DaprConfiguration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.DaprConfiguration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.DaprConfiguration_STATUS, got %T", armInput)
+ }
+
+ // Set property "Version":
+ if typedInput.Version != nil {
+ version := *typedInput.Version
+ configuration.Version = &version
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_DaprConfiguration_STATUS populates our DaprConfiguration_STATUS from the provided source DaprConfiguration_STATUS
+func (configuration *DaprConfiguration_STATUS) AssignProperties_From_DaprConfiguration_STATUS(source *storage.DaprConfiguration_STATUS) error {
+
+ // Version
+ configuration.Version = genruntime.ClonePointerToString(source.Version)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_DaprConfiguration_STATUS populates the provided destination DaprConfiguration_STATUS from our DaprConfiguration_STATUS
+func (configuration *DaprConfiguration_STATUS) AssignProperties_To_DaprConfiguration_STATUS(destination *storage.DaprConfiguration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Version
+ destination.Version = genruntime.ClonePointerToString(configuration.Version)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration properties Keda component
+type KedaConfiguration_STATUS struct {
+ // Version: The version of Keda
+ Version *string `json:"version,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &KedaConfiguration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *KedaConfiguration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.KedaConfiguration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *KedaConfiguration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.KedaConfiguration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.KedaConfiguration_STATUS, got %T", armInput)
+ }
+
+ // Set property "Version":
+ if typedInput.Version != nil {
+ version := *typedInput.Version
+ configuration.Version = &version
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_KedaConfiguration_STATUS populates our KedaConfiguration_STATUS from the provided source KedaConfiguration_STATUS
+func (configuration *KedaConfiguration_STATUS) AssignProperties_From_KedaConfiguration_STATUS(source *storage.KedaConfiguration_STATUS) error {
+
+ // Version
+ configuration.Version = genruntime.ClonePointerToString(source.Version)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_KedaConfiguration_STATUS populates the provided destination KedaConfiguration_STATUS from our KedaConfiguration_STATUS
+func (configuration *KedaConfiguration_STATUS) AssignProperties_To_KedaConfiguration_STATUS(destination *storage.KedaConfiguration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Version
+ destination.Version = genruntime.ClonePointerToString(configuration.Version)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ManagedEnvironment_Properties_PeerAuthentication_Spec struct {
+ // Mtls: Mutual TLS authentication settings for the Managed Environment
+ Mtls *Mtls `json:"mtls,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ManagedEnvironment_Properties_PeerAuthentication_Spec{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if authentication == nil {
+ return nil, nil
+ }
+ result := &arm.ManagedEnvironment_Properties_PeerAuthentication_Spec{}
+
+ // Set property "Mtls":
+ if authentication.Mtls != nil {
+ mtls_ARM, err := (*authentication.Mtls).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ mtls := *mtls_ARM.(*arm.Mtls)
+ result.Mtls = &mtls
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedEnvironment_Properties_PeerAuthentication_Spec{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedEnvironment_Properties_PeerAuthentication_Spec)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedEnvironment_Properties_PeerAuthentication_Spec, got %T", armInput)
+ }
+
+ // Set property "Mtls":
+ if typedInput.Mtls != nil {
+ var mtls1 Mtls
+ err := mtls1.PopulateFromARM(owner, *typedInput.Mtls)
+ if err != nil {
+ return err
+ }
+ mtls := mtls1
+ authentication.Mtls = &mtls
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_Spec populates our ManagedEnvironment_Properties_PeerAuthentication_Spec from the provided source ManagedEnvironment_Properties_PeerAuthentication_Spec
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_Spec) AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_Spec(source *storage.ManagedEnvironment_Properties_PeerAuthentication_Spec) error {
+
+ // Mtls
+ if source.Mtls != nil {
+ var mtl Mtls
+ err := mtl.AssignProperties_From_Mtls(source.Mtls)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Mtls() to populate field Mtls")
+ }
+ authentication.Mtls = &mtl
+ } else {
+ authentication.Mtls = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_Spec populates the provided destination ManagedEnvironment_Properties_PeerAuthentication_Spec from our ManagedEnvironment_Properties_PeerAuthentication_Spec
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_Spec) AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_Spec(destination *storage.ManagedEnvironment_Properties_PeerAuthentication_Spec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Mtls
+ if authentication.Mtls != nil {
+ var mtl storage.Mtls
+ err := authentication.Mtls.AssignProperties_To_Mtls(&mtl)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Mtls() to populate field Mtls")
+ }
+ destination.Mtls = &mtl
+ } else {
+ destination.Mtls = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS populates our ManagedEnvironment_Properties_PeerAuthentication_Spec from the provided source ManagedEnvironment_Properties_PeerAuthentication_STATUS
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_Spec) Initialize_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS(source *ManagedEnvironment_Properties_PeerAuthentication_STATUS) error {
+
+ // Mtls
+ if source.Mtls != nil {
+ var mtl Mtls
+ err := mtl.Initialize_From_Mtls_STATUS(source.Mtls)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_Mtls_STATUS() to populate field Mtls")
+ }
+ authentication.Mtls = &mtl
+ } else {
+ authentication.Mtls = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ManagedEnvironment_Properties_PeerAuthentication_STATUS struct {
+ // Mtls: Mutual TLS authentication settings for the Managed Environment
+ Mtls *Mtls_STATUS `json:"mtls,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ManagedEnvironment_Properties_PeerAuthentication_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedEnvironment_Properties_PeerAuthentication_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedEnvironment_Properties_PeerAuthentication_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedEnvironment_Properties_PeerAuthentication_STATUS, got %T", armInput)
+ }
+
+ // Set property "Mtls":
+ if typedInput.Mtls != nil {
+ var mtls1 Mtls_STATUS
+ err := mtls1.PopulateFromARM(owner, *typedInput.Mtls)
+ if err != nil {
+ return err
+ }
+ mtls := mtls1
+ authentication.Mtls = &mtls
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS populates our ManagedEnvironment_Properties_PeerAuthentication_STATUS from the provided source ManagedEnvironment_Properties_PeerAuthentication_STATUS
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_STATUS) AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS(source *storage.ManagedEnvironment_Properties_PeerAuthentication_STATUS) error {
+
+ // Mtls
+ if source.Mtls != nil {
+ var mtl Mtls_STATUS
+ err := mtl.AssignProperties_From_Mtls_STATUS(source.Mtls)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_Mtls_STATUS() to populate field Mtls")
+ }
+ authentication.Mtls = &mtl
+ } else {
+ authentication.Mtls = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_STATUS populates the provided destination ManagedEnvironment_Properties_PeerAuthentication_STATUS from our ManagedEnvironment_Properties_PeerAuthentication_STATUS
+func (authentication *ManagedEnvironment_Properties_PeerAuthentication_STATUS) AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_STATUS(destination *storage.ManagedEnvironment_Properties_PeerAuthentication_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Mtls
+ if authentication.Mtls != nil {
+ var mtl storage.Mtls_STATUS
+ err := authentication.Mtls.AssignProperties_To_Mtls_STATUS(&mtl)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_Mtls_STATUS() to populate field Mtls")
+ }
+ destination.Mtls = &mtl
+ } else {
+ destination.Mtls = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec struct {
+ // Encryption: Peer traffic encryption settings for the Managed Environment
+ Encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec `json:"encryption,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if configuration == nil {
+ return nil, nil
+ }
+ result := &arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec{}
+
+ // Set property "Encryption":
+ if configuration.Encryption != nil {
+ encryption_ARM, err := (*configuration.Encryption).ConvertToARM(resolved)
+ if err != nil {
+ return nil, err
+ }
+ encryption := *encryption_ARM.(*arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec)
+ result.Encryption = &encryption
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec, got %T", armInput)
+ }
+
+ // Set property "Encryption":
+ if typedInput.Encryption != nil {
+ var encryption1 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+ err := encryption1.PopulateFromARM(owner, *typedInput.Encryption)
+ if err != nil {
+ return err
+ }
+ encryption := encryption1
+ configuration.Encryption = &encryption
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec populates our ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec from the provided source ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(source *storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) error {
+
+ // Encryption
+ if source.Encryption != nil {
+ var encryption ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+ err := encryption.AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(source.Encryption)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec() to populate field Encryption")
+ }
+ configuration.Encryption = &encryption
+ } else {
+ configuration.Encryption = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec populates the provided destination ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec from our ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(destination *storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Encryption
+ if configuration.Encryption != nil {
+ var encryption storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+ err := configuration.Encryption.AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(&encryption)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec() to populate field Encryption")
+ }
+ destination.Encryption = &encryption
+ } else {
+ destination.Encryption = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS populates our ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec from the provided source ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) Initialize_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(source *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) error {
+
+ // Encryption
+ if source.Encryption != nil {
+ var encryption ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+ err := encryption.Initialize_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(source.Encryption)
+ if err != nil {
+ return eris.Wrap(err, "calling Initialize_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS() to populate field Encryption")
+ }
+ configuration.Encryption = &encryption
+ } else {
+ configuration.Encryption = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS struct {
+ // Encryption: Peer traffic encryption settings for the Managed Environment
+ Encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS `json:"encryption,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS, got %T", armInput)
+ }
+
+ // Set property "Encryption":
+ if typedInput.Encryption != nil {
+ var encryption1 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+ err := encryption1.PopulateFromARM(owner, *typedInput.Encryption)
+ if err != nil {
+ return err
+ }
+ encryption := encryption1
+ configuration.Encryption = &encryption
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS populates our ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS from the provided source ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(source *storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) error {
+
+ // Encryption
+ if source.Encryption != nil {
+ var encryption ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+ err := encryption.AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(source.Encryption)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS() to populate field Encryption")
+ }
+ configuration.Encryption = &encryption
+ } else {
+ configuration.Encryption = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS populates the provided destination ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS from our ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+func (configuration *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(destination *storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Encryption
+ if configuration.Encryption != nil {
+ var encryption storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+ err := configuration.Encryption.AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(&encryption)
+ if err != nil {
+ return eris.Wrap(err, "calling AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS() to populate field Encryption")
+ }
+ destination.Encryption = &encryption
+ } else {
+ destination.Encryption = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ManagedEnvironment_Properties_ProvisioningState_STATUS string
+
+const (
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Canceled = ManagedEnvironment_Properties_ProvisioningState_STATUS("Canceled")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Failed = ManagedEnvironment_Properties_ProvisioningState_STATUS("Failed")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupComplete = ManagedEnvironment_Properties_ProvisioningState_STATUS("InfrastructureSetupComplete")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupInProgress = ManagedEnvironment_Properties_ProvisioningState_STATUS("InfrastructureSetupInProgress")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InitializationInProgress = ManagedEnvironment_Properties_ProvisioningState_STATUS("InitializationInProgress")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_ScheduledForDelete = ManagedEnvironment_Properties_ProvisioningState_STATUS("ScheduledForDelete")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Succeeded = ManagedEnvironment_Properties_ProvisioningState_STATUS("Succeeded")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeFailed = ManagedEnvironment_Properties_ProvisioningState_STATUS("UpgradeFailed")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeRequested = ManagedEnvironment_Properties_ProvisioningState_STATUS("UpgradeRequested")
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Waiting = ManagedEnvironment_Properties_ProvisioningState_STATUS("Waiting")
+)
+
+// Mapping from string to ManagedEnvironment_Properties_ProvisioningState_STATUS
+var managedEnvironment_Properties_ProvisioningState_STATUS_Values = map[string]ManagedEnvironment_Properties_ProvisioningState_STATUS{
+ "canceled": ManagedEnvironment_Properties_ProvisioningState_STATUS_Canceled,
+ "failed": ManagedEnvironment_Properties_ProvisioningState_STATUS_Failed,
+ "infrastructuresetupcomplete": ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupComplete,
+ "infrastructuresetupinprogress": ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupInProgress,
+ "initializationinprogress": ManagedEnvironment_Properties_ProvisioningState_STATUS_InitializationInProgress,
+ "scheduledfordelete": ManagedEnvironment_Properties_ProvisioningState_STATUS_ScheduledForDelete,
+ "succeeded": ManagedEnvironment_Properties_ProvisioningState_STATUS_Succeeded,
+ "upgradefailed": ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeFailed,
+ "upgraderequested": ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeRequested,
+ "waiting": ManagedEnvironment_Properties_ProvisioningState_STATUS_Waiting,
+}
+
+// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure
+type ManagedEnvironmentOperatorSpec struct {
+ // ConfigMapExpressions: configures where to place operator written dynamic ConfigMaps (created with CEL expressions).
+ ConfigMapExpressions []*core.DestinationExpression `json:"configMapExpressions,omitempty"`
+
+ // SecretExpressions: configures where to place operator written dynamic secrets (created with CEL expressions).
+ SecretExpressions []*core.DestinationExpression `json:"secretExpressions,omitempty"`
+}
+
+// AssignProperties_From_ManagedEnvironmentOperatorSpec populates our ManagedEnvironmentOperatorSpec from the provided source ManagedEnvironmentOperatorSpec
+func (operator *ManagedEnvironmentOperatorSpec) AssignProperties_From_ManagedEnvironmentOperatorSpec(source *storage.ManagedEnvironmentOperatorSpec) error {
+
+ // ConfigMapExpressions
+ if source.ConfigMapExpressions != nil {
+ configMapExpressionList := make([]*core.DestinationExpression, len(source.ConfigMapExpressions))
+ for configMapExpressionIndex, configMapExpressionItem := range source.ConfigMapExpressions {
+ // Shadow the loop variable to avoid aliasing
+ configMapExpressionItem := configMapExpressionItem
+ if configMapExpressionItem != nil {
+ configMapExpression := *configMapExpressionItem.DeepCopy()
+ configMapExpressionList[configMapExpressionIndex] = &configMapExpression
+ } else {
+ configMapExpressionList[configMapExpressionIndex] = nil
+ }
+ }
+ operator.ConfigMapExpressions = configMapExpressionList
+ } else {
+ operator.ConfigMapExpressions = nil
+ }
+
+ // SecretExpressions
+ if source.SecretExpressions != nil {
+ secretExpressionList := make([]*core.DestinationExpression, len(source.SecretExpressions))
+ for secretExpressionIndex, secretExpressionItem := range source.SecretExpressions {
+ // Shadow the loop variable to avoid aliasing
+ secretExpressionItem := secretExpressionItem
+ if secretExpressionItem != nil {
+ secretExpression := *secretExpressionItem.DeepCopy()
+ secretExpressionList[secretExpressionIndex] = &secretExpression
+ } else {
+ secretExpressionList[secretExpressionIndex] = nil
+ }
+ }
+ operator.SecretExpressions = secretExpressionList
+ } else {
+ operator.SecretExpressions = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironmentOperatorSpec populates the provided destination ManagedEnvironmentOperatorSpec from our ManagedEnvironmentOperatorSpec
+func (operator *ManagedEnvironmentOperatorSpec) AssignProperties_To_ManagedEnvironmentOperatorSpec(destination *storage.ManagedEnvironmentOperatorSpec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // ConfigMapExpressions
+ if operator.ConfigMapExpressions != nil {
+ configMapExpressionList := make([]*core.DestinationExpression, len(operator.ConfigMapExpressions))
+ for configMapExpressionIndex, configMapExpressionItem := range operator.ConfigMapExpressions {
+ // Shadow the loop variable to avoid aliasing
+ configMapExpressionItem := configMapExpressionItem
+ if configMapExpressionItem != nil {
+ configMapExpression := *configMapExpressionItem.DeepCopy()
+ configMapExpressionList[configMapExpressionIndex] = &configMapExpression
+ } else {
+ configMapExpressionList[configMapExpressionIndex] = nil
+ }
+ }
+ destination.ConfigMapExpressions = configMapExpressionList
+ } else {
+ destination.ConfigMapExpressions = nil
+ }
+
+ // SecretExpressions
+ if operator.SecretExpressions != nil {
+ secretExpressionList := make([]*core.DestinationExpression, len(operator.SecretExpressions))
+ for secretExpressionIndex, secretExpressionItem := range operator.SecretExpressions {
+ // Shadow the loop variable to avoid aliasing
+ secretExpressionItem := secretExpressionItem
+ if secretExpressionItem != nil {
+ secretExpression := *secretExpressionItem.DeepCopy()
+ secretExpressionList[secretExpressionIndex] = &secretExpression
+ } else {
+ secretExpressionList[secretExpressionIndex] = nil
+ }
+ }
+ destination.SecretExpressions = secretExpressionList
+ } else {
+ destination.SecretExpressions = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration properties for apps environment to join a Virtual Network
+type VnetConfiguration struct {
+ // DockerBridgeCidr: CIDR notation IP range assigned to the Docker bridge, network. Must not overlap with any other
+ // provided IP ranges.
+ DockerBridgeCidr *string `json:"dockerBridgeCidr,omitempty"`
+
+ // InfrastructureSubnetReference: Resource ID of a subnet for infrastructure components. Must not overlap with any other
+ // provided IP ranges.
+ InfrastructureSubnetReference *genruntime.ResourceReference `armReference:"InfrastructureSubnetId" json:"infrastructureSubnetReference,omitempty"`
+
+ // Internal: Boolean indicating the environment only has an internal load balancer. These environments do not have a public
+ // static IP resource. They must provide infrastructureSubnetId if enabling this property
+ Internal *bool `json:"internal,omitempty"`
+
+ // PlatformReservedCidr: IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. Must
+ // not overlap with any other provided IP ranges.
+ PlatformReservedCidr *string `json:"platformReservedCidr,omitempty"`
+
+ // PlatformReservedDnsIP: An IP address from the IP range defined by platformReservedCidr that will be reserved for the
+ // internal DNS server.
+ PlatformReservedDnsIP *string `json:"platformReservedDnsIP,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &VnetConfiguration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (configuration *VnetConfiguration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if configuration == nil {
+ return nil, nil
+ }
+ result := &arm.VnetConfiguration{}
+
+ // Set property "DockerBridgeCidr":
+ if configuration.DockerBridgeCidr != nil {
+ dockerBridgeCidr := *configuration.DockerBridgeCidr
+ result.DockerBridgeCidr = &dockerBridgeCidr
+ }
+
+ // Set property "InfrastructureSubnetId":
+ if configuration.InfrastructureSubnetReference != nil {
+ infrastructureSubnetReferenceARMID, err := resolved.ResolvedReferences.Lookup(*configuration.InfrastructureSubnetReference)
+ if err != nil {
+ return nil, err
+ }
+ infrastructureSubnetReference := infrastructureSubnetReferenceARMID
+ result.InfrastructureSubnetId = &infrastructureSubnetReference
+ }
+
+ // Set property "Internal":
+ if configuration.Internal != nil {
+ internal := *configuration.Internal
+ result.Internal = &internal
+ }
+
+ // Set property "PlatformReservedCidr":
+ if configuration.PlatformReservedCidr != nil {
+ platformReservedCidr := *configuration.PlatformReservedCidr
+ result.PlatformReservedCidr = &platformReservedCidr
+ }
+
+ // Set property "PlatformReservedDnsIP":
+ if configuration.PlatformReservedDnsIP != nil {
+ platformReservedDnsIP := *configuration.PlatformReservedDnsIP
+ result.PlatformReservedDnsIP = &platformReservedDnsIP
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *VnetConfiguration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.VnetConfiguration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *VnetConfiguration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.VnetConfiguration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.VnetConfiguration, got %T", armInput)
+ }
+
+ // Set property "DockerBridgeCidr":
+ if typedInput.DockerBridgeCidr != nil {
+ dockerBridgeCidr := *typedInput.DockerBridgeCidr
+ configuration.DockerBridgeCidr = &dockerBridgeCidr
+ }
+
+ // no assignment for property "InfrastructureSubnetReference"
+
+ // Set property "Internal":
+ if typedInput.Internal != nil {
+ internal := *typedInput.Internal
+ configuration.Internal = &internal
+ }
+
+ // Set property "PlatformReservedCidr":
+ if typedInput.PlatformReservedCidr != nil {
+ platformReservedCidr := *typedInput.PlatformReservedCidr
+ configuration.PlatformReservedCidr = &platformReservedCidr
+ }
+
+ // Set property "PlatformReservedDnsIP":
+ if typedInput.PlatformReservedDnsIP != nil {
+ platformReservedDnsIP := *typedInput.PlatformReservedDnsIP
+ configuration.PlatformReservedDnsIP = &platformReservedDnsIP
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_VnetConfiguration populates our VnetConfiguration from the provided source VnetConfiguration
+func (configuration *VnetConfiguration) AssignProperties_From_VnetConfiguration(source *storage.VnetConfiguration) error {
+
+ // DockerBridgeCidr
+ configuration.DockerBridgeCidr = genruntime.ClonePointerToString(source.DockerBridgeCidr)
+
+ // InfrastructureSubnetReference
+ if source.InfrastructureSubnetReference != nil {
+ infrastructureSubnetReference := source.InfrastructureSubnetReference.Copy()
+ configuration.InfrastructureSubnetReference = &infrastructureSubnetReference
+ } else {
+ configuration.InfrastructureSubnetReference = nil
+ }
+
+ // Internal
+ if source.Internal != nil {
+ internal := *source.Internal
+ configuration.Internal = &internal
+ } else {
+ configuration.Internal = nil
+ }
+
+ // PlatformReservedCidr
+ configuration.PlatformReservedCidr = genruntime.ClonePointerToString(source.PlatformReservedCidr)
+
+ // PlatformReservedDnsIP
+ configuration.PlatformReservedDnsIP = genruntime.ClonePointerToString(source.PlatformReservedDnsIP)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_VnetConfiguration populates the provided destination VnetConfiguration from our VnetConfiguration
+func (configuration *VnetConfiguration) AssignProperties_To_VnetConfiguration(destination *storage.VnetConfiguration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // DockerBridgeCidr
+ destination.DockerBridgeCidr = genruntime.ClonePointerToString(configuration.DockerBridgeCidr)
+
+ // InfrastructureSubnetReference
+ if configuration.InfrastructureSubnetReference != nil {
+ infrastructureSubnetReference := configuration.InfrastructureSubnetReference.Copy()
+ destination.InfrastructureSubnetReference = &infrastructureSubnetReference
+ } else {
+ destination.InfrastructureSubnetReference = nil
+ }
+
+ // Internal
+ if configuration.Internal != nil {
+ internal := *configuration.Internal
+ destination.Internal = &internal
+ } else {
+ destination.Internal = nil
+ }
+
+ // PlatformReservedCidr
+ destination.PlatformReservedCidr = genruntime.ClonePointerToString(configuration.PlatformReservedCidr)
+
+ // PlatformReservedDnsIP
+ destination.PlatformReservedDnsIP = genruntime.ClonePointerToString(configuration.PlatformReservedDnsIP)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_VnetConfiguration_STATUS populates our VnetConfiguration from the provided source VnetConfiguration_STATUS
+func (configuration *VnetConfiguration) Initialize_From_VnetConfiguration_STATUS(source *VnetConfiguration_STATUS) error {
+
+ // DockerBridgeCidr
+ configuration.DockerBridgeCidr = genruntime.ClonePointerToString(source.DockerBridgeCidr)
+
+ // InfrastructureSubnetReference
+ if source.InfrastructureSubnetId != nil {
+ infrastructureSubnetReference := genruntime.CreateResourceReferenceFromARMID(*source.InfrastructureSubnetId)
+ configuration.InfrastructureSubnetReference = &infrastructureSubnetReference
+ } else {
+ configuration.InfrastructureSubnetReference = nil
+ }
+
+ // Internal
+ if source.Internal != nil {
+ internal := *source.Internal
+ configuration.Internal = &internal
+ } else {
+ configuration.Internal = nil
+ }
+
+ // PlatformReservedCidr
+ configuration.PlatformReservedCidr = genruntime.ClonePointerToString(source.PlatformReservedCidr)
+
+ // PlatformReservedDnsIP
+ configuration.PlatformReservedDnsIP = genruntime.ClonePointerToString(source.PlatformReservedDnsIP)
+
+ // No error
+ return nil
+}
+
+// Configuration properties for apps environment to join a Virtual Network
+type VnetConfiguration_STATUS struct {
+ // DockerBridgeCidr: CIDR notation IP range assigned to the Docker bridge, network. Must not overlap with any other
+ // provided IP ranges.
+ DockerBridgeCidr *string `json:"dockerBridgeCidr,omitempty"`
+
+ // InfrastructureSubnetId: Resource ID of a subnet for infrastructure components. Must not overlap with any other provided
+ // IP ranges.
+ InfrastructureSubnetId *string `json:"infrastructureSubnetId,omitempty"`
+
+ // Internal: Boolean indicating the environment only has an internal load balancer. These environments do not have a public
+ // static IP resource. They must provide infrastructureSubnetId if enabling this property
+ Internal *bool `json:"internal,omitempty"`
+
+ // PlatformReservedCidr: IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. Must
+ // not overlap with any other provided IP ranges.
+ PlatformReservedCidr *string `json:"platformReservedCidr,omitempty"`
+
+ // PlatformReservedDnsIP: An IP address from the IP range defined by platformReservedCidr that will be reserved for the
+ // internal DNS server.
+ PlatformReservedDnsIP *string `json:"platformReservedDnsIP,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &VnetConfiguration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *VnetConfiguration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.VnetConfiguration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *VnetConfiguration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.VnetConfiguration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.VnetConfiguration_STATUS, got %T", armInput)
+ }
+
+ // Set property "DockerBridgeCidr":
+ if typedInput.DockerBridgeCidr != nil {
+ dockerBridgeCidr := *typedInput.DockerBridgeCidr
+ configuration.DockerBridgeCidr = &dockerBridgeCidr
+ }
+
+ // Set property "InfrastructureSubnetId":
+ if typedInput.InfrastructureSubnetId != nil {
+ infrastructureSubnetId := *typedInput.InfrastructureSubnetId
+ configuration.InfrastructureSubnetId = &infrastructureSubnetId
+ }
+
+ // Set property "Internal":
+ if typedInput.Internal != nil {
+ internal := *typedInput.Internal
+ configuration.Internal = &internal
+ }
+
+ // Set property "PlatformReservedCidr":
+ if typedInput.PlatformReservedCidr != nil {
+ platformReservedCidr := *typedInput.PlatformReservedCidr
+ configuration.PlatformReservedCidr = &platformReservedCidr
+ }
+
+ // Set property "PlatformReservedDnsIP":
+ if typedInput.PlatformReservedDnsIP != nil {
+ platformReservedDnsIP := *typedInput.PlatformReservedDnsIP
+ configuration.PlatformReservedDnsIP = &platformReservedDnsIP
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_VnetConfiguration_STATUS populates our VnetConfiguration_STATUS from the provided source VnetConfiguration_STATUS
+func (configuration *VnetConfiguration_STATUS) AssignProperties_From_VnetConfiguration_STATUS(source *storage.VnetConfiguration_STATUS) error {
+
+ // DockerBridgeCidr
+ configuration.DockerBridgeCidr = genruntime.ClonePointerToString(source.DockerBridgeCidr)
+
+ // InfrastructureSubnetId
+ configuration.InfrastructureSubnetId = genruntime.ClonePointerToString(source.InfrastructureSubnetId)
+
+ // Internal
+ if source.Internal != nil {
+ internal := *source.Internal
+ configuration.Internal = &internal
+ } else {
+ configuration.Internal = nil
+ }
+
+ // PlatformReservedCidr
+ configuration.PlatformReservedCidr = genruntime.ClonePointerToString(source.PlatformReservedCidr)
+
+ // PlatformReservedDnsIP
+ configuration.PlatformReservedDnsIP = genruntime.ClonePointerToString(source.PlatformReservedDnsIP)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_VnetConfiguration_STATUS populates the provided destination VnetConfiguration_STATUS from our VnetConfiguration_STATUS
+func (configuration *VnetConfiguration_STATUS) AssignProperties_To_VnetConfiguration_STATUS(destination *storage.VnetConfiguration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // DockerBridgeCidr
+ destination.DockerBridgeCidr = genruntime.ClonePointerToString(configuration.DockerBridgeCidr)
+
+ // InfrastructureSubnetId
+ destination.InfrastructureSubnetId = genruntime.ClonePointerToString(configuration.InfrastructureSubnetId)
+
+ // Internal
+ if configuration.Internal != nil {
+ internal := *configuration.Internal
+ destination.Internal = &internal
+ } else {
+ destination.Internal = nil
+ }
+
+ // PlatformReservedCidr
+ destination.PlatformReservedCidr = genruntime.ClonePointerToString(configuration.PlatformReservedCidr)
+
+ // PlatformReservedDnsIP
+ destination.PlatformReservedDnsIP = genruntime.ClonePointerToString(configuration.PlatformReservedDnsIP)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Workload profile to scope container app execution.
+type WorkloadProfile struct {
+ // MaximumCount: The maximum capacity.
+ MaximumCount *int `json:"maximumCount,omitempty"`
+
+ // MinimumCount: The minimum capacity.
+ MinimumCount *int `json:"minimumCount,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // Name: Workload profile type for the workloads to run on.
+ Name *string `json:"name,omitempty"`
+
+ // +kubebuilder:validation:Required
+ // WorkloadProfileType: Workload profile type for the workloads to run on.
+ WorkloadProfileType *string `json:"workloadProfileType,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &WorkloadProfile{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (profile *WorkloadProfile) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if profile == nil {
+ return nil, nil
+ }
+ result := &arm.WorkloadProfile{}
+
+ // Set property "MaximumCount":
+ if profile.MaximumCount != nil {
+ maximumCount := *profile.MaximumCount
+ result.MaximumCount = &maximumCount
+ }
+
+ // Set property "MinimumCount":
+ if profile.MinimumCount != nil {
+ minimumCount := *profile.MinimumCount
+ result.MinimumCount = &minimumCount
+ }
+
+ // Set property "Name":
+ if profile.Name != nil {
+ name := *profile.Name
+ result.Name = &name
+ }
+
+ // Set property "WorkloadProfileType":
+ if profile.WorkloadProfileType != nil {
+ workloadProfileType := *profile.WorkloadProfileType
+ result.WorkloadProfileType = &workloadProfileType
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (profile *WorkloadProfile) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.WorkloadProfile{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (profile *WorkloadProfile) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.WorkloadProfile)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.WorkloadProfile, got %T", armInput)
+ }
+
+ // Set property "MaximumCount":
+ if typedInput.MaximumCount != nil {
+ maximumCount := *typedInput.MaximumCount
+ profile.MaximumCount = &maximumCount
+ }
+
+ // Set property "MinimumCount":
+ if typedInput.MinimumCount != nil {
+ minimumCount := *typedInput.MinimumCount
+ profile.MinimumCount = &minimumCount
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ profile.Name = &name
+ }
+
+ // Set property "WorkloadProfileType":
+ if typedInput.WorkloadProfileType != nil {
+ workloadProfileType := *typedInput.WorkloadProfileType
+ profile.WorkloadProfileType = &workloadProfileType
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_WorkloadProfile populates our WorkloadProfile from the provided source WorkloadProfile
+func (profile *WorkloadProfile) AssignProperties_From_WorkloadProfile(source *storage.WorkloadProfile) error {
+
+ // MaximumCount
+ profile.MaximumCount = genruntime.ClonePointerToInt(source.MaximumCount)
+
+ // MinimumCount
+ profile.MinimumCount = genruntime.ClonePointerToInt(source.MinimumCount)
+
+ // Name
+ profile.Name = genruntime.ClonePointerToString(source.Name)
+
+ // WorkloadProfileType
+ profile.WorkloadProfileType = genruntime.ClonePointerToString(source.WorkloadProfileType)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_WorkloadProfile populates the provided destination WorkloadProfile from our WorkloadProfile
+func (profile *WorkloadProfile) AssignProperties_To_WorkloadProfile(destination *storage.WorkloadProfile) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MaximumCount
+ destination.MaximumCount = genruntime.ClonePointerToInt(profile.MaximumCount)
+
+ // MinimumCount
+ destination.MinimumCount = genruntime.ClonePointerToInt(profile.MinimumCount)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(profile.Name)
+
+ // WorkloadProfileType
+ destination.WorkloadProfileType = genruntime.ClonePointerToString(profile.WorkloadProfileType)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_WorkloadProfile_STATUS populates our WorkloadProfile from the provided source WorkloadProfile_STATUS
+func (profile *WorkloadProfile) Initialize_From_WorkloadProfile_STATUS(source *WorkloadProfile_STATUS) error {
+
+ // MaximumCount
+ profile.MaximumCount = genruntime.ClonePointerToInt(source.MaximumCount)
+
+ // MinimumCount
+ profile.MinimumCount = genruntime.ClonePointerToInt(source.MinimumCount)
+
+ // Name
+ profile.Name = genruntime.ClonePointerToString(source.Name)
+
+ // WorkloadProfileType
+ profile.WorkloadProfileType = genruntime.ClonePointerToString(source.WorkloadProfileType)
+
+ // No error
+ return nil
+}
+
+// Workload profile to scope container app execution.
+type WorkloadProfile_STATUS struct {
+ // MaximumCount: The maximum capacity.
+ MaximumCount *int `json:"maximumCount,omitempty"`
+
+ // MinimumCount: The minimum capacity.
+ MinimumCount *int `json:"minimumCount,omitempty"`
+
+ // Name: Workload profile type for the workloads to run on.
+ Name *string `json:"name,omitempty"`
+
+ // WorkloadProfileType: Workload profile type for the workloads to run on.
+ WorkloadProfileType *string `json:"workloadProfileType,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &WorkloadProfile_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (profile *WorkloadProfile_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.WorkloadProfile_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (profile *WorkloadProfile_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.WorkloadProfile_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.WorkloadProfile_STATUS, got %T", armInput)
+ }
+
+ // Set property "MaximumCount":
+ if typedInput.MaximumCount != nil {
+ maximumCount := *typedInput.MaximumCount
+ profile.MaximumCount = &maximumCount
+ }
+
+ // Set property "MinimumCount":
+ if typedInput.MinimumCount != nil {
+ minimumCount := *typedInput.MinimumCount
+ profile.MinimumCount = &minimumCount
+ }
+
+ // Set property "Name":
+ if typedInput.Name != nil {
+ name := *typedInput.Name
+ profile.Name = &name
+ }
+
+ // Set property "WorkloadProfileType":
+ if typedInput.WorkloadProfileType != nil {
+ workloadProfileType := *typedInput.WorkloadProfileType
+ profile.WorkloadProfileType = &workloadProfileType
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_WorkloadProfile_STATUS populates our WorkloadProfile_STATUS from the provided source WorkloadProfile_STATUS
+func (profile *WorkloadProfile_STATUS) AssignProperties_From_WorkloadProfile_STATUS(source *storage.WorkloadProfile_STATUS) error {
+
+ // MaximumCount
+ profile.MaximumCount = genruntime.ClonePointerToInt(source.MaximumCount)
+
+ // MinimumCount
+ profile.MinimumCount = genruntime.ClonePointerToInt(source.MinimumCount)
+
+ // Name
+ profile.Name = genruntime.ClonePointerToString(source.Name)
+
+ // WorkloadProfileType
+ profile.WorkloadProfileType = genruntime.ClonePointerToString(source.WorkloadProfileType)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_WorkloadProfile_STATUS populates the provided destination WorkloadProfile_STATUS from our WorkloadProfile_STATUS
+func (profile *WorkloadProfile_STATUS) AssignProperties_To_WorkloadProfile_STATUS(destination *storage.WorkloadProfile_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // MaximumCount
+ destination.MaximumCount = genruntime.ClonePointerToInt(profile.MaximumCount)
+
+ // MinimumCount
+ destination.MinimumCount = genruntime.ClonePointerToInt(profile.MinimumCount)
+
+ // Name
+ destination.Name = genruntime.ClonePointerToString(profile.Name)
+
+ // WorkloadProfileType
+ destination.WorkloadProfileType = genruntime.ClonePointerToString(profile.WorkloadProfileType)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'
+type LogAnalyticsConfiguration struct {
+ // CustomerId: Log analytics customer id
+ CustomerId *string `json:"customerId,omitempty"`
+
+ // SharedKey: Log analytics customer key
+ SharedKey *genruntime.SecretReference `json:"sharedKey,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &LogAnalyticsConfiguration{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (configuration *LogAnalyticsConfiguration) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if configuration == nil {
+ return nil, nil
+ }
+ result := &arm.LogAnalyticsConfiguration{}
+
+ // Set property "CustomerId":
+ if configuration.CustomerId != nil {
+ customerId := *configuration.CustomerId
+ result.CustomerId = &customerId
+ }
+
+ // Set property "SharedKey":
+ if configuration.SharedKey != nil {
+ sharedKeySecret, err := resolved.ResolvedSecrets.Lookup(*configuration.SharedKey)
+ if err != nil {
+ return nil, eris.Wrap(err, "looking up secret for property SharedKey")
+ }
+ sharedKey := sharedKeySecret
+ result.SharedKey = &sharedKey
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *LogAnalyticsConfiguration) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.LogAnalyticsConfiguration{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *LogAnalyticsConfiguration) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.LogAnalyticsConfiguration)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.LogAnalyticsConfiguration, got %T", armInput)
+ }
+
+ // Set property "CustomerId":
+ if typedInput.CustomerId != nil {
+ customerId := *typedInput.CustomerId
+ configuration.CustomerId = &customerId
+ }
+
+ // no assignment for property "SharedKey"
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_LogAnalyticsConfiguration populates our LogAnalyticsConfiguration from the provided source LogAnalyticsConfiguration
+func (configuration *LogAnalyticsConfiguration) AssignProperties_From_LogAnalyticsConfiguration(source *storage.LogAnalyticsConfiguration) error {
+
+ // CustomerId
+ configuration.CustomerId = genruntime.ClonePointerToString(source.CustomerId)
+
+ // SharedKey
+ if source.SharedKey != nil {
+ sharedKey := source.SharedKey.Copy()
+ configuration.SharedKey = &sharedKey
+ } else {
+ configuration.SharedKey = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_LogAnalyticsConfiguration populates the provided destination LogAnalyticsConfiguration from our LogAnalyticsConfiguration
+func (configuration *LogAnalyticsConfiguration) AssignProperties_To_LogAnalyticsConfiguration(destination *storage.LogAnalyticsConfiguration) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // CustomerId
+ destination.CustomerId = genruntime.ClonePointerToString(configuration.CustomerId)
+
+ // SharedKey
+ if configuration.SharedKey != nil {
+ sharedKey := configuration.SharedKey.Copy()
+ destination.SharedKey = &sharedKey
+ } else {
+ destination.SharedKey = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_LogAnalyticsConfiguration_STATUS populates our LogAnalyticsConfiguration from the provided source LogAnalyticsConfiguration_STATUS
+func (configuration *LogAnalyticsConfiguration) Initialize_From_LogAnalyticsConfiguration_STATUS(source *LogAnalyticsConfiguration_STATUS) error {
+
+ // CustomerId
+ configuration.CustomerId = genruntime.ClonePointerToString(source.CustomerId)
+
+ // No error
+ return nil
+}
+
+// Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'
+type LogAnalyticsConfiguration_STATUS struct {
+ // CustomerId: Log analytics customer id
+ CustomerId *string `json:"customerId,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &LogAnalyticsConfiguration_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (configuration *LogAnalyticsConfiguration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.LogAnalyticsConfiguration_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (configuration *LogAnalyticsConfiguration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.LogAnalyticsConfiguration_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.LogAnalyticsConfiguration_STATUS, got %T", armInput)
+ }
+
+ // Set property "CustomerId":
+ if typedInput.CustomerId != nil {
+ customerId := *typedInput.CustomerId
+ configuration.CustomerId = &customerId
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_LogAnalyticsConfiguration_STATUS populates our LogAnalyticsConfiguration_STATUS from the provided source LogAnalyticsConfiguration_STATUS
+func (configuration *LogAnalyticsConfiguration_STATUS) AssignProperties_From_LogAnalyticsConfiguration_STATUS(source *storage.LogAnalyticsConfiguration_STATUS) error {
+
+ // CustomerId
+ configuration.CustomerId = genruntime.ClonePointerToString(source.CustomerId)
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_LogAnalyticsConfiguration_STATUS populates the provided destination LogAnalyticsConfiguration_STATUS from our LogAnalyticsConfiguration_STATUS
+func (configuration *LogAnalyticsConfiguration_STATUS) AssignProperties_To_LogAnalyticsConfiguration_STATUS(destination *storage.LogAnalyticsConfiguration_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // CustomerId
+ destination.CustomerId = genruntime.ClonePointerToString(configuration.CustomerId)
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec struct {
+ // Enabled: Boolean indicating whether the peer traffic encryption is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if encryption == nil {
+ return nil, nil
+ }
+ result := &arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec{}
+
+ // Set property "Enabled":
+ if encryption.Enabled != nil {
+ enabled := *encryption.Enabled
+ result.Enabled = &enabled
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ encryption.Enabled = &enabled
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec populates our ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec from the provided source ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(source *storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ encryption.Enabled = &enabled
+ } else {
+ encryption.Enabled = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec populates the provided destination ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec from our ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(destination *storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if encryption.Enabled != nil {
+ enabled := *encryption.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS populates our ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec from the provided source ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) Initialize_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(source *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ encryption.Enabled = &enabled
+ } else {
+ encryption.Enabled = nil
+ }
+
+ // No error
+ return nil
+}
+
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS struct {
+ // Enabled: Boolean indicating whether the peer traffic encryption is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ encryption.Enabled = &enabled
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS populates our ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS from the provided source ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(source *storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ encryption.Enabled = &enabled
+ } else {
+ encryption.Enabled = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS populates the provided destination ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS from our ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+func (encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(destination *storage.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if encryption.Enabled != nil {
+ enabled := *encryption.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration properties for mutual TLS authentication
+type Mtls struct {
+ // Enabled: Boolean indicating whether the mutual TLS authentication is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+}
+
+var _ genruntime.ARMTransformer = &Mtls{}
+
+// ConvertToARM converts from a Kubernetes CRD object to an ARM object
+func (mtls *Mtls) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) {
+ if mtls == nil {
+ return nil, nil
+ }
+ result := &arm.Mtls{}
+
+ // Set property "Enabled":
+ if mtls.Enabled != nil {
+ enabled := *mtls.Enabled
+ result.Enabled = &enabled
+ }
+ return result, nil
+}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (mtls *Mtls) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Mtls{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (mtls *Mtls) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Mtls)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Mtls, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ mtls.Enabled = &enabled
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Mtls populates our Mtls from the provided source Mtls
+func (mtls *Mtls) AssignProperties_From_Mtls(source *storage.Mtls) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ mtls.Enabled = &enabled
+ } else {
+ mtls.Enabled = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Mtls populates the provided destination Mtls from our Mtls
+func (mtls *Mtls) AssignProperties_To_Mtls(destination *storage.Mtls) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if mtls.Enabled != nil {
+ enabled := *mtls.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Initialize_From_Mtls_STATUS populates our Mtls from the provided source Mtls_STATUS
+func (mtls *Mtls) Initialize_From_Mtls_STATUS(source *Mtls_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ mtls.Enabled = &enabled
+ } else {
+ mtls.Enabled = nil
+ }
+
+ // No error
+ return nil
+}
+
+// Configuration properties for mutual TLS authentication
+type Mtls_STATUS struct {
+ // Enabled: Boolean indicating whether the mutual TLS authentication is enabled
+ Enabled *bool `json:"enabled,omitempty"`
+}
+
+var _ genruntime.FromARMConverter = &Mtls_STATUS{}
+
+// NewEmptyARMValue returns an empty ARM value suitable for deserializing into
+func (mtls *Mtls_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus {
+ return &arm.Mtls_STATUS{}
+}
+
+// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object
+func (mtls *Mtls_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error {
+ typedInput, ok := armInput.(arm.Mtls_STATUS)
+ if !ok {
+ return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected arm.Mtls_STATUS, got %T", armInput)
+ }
+
+ // Set property "Enabled":
+ if typedInput.Enabled != nil {
+ enabled := *typedInput.Enabled
+ mtls.Enabled = &enabled
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_From_Mtls_STATUS populates our Mtls_STATUS from the provided source Mtls_STATUS
+func (mtls *Mtls_STATUS) AssignProperties_From_Mtls_STATUS(source *storage.Mtls_STATUS) error {
+
+ // Enabled
+ if source.Enabled != nil {
+ enabled := *source.Enabled
+ mtls.Enabled = &enabled
+ } else {
+ mtls.Enabled = nil
+ }
+
+ // No error
+ return nil
+}
+
+// AssignProperties_To_Mtls_STATUS populates the provided destination Mtls_STATUS from our Mtls_STATUS
+func (mtls *Mtls_STATUS) AssignProperties_To_Mtls_STATUS(destination *storage.Mtls_STATUS) error {
+ // Create a new property bag
+ propertyBag := genruntime.NewPropertyBag()
+
+ // Enabled
+ if mtls.Enabled != nil {
+ enabled := *mtls.Enabled
+ destination.Enabled = &enabled
+ } else {
+ destination.Enabled = nil
+ }
+
+ // Update the property bag
+ if len(propertyBag) > 0 {
+ destination.PropertyBag = propertyBag
+ } else {
+ destination.PropertyBag = nil
+ }
+
+ // No error
+ return nil
+}
+
+func init() {
+ SchemeBuilder.Register(&ManagedEnvironment{}, &ManagedEnvironmentList{})
+}
diff --git a/v2/api/app/v1api20240301/managed_environment_types_gen_test.go b/v2/api/app/v1api20240301/managed_environment_types_gen_test.go
new file mode 100644
index 00000000000..733e1109044
--- /dev/null
+++ b/v2/api/app/v1api20240301/managed_environment_types_gen_test.go
@@ -0,0 +1,2642 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package v1api20240301
+
+import (
+ "encoding/json"
+ storage "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/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_AppLogsConfiguration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AppLogsConfiguration to AppLogsConfiguration via AssignProperties_To_AppLogsConfiguration & AssignProperties_From_AppLogsConfiguration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAppLogsConfiguration, AppLogsConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAppLogsConfiguration tests if a specific instance of AppLogsConfiguration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAppLogsConfiguration(subject AppLogsConfiguration) 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.AppLogsConfiguration
+ err := copied.AssignProperties_To_AppLogsConfiguration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AppLogsConfiguration
+ err = actual.AssignProperties_From_AppLogsConfiguration(&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_AppLogsConfiguration_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 AppLogsConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppLogsConfiguration, AppLogsConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppLogsConfiguration runs a test to see if a specific instance of AppLogsConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppLogsConfiguration(subject AppLogsConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppLogsConfiguration
+ 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 AppLogsConfiguration instances for property testing - lazily instantiated by
+// AppLogsConfigurationGenerator()
+var appLogsConfigurationGenerator gopter.Gen
+
+// AppLogsConfigurationGenerator returns a generator of AppLogsConfiguration instances for property testing.
+// We first initialize appLogsConfigurationGenerator 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 AppLogsConfigurationGenerator() gopter.Gen {
+ if appLogsConfigurationGenerator != nil {
+ return appLogsConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration(generators)
+ appLogsConfigurationGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration(generators)
+ AddRelatedPropertyGeneratorsForAppLogsConfiguration(generators)
+ appLogsConfigurationGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration{}), generators)
+
+ return appLogsConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppLogsConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppLogsConfiguration(gens map[string]gopter.Gen) {
+ gens["Destination"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAppLogsConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAppLogsConfiguration(gens map[string]gopter.Gen) {
+ gens["LogAnalyticsConfiguration"] = gen.PtrOf(LogAnalyticsConfigurationGenerator())
+}
+
+func Test_AppLogsConfiguration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from AppLogsConfiguration_STATUS to AppLogsConfiguration_STATUS via AssignProperties_To_AppLogsConfiguration_STATUS & AssignProperties_From_AppLogsConfiguration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForAppLogsConfiguration_STATUS, AppLogsConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForAppLogsConfiguration_STATUS tests if a specific instance of AppLogsConfiguration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForAppLogsConfiguration_STATUS(subject AppLogsConfiguration_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.AppLogsConfiguration_STATUS
+ err := copied.AssignProperties_To_AppLogsConfiguration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual AppLogsConfiguration_STATUS
+ err = actual.AssignProperties_From_AppLogsConfiguration_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_AppLogsConfiguration_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 AppLogsConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppLogsConfiguration_STATUS, AppLogsConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppLogsConfiguration_STATUS runs a test to see if a specific instance of AppLogsConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppLogsConfiguration_STATUS(subject AppLogsConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppLogsConfiguration_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 AppLogsConfiguration_STATUS instances for property testing - lazily instantiated by
+// AppLogsConfiguration_STATUSGenerator()
+var appLogsConfiguration_STATUSGenerator gopter.Gen
+
+// AppLogsConfiguration_STATUSGenerator returns a generator of AppLogsConfiguration_STATUS instances for property testing.
+// We first initialize appLogsConfiguration_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 AppLogsConfiguration_STATUSGenerator() gopter.Gen {
+ if appLogsConfiguration_STATUSGenerator != nil {
+ return appLogsConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ appLogsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ appLogsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration_STATUS{}), generators)
+
+ return appLogsConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Destination"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["LogAnalyticsConfiguration"] = gen.PtrOf(LogAnalyticsConfiguration_STATUSGenerator())
+}
+
+func Test_CustomDomainConfiguration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CustomDomainConfiguration to CustomDomainConfiguration via AssignProperties_To_CustomDomainConfiguration & AssignProperties_From_CustomDomainConfiguration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCustomDomainConfiguration, CustomDomainConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCustomDomainConfiguration tests if a specific instance of CustomDomainConfiguration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCustomDomainConfiguration(subject CustomDomainConfiguration) 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.CustomDomainConfiguration
+ err := copied.AssignProperties_To_CustomDomainConfiguration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CustomDomainConfiguration
+ err = actual.AssignProperties_From_CustomDomainConfiguration(&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_CustomDomainConfiguration_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 CustomDomainConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomainConfiguration, CustomDomainConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomainConfiguration runs a test to see if a specific instance of CustomDomainConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomainConfiguration(subject CustomDomainConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomainConfiguration
+ 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 CustomDomainConfiguration instances for property testing - lazily instantiated by
+// CustomDomainConfigurationGenerator()
+var customDomainConfigurationGenerator gopter.Gen
+
+// CustomDomainConfigurationGenerator returns a generator of CustomDomainConfiguration instances for property testing.
+func CustomDomainConfigurationGenerator() gopter.Gen {
+ if customDomainConfigurationGenerator != nil {
+ return customDomainConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomainConfiguration(generators)
+ customDomainConfigurationGenerator = gen.Struct(reflect.TypeOf(CustomDomainConfiguration{}), generators)
+
+ return customDomainConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomainConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomainConfiguration(gens map[string]gopter.Gen) {
+ gens["DnsSuffix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomDomainConfiguration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from CustomDomainConfiguration_STATUS to CustomDomainConfiguration_STATUS via AssignProperties_To_CustomDomainConfiguration_STATUS & AssignProperties_From_CustomDomainConfiguration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForCustomDomainConfiguration_STATUS, CustomDomainConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForCustomDomainConfiguration_STATUS tests if a specific instance of CustomDomainConfiguration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForCustomDomainConfiguration_STATUS(subject CustomDomainConfiguration_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.CustomDomainConfiguration_STATUS
+ err := copied.AssignProperties_To_CustomDomainConfiguration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual CustomDomainConfiguration_STATUS
+ err = actual.AssignProperties_From_CustomDomainConfiguration_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_CustomDomainConfiguration_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 CustomDomainConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomainConfiguration_STATUS, CustomDomainConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomainConfiguration_STATUS runs a test to see if a specific instance of CustomDomainConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomainConfiguration_STATUS(subject CustomDomainConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomainConfiguration_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 CustomDomainConfiguration_STATUS instances for property testing - lazily instantiated by
+// CustomDomainConfiguration_STATUSGenerator()
+var customDomainConfiguration_STATUSGenerator gopter.Gen
+
+// CustomDomainConfiguration_STATUSGenerator returns a generator of CustomDomainConfiguration_STATUS instances for property testing.
+func CustomDomainConfiguration_STATUSGenerator() gopter.Gen {
+ if customDomainConfiguration_STATUSGenerator != nil {
+ return customDomainConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS(generators)
+ customDomainConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomDomainConfiguration_STATUS{}), generators)
+
+ return customDomainConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomDomainVerificationId"] = gen.PtrOf(gen.AlphaString())
+ gens["DnsSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["ExpirationDate"] = gen.PtrOf(gen.AlphaString())
+ gens["SubjectName"] = gen.PtrOf(gen.AlphaString())
+ gens["Thumbprint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_DaprConfiguration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from DaprConfiguration_STATUS to DaprConfiguration_STATUS via AssignProperties_To_DaprConfiguration_STATUS & AssignProperties_From_DaprConfiguration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForDaprConfiguration_STATUS, DaprConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForDaprConfiguration_STATUS tests if a specific instance of DaprConfiguration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForDaprConfiguration_STATUS(subject DaprConfiguration_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.DaprConfiguration_STATUS
+ err := copied.AssignProperties_To_DaprConfiguration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual DaprConfiguration_STATUS
+ err = actual.AssignProperties_From_DaprConfiguration_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_DaprConfiguration_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 DaprConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDaprConfiguration_STATUS, DaprConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDaprConfiguration_STATUS runs a test to see if a specific instance of DaprConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDaprConfiguration_STATUS(subject DaprConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DaprConfiguration_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 DaprConfiguration_STATUS instances for property testing - lazily instantiated by
+// DaprConfiguration_STATUSGenerator()
+var daprConfiguration_STATUSGenerator gopter.Gen
+
+// DaprConfiguration_STATUSGenerator returns a generator of DaprConfiguration_STATUS instances for property testing.
+func DaprConfiguration_STATUSGenerator() gopter.Gen {
+ if daprConfiguration_STATUSGenerator != nil {
+ return daprConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS(generators)
+ daprConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(DaprConfiguration_STATUS{}), generators)
+
+ return daprConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Version"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_KedaConfiguration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from KedaConfiguration_STATUS to KedaConfiguration_STATUS via AssignProperties_To_KedaConfiguration_STATUS & AssignProperties_From_KedaConfiguration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForKedaConfiguration_STATUS, KedaConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForKedaConfiguration_STATUS tests if a specific instance of KedaConfiguration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForKedaConfiguration_STATUS(subject KedaConfiguration_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.KedaConfiguration_STATUS
+ err := copied.AssignProperties_To_KedaConfiguration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual KedaConfiguration_STATUS
+ err = actual.AssignProperties_From_KedaConfiguration_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_KedaConfiguration_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 KedaConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForKedaConfiguration_STATUS, KedaConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForKedaConfiguration_STATUS runs a test to see if a specific instance of KedaConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForKedaConfiguration_STATUS(subject KedaConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual KedaConfiguration_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 KedaConfiguration_STATUS instances for property testing - lazily instantiated by
+// KedaConfiguration_STATUSGenerator()
+var kedaConfiguration_STATUSGenerator gopter.Gen
+
+// KedaConfiguration_STATUSGenerator returns a generator of KedaConfiguration_STATUS instances for property testing.
+func KedaConfiguration_STATUSGenerator() gopter.Gen {
+ if kedaConfiguration_STATUSGenerator != nil {
+ return kedaConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS(generators)
+ kedaConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(KedaConfiguration_STATUS{}), generators)
+
+ return kedaConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Version"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LogAnalyticsConfiguration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from LogAnalyticsConfiguration to LogAnalyticsConfiguration via AssignProperties_To_LogAnalyticsConfiguration & AssignProperties_From_LogAnalyticsConfiguration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForLogAnalyticsConfiguration, LogAnalyticsConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForLogAnalyticsConfiguration tests if a specific instance of LogAnalyticsConfiguration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForLogAnalyticsConfiguration(subject LogAnalyticsConfiguration) 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.LogAnalyticsConfiguration
+ err := copied.AssignProperties_To_LogAnalyticsConfiguration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual LogAnalyticsConfiguration
+ err = actual.AssignProperties_From_LogAnalyticsConfiguration(&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_LogAnalyticsConfiguration_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 LogAnalyticsConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogAnalyticsConfiguration, LogAnalyticsConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogAnalyticsConfiguration runs a test to see if a specific instance of LogAnalyticsConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogAnalyticsConfiguration(subject LogAnalyticsConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LogAnalyticsConfiguration
+ 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 LogAnalyticsConfiguration instances for property testing - lazily instantiated by
+// LogAnalyticsConfigurationGenerator()
+var logAnalyticsConfigurationGenerator gopter.Gen
+
+// LogAnalyticsConfigurationGenerator returns a generator of LogAnalyticsConfiguration instances for property testing.
+func LogAnalyticsConfigurationGenerator() gopter.Gen {
+ if logAnalyticsConfigurationGenerator != nil {
+ return logAnalyticsConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration(generators)
+ logAnalyticsConfigurationGenerator = gen.Struct(reflect.TypeOf(LogAnalyticsConfiguration{}), generators)
+
+ return logAnalyticsConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration(gens map[string]gopter.Gen) {
+ gens["CustomerId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LogAnalyticsConfiguration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from LogAnalyticsConfiguration_STATUS to LogAnalyticsConfiguration_STATUS via AssignProperties_To_LogAnalyticsConfiguration_STATUS & AssignProperties_From_LogAnalyticsConfiguration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForLogAnalyticsConfiguration_STATUS, LogAnalyticsConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForLogAnalyticsConfiguration_STATUS tests if a specific instance of LogAnalyticsConfiguration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForLogAnalyticsConfiguration_STATUS(subject LogAnalyticsConfiguration_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.LogAnalyticsConfiguration_STATUS
+ err := copied.AssignProperties_To_LogAnalyticsConfiguration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual LogAnalyticsConfiguration_STATUS
+ err = actual.AssignProperties_From_LogAnalyticsConfiguration_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_LogAnalyticsConfiguration_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 LogAnalyticsConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS, LogAnalyticsConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS runs a test to see if a specific instance of LogAnalyticsConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS(subject LogAnalyticsConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LogAnalyticsConfiguration_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 LogAnalyticsConfiguration_STATUS instances for property testing - lazily instantiated by
+// LogAnalyticsConfiguration_STATUSGenerator()
+var logAnalyticsConfiguration_STATUSGenerator gopter.Gen
+
+// LogAnalyticsConfiguration_STATUSGenerator returns a generator of LogAnalyticsConfiguration_STATUS instances for property testing.
+func LogAnalyticsConfiguration_STATUSGenerator() gopter.Gen {
+ if logAnalyticsConfiguration_STATUSGenerator != nil {
+ return logAnalyticsConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS(generators)
+ logAnalyticsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(LogAnalyticsConfiguration_STATUS{}), generators)
+
+ return logAnalyticsConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomerId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ManagedEnvironment_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 ManagedEnvironment to hub returns original",
+ prop.ForAll(RunResourceConversionTestForManagedEnvironment, ManagedEnvironmentGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunResourceConversionTestForManagedEnvironment tests if a specific instance of ManagedEnvironment round trips to the hub storage version and back losslessly
+func RunResourceConversionTestForManagedEnvironment(subject ManagedEnvironment) string {
+ // Copy subject to make sure conversion doesn't modify it
+ copied := subject.DeepCopy()
+
+ // Convert to our hub version
+ var hub storage.ManagedEnvironment
+ err := copied.ConvertTo(&hub)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Convert from our hub version
+ var actual ManagedEnvironment
+ 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_ManagedEnvironment_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment to ManagedEnvironment via AssignProperties_To_ManagedEnvironment & AssignProperties_From_ManagedEnvironment returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment, ManagedEnvironmentGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment tests if a specific instance of ManagedEnvironment can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment(subject ManagedEnvironment) 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.ManagedEnvironment
+ err := copied.AssignProperties_To_ManagedEnvironment(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment
+ err = actual.AssignProperties_From_ManagedEnvironment(&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_ManagedEnvironment_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 ManagedEnvironment via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment, ManagedEnvironmentGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment runs a test to see if a specific instance of ManagedEnvironment round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment(subject ManagedEnvironment) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment
+ 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 ManagedEnvironment instances for property testing - lazily instantiated by ManagedEnvironmentGenerator()
+var managedEnvironmentGenerator gopter.Gen
+
+// ManagedEnvironmentGenerator returns a generator of ManagedEnvironment instances for property testing.
+func ManagedEnvironmentGenerator() gopter.Gen {
+ if managedEnvironmentGenerator != nil {
+ return managedEnvironmentGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment(generators)
+ managedEnvironmentGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment{}), generators)
+
+ return managedEnvironmentGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment(gens map[string]gopter.Gen) {
+ gens["Spec"] = ManagedEnvironment_SpecGenerator()
+ gens["Status"] = ManagedEnvironment_STATUSGenerator()
+}
+
+func Test_ManagedEnvironmentOperatorSpec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironmentOperatorSpec to ManagedEnvironmentOperatorSpec via AssignProperties_To_ManagedEnvironmentOperatorSpec & AssignProperties_From_ManagedEnvironmentOperatorSpec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironmentOperatorSpec, ManagedEnvironmentOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironmentOperatorSpec tests if a specific instance of ManagedEnvironmentOperatorSpec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironmentOperatorSpec(subject ManagedEnvironmentOperatorSpec) 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.ManagedEnvironmentOperatorSpec
+ err := copied.AssignProperties_To_ManagedEnvironmentOperatorSpec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironmentOperatorSpec
+ err = actual.AssignProperties_From_ManagedEnvironmentOperatorSpec(&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_ManagedEnvironmentOperatorSpec_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 ManagedEnvironmentOperatorSpec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironmentOperatorSpec, ManagedEnvironmentOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironmentOperatorSpec runs a test to see if a specific instance of ManagedEnvironmentOperatorSpec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironmentOperatorSpec(subject ManagedEnvironmentOperatorSpec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironmentOperatorSpec
+ 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 ManagedEnvironmentOperatorSpec instances for property testing - lazily instantiated by
+// ManagedEnvironmentOperatorSpecGenerator()
+var managedEnvironmentOperatorSpecGenerator gopter.Gen
+
+// ManagedEnvironmentOperatorSpecGenerator returns a generator of ManagedEnvironmentOperatorSpec instances for property testing.
+func ManagedEnvironmentOperatorSpecGenerator() gopter.Gen {
+ if managedEnvironmentOperatorSpecGenerator != nil {
+ return managedEnvironmentOperatorSpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ managedEnvironmentOperatorSpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironmentOperatorSpec{}), generators)
+
+ return managedEnvironmentOperatorSpecGenerator
+}
+
+func Test_ManagedEnvironment_Properties_PeerAuthentication_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment_Properties_PeerAuthentication_STATUS to ManagedEnvironment_Properties_PeerAuthentication_STATUS via AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_STATUS & AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerAuthentication_STATUS, ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerAuthentication_STATUS tests if a specific instance of ManagedEnvironment_Properties_PeerAuthentication_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerAuthentication_STATUS(subject ManagedEnvironment_Properties_PeerAuthentication_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.ManagedEnvironment_Properties_PeerAuthentication_STATUS
+ err := copied.AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment_Properties_PeerAuthentication_STATUS
+ err = actual.AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_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_ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS, ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerAuthentication_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS(subject ManagedEnvironment_Properties_PeerAuthentication_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_STATUS instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator()
+var managedEnvironment_Properties_PeerAuthentication_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerAuthentication_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerAuthentication_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerAuthentication_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS(generators)
+ managedEnvironment_Properties_PeerAuthentication_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerAuthentication_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerAuthentication_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS(gens map[string]gopter.Gen) {
+ gens["Mtls"] = gen.PtrOf(Mtls_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_PeerAuthentication_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment_Properties_PeerAuthentication_Spec to ManagedEnvironment_Properties_PeerAuthentication_Spec via AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_Spec & AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_Spec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerAuthentication_Spec, ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerAuthentication_Spec tests if a specific instance of ManagedEnvironment_Properties_PeerAuthentication_Spec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerAuthentication_Spec(subject ManagedEnvironment_Properties_PeerAuthentication_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.ManagedEnvironment_Properties_PeerAuthentication_Spec
+ err := copied.AssignProperties_To_ManagedEnvironment_Properties_PeerAuthentication_Spec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment_Properties_PeerAuthentication_Spec
+ err = actual.AssignProperties_From_ManagedEnvironment_Properties_PeerAuthentication_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_ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec, ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerAuthentication_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec(subject ManagedEnvironment_Properties_PeerAuthentication_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_Spec instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator()
+var managedEnvironment_Properties_PeerAuthentication_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerAuthentication_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerAuthentication_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerAuthentication_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec(generators)
+ managedEnvironment_Properties_PeerAuthentication_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerAuthentication_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerAuthentication_SpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec(gens map[string]gopter.Gen) {
+ gens["Mtls"] = gen.PtrOf(MtlsGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS to ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS via AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS & AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS, ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS tests if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+ err := copied.AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+ err = actual.AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS, ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS instances for property testing
+// - lazily instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec to ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec via AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec & AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec, ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec tests if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+ err := copied.AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+ err = actual.AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec, ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec instances for property testing -
+// lazily instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS to ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS via AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS & AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS, ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS tests if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_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.ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+ err := copied.AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+ err = actual.AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_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_ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS, ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Encryption"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec to ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec via AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec & AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec, ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec tests if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_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.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+ err := copied.AssignProperties_To_ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+ err = actual.AssignProperties_From_ManagedEnvironment_Properties_PeerTrafficConfiguration_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_ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec, ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(gens map[string]gopter.Gen) {
+ gens["Encryption"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator())
+}
+
+func Test_ManagedEnvironment_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment_STATUS to ManagedEnvironment_STATUS via AssignProperties_To_ManagedEnvironment_STATUS & AssignProperties_From_ManagedEnvironment_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment_STATUS, ManagedEnvironment_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment_STATUS tests if a specific instance of ManagedEnvironment_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment_STATUS(subject ManagedEnvironment_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.ManagedEnvironment_STATUS
+ err := copied.AssignProperties_To_ManagedEnvironment_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment_STATUS
+ err = actual.AssignProperties_From_ManagedEnvironment_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_ManagedEnvironment_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 ManagedEnvironment_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_STATUS, ManagedEnvironment_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_STATUS runs a test to see if a specific instance of ManagedEnvironment_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_STATUS(subject ManagedEnvironment_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_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 ManagedEnvironment_STATUS instances for property testing - lazily instantiated by
+// ManagedEnvironment_STATUSGenerator()
+var managedEnvironment_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_STATUSGenerator returns a generator of ManagedEnvironment_STATUS instances for property testing.
+// We first initialize managedEnvironment_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 ManagedEnvironment_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_STATUSGenerator != nil {
+ return managedEnvironment_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ managedEnvironment_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ managedEnvironment_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_STATUS{}), generators)
+
+ return managedEnvironment_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(gens map[string]gopter.Gen) {
+ gens["DefaultDomain"] = gen.PtrOf(gen.AlphaString())
+ gens["DeploymentErrors"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["InfrastructureResourceGroup"] = gen.PtrOf(gen.AlphaString())
+ gens["Kind"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.OneConstOf(
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Canceled,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Failed,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupComplete,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InfrastructureSetupInProgress,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_InitializationInProgress,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_ScheduledForDelete,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Succeeded,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeFailed,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_UpgradeRequested,
+ ManagedEnvironment_Properties_ProvisioningState_STATUS_Waiting))
+ gens["StaticIp"] = gen.PtrOf(gen.AlphaString())
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+ gens["ZoneRedundant"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS(gens map[string]gopter.Gen) {
+ gens["AppLogsConfiguration"] = gen.PtrOf(AppLogsConfiguration_STATUSGenerator())
+ gens["CustomDomainConfiguration"] = gen.PtrOf(CustomDomainConfiguration_STATUSGenerator())
+ gens["DaprConfiguration"] = gen.PtrOf(DaprConfiguration_STATUSGenerator())
+ gens["KedaConfiguration"] = gen.PtrOf(KedaConfiguration_STATUSGenerator())
+ gens["PeerAuthentication"] = gen.PtrOf(ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator())
+ gens["PeerTrafficConfiguration"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+ gens["VnetConfiguration"] = gen.PtrOf(VnetConfiguration_STATUSGenerator())
+ gens["WorkloadProfiles"] = gen.SliceOf(WorkloadProfile_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from ManagedEnvironment_Spec to ManagedEnvironment_Spec via AssignProperties_To_ManagedEnvironment_Spec & AssignProperties_From_ManagedEnvironment_Spec returns original",
+ prop.ForAll(RunPropertyAssignmentTestForManagedEnvironment_Spec, ManagedEnvironment_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForManagedEnvironment_Spec tests if a specific instance of ManagedEnvironment_Spec can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForManagedEnvironment_Spec(subject ManagedEnvironment_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.ManagedEnvironment_Spec
+ err := copied.AssignProperties_To_ManagedEnvironment_Spec(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual ManagedEnvironment_Spec
+ err = actual.AssignProperties_From_ManagedEnvironment_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_ManagedEnvironment_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 ManagedEnvironment_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Spec, ManagedEnvironment_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Spec runs a test to see if a specific instance of ManagedEnvironment_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Spec(subject ManagedEnvironment_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_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 ManagedEnvironment_Spec instances for property testing - lazily instantiated by
+// ManagedEnvironment_SpecGenerator()
+var managedEnvironment_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_SpecGenerator returns a generator of ManagedEnvironment_Spec instances for property testing.
+// We first initialize managedEnvironment_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 ManagedEnvironment_SpecGenerator() gopter.Gen {
+ if managedEnvironment_SpecGenerator != nil {
+ return managedEnvironment_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ managedEnvironment_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ managedEnvironment_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Spec{}), generators)
+
+ return managedEnvironment_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(gens map[string]gopter.Gen) {
+ gens["AzureName"] = gen.AlphaString()
+ gens["InfrastructureResourceGroup"] = gen.PtrOf(gen.AlphaString())
+ gens["Kind"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["ZoneRedundant"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Spec(gens map[string]gopter.Gen) {
+ gens["AppLogsConfiguration"] = gen.PtrOf(AppLogsConfigurationGenerator())
+ gens["CustomDomainConfiguration"] = gen.PtrOf(CustomDomainConfigurationGenerator())
+ gens["OperatorSpec"] = gen.PtrOf(ManagedEnvironmentOperatorSpecGenerator())
+ gens["PeerAuthentication"] = gen.PtrOf(ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator())
+ gens["PeerTrafficConfiguration"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator())
+ gens["VnetConfiguration"] = gen.PtrOf(VnetConfigurationGenerator())
+ gens["WorkloadProfiles"] = gen.SliceOf(WorkloadProfileGenerator())
+}
+
+func Test_Mtls_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Mtls to Mtls via AssignProperties_To_Mtls & AssignProperties_From_Mtls returns original",
+ prop.ForAll(RunPropertyAssignmentTestForMtls, MtlsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForMtls tests if a specific instance of Mtls can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForMtls(subject Mtls) 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.Mtls
+ err := copied.AssignProperties_To_Mtls(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Mtls
+ err = actual.AssignProperties_From_Mtls(&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_Mtls_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 Mtls via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForMtls, MtlsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForMtls runs a test to see if a specific instance of Mtls round trips to JSON and back losslessly
+func RunJSONSerializationTestForMtls(subject Mtls) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Mtls
+ 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 Mtls instances for property testing - lazily instantiated by MtlsGenerator()
+var mtlsGenerator gopter.Gen
+
+// MtlsGenerator returns a generator of Mtls instances for property testing.
+func MtlsGenerator() gopter.Gen {
+ if mtlsGenerator != nil {
+ return mtlsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForMtls(generators)
+ mtlsGenerator = gen.Struct(reflect.TypeOf(Mtls{}), generators)
+
+ return mtlsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForMtls is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForMtls(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_Mtls_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from Mtls_STATUS to Mtls_STATUS via AssignProperties_To_Mtls_STATUS & AssignProperties_From_Mtls_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForMtls_STATUS, Mtls_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForMtls_STATUS tests if a specific instance of Mtls_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForMtls_STATUS(subject Mtls_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.Mtls_STATUS
+ err := copied.AssignProperties_To_Mtls_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual Mtls_STATUS
+ err = actual.AssignProperties_From_Mtls_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_Mtls_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 Mtls_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForMtls_STATUS, Mtls_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForMtls_STATUS runs a test to see if a specific instance of Mtls_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForMtls_STATUS(subject Mtls_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Mtls_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 Mtls_STATUS instances for property testing - lazily instantiated by Mtls_STATUSGenerator()
+var mtls_STATUSGenerator gopter.Gen
+
+// Mtls_STATUSGenerator returns a generator of Mtls_STATUS instances for property testing.
+func Mtls_STATUSGenerator() gopter.Gen {
+ if mtls_STATUSGenerator != nil {
+ return mtls_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForMtls_STATUS(generators)
+ mtls_STATUSGenerator = gen.Struct(reflect.TypeOf(Mtls_STATUS{}), generators)
+
+ return mtls_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForMtls_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForMtls_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_VnetConfiguration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from VnetConfiguration to VnetConfiguration via AssignProperties_To_VnetConfiguration & AssignProperties_From_VnetConfiguration returns original",
+ prop.ForAll(RunPropertyAssignmentTestForVnetConfiguration, VnetConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForVnetConfiguration tests if a specific instance of VnetConfiguration can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForVnetConfiguration(subject VnetConfiguration) 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.VnetConfiguration
+ err := copied.AssignProperties_To_VnetConfiguration(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual VnetConfiguration
+ err = actual.AssignProperties_From_VnetConfiguration(&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_VnetConfiguration_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 VnetConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVnetConfiguration, VnetConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVnetConfiguration runs a test to see if a specific instance of VnetConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForVnetConfiguration(subject VnetConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VnetConfiguration
+ 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 VnetConfiguration instances for property testing - lazily instantiated by VnetConfigurationGenerator()
+var vnetConfigurationGenerator gopter.Gen
+
+// VnetConfigurationGenerator returns a generator of VnetConfiguration instances for property testing.
+func VnetConfigurationGenerator() gopter.Gen {
+ if vnetConfigurationGenerator != nil {
+ return vnetConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVnetConfiguration(generators)
+ vnetConfigurationGenerator = gen.Struct(reflect.TypeOf(VnetConfiguration{}), generators)
+
+ return vnetConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVnetConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVnetConfiguration(gens map[string]gopter.Gen) {
+ gens["DockerBridgeCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["Internal"] = gen.PtrOf(gen.Bool())
+ gens["PlatformReservedCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["PlatformReservedDnsIP"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_VnetConfiguration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from VnetConfiguration_STATUS to VnetConfiguration_STATUS via AssignProperties_To_VnetConfiguration_STATUS & AssignProperties_From_VnetConfiguration_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForVnetConfiguration_STATUS, VnetConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForVnetConfiguration_STATUS tests if a specific instance of VnetConfiguration_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForVnetConfiguration_STATUS(subject VnetConfiguration_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.VnetConfiguration_STATUS
+ err := copied.AssignProperties_To_VnetConfiguration_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual VnetConfiguration_STATUS
+ err = actual.AssignProperties_From_VnetConfiguration_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_VnetConfiguration_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 VnetConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVnetConfiguration_STATUS, VnetConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVnetConfiguration_STATUS runs a test to see if a specific instance of VnetConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVnetConfiguration_STATUS(subject VnetConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VnetConfiguration_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 VnetConfiguration_STATUS instances for property testing - lazily instantiated by
+// VnetConfiguration_STATUSGenerator()
+var vnetConfiguration_STATUSGenerator gopter.Gen
+
+// VnetConfiguration_STATUSGenerator returns a generator of VnetConfiguration_STATUS instances for property testing.
+func VnetConfiguration_STATUSGenerator() gopter.Gen {
+ if vnetConfiguration_STATUSGenerator != nil {
+ return vnetConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS(generators)
+ vnetConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(VnetConfiguration_STATUS{}), generators)
+
+ return vnetConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["DockerBridgeCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["InfrastructureSubnetId"] = gen.PtrOf(gen.AlphaString())
+ gens["Internal"] = gen.PtrOf(gen.Bool())
+ gens["PlatformReservedCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["PlatformReservedDnsIP"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_WorkloadProfile_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from WorkloadProfile to WorkloadProfile via AssignProperties_To_WorkloadProfile & AssignProperties_From_WorkloadProfile returns original",
+ prop.ForAll(RunPropertyAssignmentTestForWorkloadProfile, WorkloadProfileGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForWorkloadProfile tests if a specific instance of WorkloadProfile can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForWorkloadProfile(subject WorkloadProfile) 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.WorkloadProfile
+ err := copied.AssignProperties_To_WorkloadProfile(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual WorkloadProfile
+ err = actual.AssignProperties_From_WorkloadProfile(&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_WorkloadProfile_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 WorkloadProfile via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForWorkloadProfile, WorkloadProfileGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForWorkloadProfile runs a test to see if a specific instance of WorkloadProfile round trips to JSON and back losslessly
+func RunJSONSerializationTestForWorkloadProfile(subject WorkloadProfile) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual WorkloadProfile
+ 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 WorkloadProfile instances for property testing - lazily instantiated by WorkloadProfileGenerator()
+var workloadProfileGenerator gopter.Gen
+
+// WorkloadProfileGenerator returns a generator of WorkloadProfile instances for property testing.
+func WorkloadProfileGenerator() gopter.Gen {
+ if workloadProfileGenerator != nil {
+ return workloadProfileGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForWorkloadProfile(generators)
+ workloadProfileGenerator = gen.Struct(reflect.TypeOf(WorkloadProfile{}), generators)
+
+ return workloadProfileGenerator
+}
+
+// AddIndependentPropertyGeneratorsForWorkloadProfile is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForWorkloadProfile(gens map[string]gopter.Gen) {
+ gens["MaximumCount"] = gen.PtrOf(gen.Int())
+ gens["MinimumCount"] = gen.PtrOf(gen.Int())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileType"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_WorkloadProfile_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MaxSize = 10
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip from WorkloadProfile_STATUS to WorkloadProfile_STATUS via AssignProperties_To_WorkloadProfile_STATUS & AssignProperties_From_WorkloadProfile_STATUS returns original",
+ prop.ForAll(RunPropertyAssignmentTestForWorkloadProfile_STATUS, WorkloadProfile_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout))
+}
+
+// RunPropertyAssignmentTestForWorkloadProfile_STATUS tests if a specific instance of WorkloadProfile_STATUS can be assigned to storage and back losslessly
+func RunPropertyAssignmentTestForWorkloadProfile_STATUS(subject WorkloadProfile_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.WorkloadProfile_STATUS
+ err := copied.AssignProperties_To_WorkloadProfile_STATUS(&other)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Use AssignPropertiesFrom() to convert back to our original type
+ var actual WorkloadProfile_STATUS
+ err = actual.AssignProperties_From_WorkloadProfile_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_WorkloadProfile_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 WorkloadProfile_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForWorkloadProfile_STATUS, WorkloadProfile_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForWorkloadProfile_STATUS runs a test to see if a specific instance of WorkloadProfile_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForWorkloadProfile_STATUS(subject WorkloadProfile_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual WorkloadProfile_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 WorkloadProfile_STATUS instances for property testing - lazily instantiated by
+// WorkloadProfile_STATUSGenerator()
+var workloadProfile_STATUSGenerator gopter.Gen
+
+// WorkloadProfile_STATUSGenerator returns a generator of WorkloadProfile_STATUS instances for property testing.
+func WorkloadProfile_STATUSGenerator() gopter.Gen {
+ if workloadProfile_STATUSGenerator != nil {
+ return workloadProfile_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS(generators)
+ workloadProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(WorkloadProfile_STATUS{}), generators)
+
+ return workloadProfile_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS(gens map[string]gopter.Gen) {
+ gens["MaximumCount"] = gen.PtrOf(gen.Int())
+ gens["MinimumCount"] = gen.PtrOf(gen.Int())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileType"] = gen.PtrOf(gen.AlphaString())
+}
diff --git a/v2/api/app/v1api20240301/storage/auth_config_types_gen.go b/v2/api/app/v1api20240301/storage/auth_config_types_gen.go
new file mode 100644
index 00000000000..da591eec9af
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/auth_config_types_gen.go
@@ -0,0 +1,944 @@
+// 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/Azure/azure-service-operator/v2/pkg/genruntime/configmaps"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/secrets"
+ "github.com/rotisserie/eris"
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+ "k8s.io/apimachinery/pkg/runtime/schema"
+)
+
+// +kubebuilder:rbac:groups=app.azure.com,resources=authconfigs,verbs=get;list;watch;create;update;patch;delete
+// +kubebuilder:rbac:groups=app.azure.com,resources={authconfigs/status,authconfigs/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 v1api20240301.AuthConfig
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/AuthConfigs.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/authConfigs/{authConfigName}
+type AuthConfig struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty"`
+ Spec AuthConfig_Spec `json:"spec,omitempty"`
+ Status AuthConfig_STATUS `json:"status,omitempty"`
+}
+
+var _ conditions.Conditioner = &AuthConfig{}
+
+// GetConditions returns the conditions of the resource
+func (config *AuthConfig) GetConditions() conditions.Conditions {
+ return config.Status.Conditions
+}
+
+// SetConditions sets the conditions on the resource status
+func (config *AuthConfig) SetConditions(conditions conditions.Conditions) {
+ config.Status.Conditions = conditions
+}
+
+var _ configmaps.Exporter = &AuthConfig{}
+
+// ConfigMapDestinationExpressions returns the Spec.OperatorSpec.ConfigMapExpressions property
+func (config *AuthConfig) ConfigMapDestinationExpressions() []*core.DestinationExpression {
+ if config.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return config.Spec.OperatorSpec.ConfigMapExpressions
+}
+
+var _ secrets.Exporter = &AuthConfig{}
+
+// SecretDestinationExpressions returns the Spec.OperatorSpec.SecretExpressions property
+func (config *AuthConfig) SecretDestinationExpressions() []*core.DestinationExpression {
+ if config.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return config.Spec.OperatorSpec.SecretExpressions
+}
+
+var _ genruntime.KubernetesResource = &AuthConfig{}
+
+// AzureName returns the Azure name of the resource
+func (config *AuthConfig) AzureName() string {
+ return config.Spec.AzureName
+}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (config AuthConfig) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetResourceScope returns the scope of the resource
+func (config *AuthConfig) GetResourceScope() genruntime.ResourceScope {
+ return genruntime.ResourceScopeResourceGroup
+}
+
+// GetSpec returns the specification of this resource
+func (config *AuthConfig) GetSpec() genruntime.ConvertibleSpec {
+ return &config.Spec
+}
+
+// GetStatus returns the status of this resource
+func (config *AuthConfig) GetStatus() genruntime.ConvertibleStatus {
+ return &config.Status
+}
+
+// GetSupportedOperations returns the operations supported by the resource
+func (config *AuthConfig) GetSupportedOperations() []genruntime.ResourceOperation {
+ return []genruntime.ResourceOperation{
+ genruntime.ResourceOperationDelete,
+ genruntime.ResourceOperationGet,
+ genruntime.ResourceOperationPut,
+ }
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/containerApps/authConfigs"
+func (config *AuthConfig) GetType() string {
+ return "Microsoft.App/containerApps/authConfigs"
+}
+
+// NewEmptyStatus returns a new empty (blank) status
+func (config *AuthConfig) NewEmptyStatus() genruntime.ConvertibleStatus {
+ return &AuthConfig_STATUS{}
+}
+
+// Owner returns the ResourceReference of the owner
+func (config *AuthConfig) Owner() *genruntime.ResourceReference {
+ if config.Spec.Owner == nil {
+ return nil
+ }
+
+ group, kind := genruntime.LookupOwnerGroupKind(config.Spec)
+ return config.Spec.Owner.AsResourceReference(group, kind)
+}
+
+// SetStatus sets the status of this resource
+func (config *AuthConfig) SetStatus(status genruntime.ConvertibleStatus) error {
+ // If we have exactly the right type of status, assign it
+ if st, ok := status.(*AuthConfig_STATUS); ok {
+ config.Status = *st
+ return nil
+ }
+
+ // Convert status to required version
+ var st AuthConfig_STATUS
+ err := status.ConvertStatusTo(&st)
+ if err != nil {
+ return eris.Wrap(err, "failed to convert status")
+ }
+
+ config.Status = st
+ return nil
+}
+
+// Hub marks that this AuthConfig is the hub type for conversion
+func (config *AuthConfig) Hub() {}
+
+// OriginalGVK returns a GroupValueKind for the original API version used to create the resource
+func (config *AuthConfig) OriginalGVK() *schema.GroupVersionKind {
+ return &schema.GroupVersionKind{
+ Group: GroupVersion.Group,
+ Version: config.Spec.OriginalVersion,
+ Kind: "AuthConfig",
+ }
+}
+
+// +kubebuilder:object:root=true
+// Storage version of v1api20240301.AuthConfig
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/AuthConfigs.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/authConfigs/{authConfigName}
+type AuthConfigList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata,omitempty"`
+ Items []AuthConfig `json:"items"`
+}
+
+// Storage version of v1api20240301.APIVersion
+// +kubebuilder:validation:Enum={"2024-03-01"}
+type APIVersion string
+
+const APIVersion_Value = APIVersion("2024-03-01")
+
+// Storage version of v1api20240301.AuthConfig_Spec
+type AuthConfig_Spec struct {
+ // 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"`
+ EncryptionSettings *EncryptionSettings `json:"encryptionSettings,omitempty"`
+ GlobalValidation *GlobalValidation `json:"globalValidation,omitempty"`
+ HttpSettings *HttpSettings `json:"httpSettings,omitempty"`
+ IdentityProviders *IdentityProviders `json:"identityProviders,omitempty"`
+ Login *Login `json:"login,omitempty"`
+ OperatorSpec *AuthConfigOperatorSpec `json:"operatorSpec,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 app.azure.com/ContainerApp resource
+ Owner *genruntime.KnownResourceReference `group:"app.azure.com" json:"owner,omitempty" kind:"ContainerApp"`
+ Platform *AuthPlatform `json:"platform,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+var _ genruntime.ConvertibleSpec = &AuthConfig_Spec{}
+
+// ConvertSpecFrom populates our AuthConfig_Spec from the provided source
+func (config *AuthConfig_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error {
+ if source == config {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec")
+ }
+
+ return source.ConvertSpecTo(config)
+}
+
+// ConvertSpecTo populates the provided destination from our AuthConfig_Spec
+func (config *AuthConfig_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error {
+ if destination == config {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec")
+ }
+
+ return destination.ConvertSpecFrom(config)
+}
+
+// Storage version of v1api20240301.AuthConfig_STATUS
+type AuthConfig_STATUS struct {
+ Conditions []conditions.Condition `json:"conditions,omitempty"`
+ EncryptionSettings *EncryptionSettings_STATUS `json:"encryptionSettings,omitempty"`
+ GlobalValidation *GlobalValidation_STATUS `json:"globalValidation,omitempty"`
+ HttpSettings *HttpSettings_STATUS `json:"httpSettings,omitempty"`
+ Id *string `json:"id,omitempty"`
+ IdentityProviders *IdentityProviders_STATUS `json:"identityProviders,omitempty"`
+ Login *Login_STATUS `json:"login,omitempty"`
+ Name *string `json:"name,omitempty"`
+ Platform *AuthPlatform_STATUS `json:"platform,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SystemData *SystemData_STATUS `json:"systemData,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+var _ genruntime.ConvertibleStatus = &AuthConfig_STATUS{}
+
+// ConvertStatusFrom populates our AuthConfig_STATUS from the provided source
+func (config *AuthConfig_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error {
+ if source == config {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus")
+ }
+
+ return source.ConvertStatusTo(config)
+}
+
+// ConvertStatusTo populates the provided destination from our AuthConfig_STATUS
+func (config *AuthConfig_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error {
+ if destination == config {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus")
+ }
+
+ return destination.ConvertStatusFrom(config)
+}
+
+// Storage version of v1api20240301.AuthConfigOperatorSpec
+// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure
+type AuthConfigOperatorSpec struct {
+ ConfigMapExpressions []*core.DestinationExpression `json:"configMapExpressions,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretExpressions []*core.DestinationExpression `json:"secretExpressions,omitempty"`
+}
+
+// Storage version of v1api20240301.AuthPlatform
+// The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+type AuthPlatform struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RuntimeVersion *string `json:"runtimeVersion,omitempty"`
+}
+
+// Storage version of v1api20240301.AuthPlatform_STATUS
+// The configuration settings of the platform of ContainerApp Service Authentication/Authorization.
+type AuthPlatform_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RuntimeVersion *string `json:"runtimeVersion,omitempty"`
+}
+
+// Storage version of v1api20240301.EncryptionSettings
+// The configuration settings of the secrets references of encryption key and signing key for ContainerApp Service
+// Authentication/Authorization.
+type EncryptionSettings struct {
+ ContainerAppAuthEncryptionSecretName *string `json:"containerAppAuthEncryptionSecretName,omitempty"`
+ ContainerAppAuthSigningSecretName *string `json:"containerAppAuthSigningSecretName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.EncryptionSettings_STATUS
+// The configuration settings of the secrets references of encryption key and signing key for ContainerApp Service
+// Authentication/Authorization.
+type EncryptionSettings_STATUS struct {
+ ContainerAppAuthEncryptionSecretName *string `json:"containerAppAuthEncryptionSecretName,omitempty"`
+ ContainerAppAuthSigningSecretName *string `json:"containerAppAuthSigningSecretName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.GlobalValidation
+// The configuration settings that determines the validation flow of users using ContainerApp Service
+// Authentication/Authorization.
+type GlobalValidation struct {
+ ExcludedPaths []string `json:"excludedPaths,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RedirectToProvider *string `json:"redirectToProvider,omitempty"`
+ UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty"`
+}
+
+// Storage version of v1api20240301.GlobalValidation_STATUS
+// The configuration settings that determines the validation flow of users using ContainerApp Service
+// Authentication/Authorization.
+type GlobalValidation_STATUS struct {
+ ExcludedPaths []string `json:"excludedPaths,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RedirectToProvider *string `json:"redirectToProvider,omitempty"`
+ UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty"`
+}
+
+// Storage version of v1api20240301.HttpSettings
+// The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp
+// Service Authentication/Authorization.
+type HttpSettings struct {
+ ForwardProxy *ForwardProxy `json:"forwardProxy,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RequireHttps *bool `json:"requireHttps,omitempty"`
+ Routes *HttpSettingsRoutes `json:"routes,omitempty"`
+}
+
+// Storage version of v1api20240301.HttpSettings_STATUS
+// The configuration settings of the HTTP requests for authentication and authorization requests made against ContainerApp
+// Service Authentication/Authorization.
+type HttpSettings_STATUS struct {
+ ForwardProxy *ForwardProxy_STATUS `json:"forwardProxy,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RequireHttps *bool `json:"requireHttps,omitempty"`
+ Routes *HttpSettingsRoutes_STATUS `json:"routes,omitempty"`
+}
+
+// Storage version of v1api20240301.IdentityProviders
+// The configuration settings of each of the identity providers used to configure ContainerApp Service
+// Authentication/Authorization.
+type IdentityProviders struct {
+ Apple *Apple `json:"apple,omitempty"`
+ AzureActiveDirectory *AzureActiveDirectory `json:"azureActiveDirectory,omitempty"`
+ AzureStaticWebApps *AzureStaticWebApps `json:"azureStaticWebApps,omitempty"`
+ CustomOpenIdConnectProviders map[string]CustomOpenIdConnectProvider `json:"customOpenIdConnectProviders,omitempty"`
+ Facebook *Facebook `json:"facebook,omitempty"`
+ GitHub *GitHub `json:"gitHub,omitempty"`
+ Google *Google `json:"google,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Twitter *Twitter `json:"twitter,omitempty"`
+}
+
+// Storage version of v1api20240301.IdentityProviders_STATUS
+// The configuration settings of each of the identity providers used to configure ContainerApp Service
+// Authentication/Authorization.
+type IdentityProviders_STATUS struct {
+ Apple *Apple_STATUS `json:"apple,omitempty"`
+ AzureActiveDirectory *AzureActiveDirectory_STATUS `json:"azureActiveDirectory,omitempty"`
+ AzureStaticWebApps *AzureStaticWebApps_STATUS `json:"azureStaticWebApps,omitempty"`
+ CustomOpenIdConnectProviders map[string]CustomOpenIdConnectProvider_STATUS `json:"customOpenIdConnectProviders,omitempty"`
+ Facebook *Facebook_STATUS `json:"facebook,omitempty"`
+ GitHub *GitHub_STATUS `json:"gitHub,omitempty"`
+ Google *Google_STATUS `json:"google,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Twitter *Twitter_STATUS `json:"twitter,omitempty"`
+}
+
+// Storage version of v1api20240301.Login
+// The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+type Login struct {
+ AllowedExternalRedirectUrls []string `json:"allowedExternalRedirectUrls,omitempty"`
+ CookieExpiration *CookieExpiration `json:"cookieExpiration,omitempty"`
+ Nonce *Nonce `json:"nonce,omitempty"`
+ PreserveUrlFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Routes *LoginRoutes `json:"routes,omitempty"`
+ TokenStore *TokenStore `json:"tokenStore,omitempty"`
+}
+
+// Storage version of v1api20240301.Login_STATUS
+// The configuration settings of the login flow of users using ContainerApp Service Authentication/Authorization.
+type Login_STATUS struct {
+ AllowedExternalRedirectUrls []string `json:"allowedExternalRedirectUrls,omitempty"`
+ CookieExpiration *CookieExpiration_STATUS `json:"cookieExpiration,omitempty"`
+ Nonce *Nonce_STATUS `json:"nonce,omitempty"`
+ PreserveUrlFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Routes *LoginRoutes_STATUS `json:"routes,omitempty"`
+ TokenStore *TokenStore_STATUS `json:"tokenStore,omitempty"`
+}
+
+// Storage version of v1api20240301.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 v1api20240301.Apple
+// The configuration settings of the Apple provider.
+type Apple struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ Login *LoginScopes `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *AppleRegistration `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.Apple_STATUS
+// The configuration settings of the Apple provider.
+type Apple_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *AppleRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureActiveDirectory
+// The configuration settings of the Azure Active directory provider.
+type AzureActiveDirectory struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ IsAutoProvisioned *bool `json:"isAutoProvisioned,omitempty"`
+ Login *AzureActiveDirectoryLogin `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *AzureActiveDirectoryRegistration `json:"registration,omitempty"`
+ Validation *AzureActiveDirectoryValidation `json:"validation,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureActiveDirectory_STATUS
+// The configuration settings of the Azure Active directory provider.
+type AzureActiveDirectory_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ IsAutoProvisioned *bool `json:"isAutoProvisioned,omitempty"`
+ Login *AzureActiveDirectoryLogin_STATUS `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *AzureActiveDirectoryRegistration_STATUS `json:"registration,omitempty"`
+ Validation *AzureActiveDirectoryValidation_STATUS `json:"validation,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureStaticWebApps
+// The configuration settings of the Azure Static Web Apps provider.
+type AzureStaticWebApps struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *AzureStaticWebAppsRegistration `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureStaticWebApps_STATUS
+// The configuration settings of the Azure Static Web Apps provider.
+type AzureStaticWebApps_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *AzureStaticWebAppsRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.CookieExpiration
+// The configuration settings of the session cookie's expiration.
+type CookieExpiration struct {
+ Convention *string `json:"convention,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TimeToExpiration *string `json:"timeToExpiration,omitempty"`
+}
+
+// Storage version of v1api20240301.CookieExpiration_STATUS
+// The configuration settings of the session cookie's expiration.
+type CookieExpiration_STATUS struct {
+ Convention *string `json:"convention,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TimeToExpiration *string `json:"timeToExpiration,omitempty"`
+}
+
+// Storage version of v1api20240301.CustomOpenIdConnectProvider
+// The configuration settings of the custom Open ID Connect provider.
+type CustomOpenIdConnectProvider struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ Login *OpenIdConnectLogin `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *OpenIdConnectRegistration `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.CustomOpenIdConnectProvider_STATUS
+// The configuration settings of the custom Open ID Connect provider.
+type CustomOpenIdConnectProvider_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ Login *OpenIdConnectLogin_STATUS `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *OpenIdConnectRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.Facebook
+// The configuration settings of the Facebook provider.
+type Facebook struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ GraphApiVersion *string `json:"graphApiVersion,omitempty"`
+ Login *LoginScopes `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *AppRegistration `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.Facebook_STATUS
+// The configuration settings of the Facebook provider.
+type Facebook_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ GraphApiVersion *string `json:"graphApiVersion,omitempty"`
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *AppRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.ForwardProxy
+// The configuration settings of a forward proxy used to make the requests.
+type ForwardProxy struct {
+ Convention *string `json:"convention,omitempty"`
+ CustomHostHeaderName *string `json:"customHostHeaderName,omitempty"`
+ CustomProtoHeaderName *string `json:"customProtoHeaderName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ForwardProxy_STATUS
+// The configuration settings of a forward proxy used to make the requests.
+type ForwardProxy_STATUS struct {
+ Convention *string `json:"convention,omitempty"`
+ CustomHostHeaderName *string `json:"customHostHeaderName,omitempty"`
+ CustomProtoHeaderName *string `json:"customProtoHeaderName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.GitHub
+// The configuration settings of the GitHub provider.
+type GitHub struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ Login *LoginScopes `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *ClientRegistration `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.GitHub_STATUS
+// The configuration settings of the GitHub provider.
+type GitHub_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *ClientRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.Google
+// The configuration settings of the Google provider.
+type Google struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ Login *LoginScopes `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *ClientRegistration `json:"registration,omitempty"`
+ Validation *AllowedAudiencesValidation `json:"validation,omitempty"`
+}
+
+// Storage version of v1api20240301.Google_STATUS
+// The configuration settings of the Google provider.
+type Google_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ Login *LoginScopes_STATUS `json:"login,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *ClientRegistration_STATUS `json:"registration,omitempty"`
+ Validation *AllowedAudiencesValidation_STATUS `json:"validation,omitempty"`
+}
+
+// Storage version of v1api20240301.HttpSettingsRoutes
+// The configuration settings of the paths HTTP requests.
+type HttpSettingsRoutes struct {
+ ApiPrefix *string `json:"apiPrefix,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.HttpSettingsRoutes_STATUS
+// The configuration settings of the paths HTTP requests.
+type HttpSettingsRoutes_STATUS struct {
+ ApiPrefix *string `json:"apiPrefix,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.LoginRoutes
+// The routes that specify the endpoints used for login and logout requests.
+type LoginRoutes struct {
+ LogoutEndpoint *string `json:"logoutEndpoint,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.LoginRoutes_STATUS
+// The routes that specify the endpoints used for login and logout requests.
+type LoginRoutes_STATUS struct {
+ LogoutEndpoint *string `json:"logoutEndpoint,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.Nonce
+// The configuration settings of the nonce used in the login flow.
+type Nonce struct {
+ NonceExpirationInterval *string `json:"nonceExpirationInterval,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ValidateNonce *bool `json:"validateNonce,omitempty"`
+}
+
+// Storage version of v1api20240301.Nonce_STATUS
+// The configuration settings of the nonce used in the login flow.
+type Nonce_STATUS struct {
+ NonceExpirationInterval *string `json:"nonceExpirationInterval,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ValidateNonce *bool `json:"validateNonce,omitempty"`
+}
+
+// Storage version of v1api20240301.TokenStore
+// The configuration settings of the token store.
+type TokenStore struct {
+ AzureBlobStorage *BlobStorageTokenStore `json:"azureBlobStorage,omitempty"`
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty"`
+}
+
+// Storage version of v1api20240301.TokenStore_STATUS
+// The configuration settings of the token store.
+type TokenStore_STATUS struct {
+ AzureBlobStorage *BlobStorageTokenStore_STATUS `json:"azureBlobStorage,omitempty"`
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty"`
+}
+
+// Storage version of v1api20240301.Twitter
+// The configuration settings of the Twitter provider.
+type Twitter struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *TwitterRegistration `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.Twitter_STATUS
+// The configuration settings of the Twitter provider.
+type Twitter_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registration *TwitterRegistration_STATUS `json:"registration,omitempty"`
+}
+
+// Storage version of v1api20240301.AllowedAudiencesValidation
+// The configuration settings of the Allowed Audiences validation flow.
+type AllowedAudiencesValidation struct {
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AllowedAudiencesValidation_STATUS
+// The configuration settings of the Allowed Audiences validation flow.
+type AllowedAudiencesValidation_STATUS struct {
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AppleRegistration
+// The configuration settings of the registration for the Apple provider
+type AppleRegistration struct {
+ ClientId *string `json:"clientId,omitempty"`
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AppleRegistration_STATUS
+// The configuration settings of the registration for the Apple provider
+type AppleRegistration_STATUS struct {
+ ClientId *string `json:"clientId,omitempty"`
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AppRegistration
+// The configuration settings of the app registration for providers that have app ids and app secrets
+type AppRegistration struct {
+ AppId *string `json:"appId,omitempty"`
+ AppSecretSettingName *string `json:"appSecretSettingName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AppRegistration_STATUS
+// The configuration settings of the app registration for providers that have app ids and app secrets
+type AppRegistration_STATUS struct {
+ AppId *string `json:"appId,omitempty"`
+ AppSecretSettingName *string `json:"appSecretSettingName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureActiveDirectoryLogin
+// The configuration settings of the Azure Active Directory login flow.
+type AzureActiveDirectoryLogin struct {
+ DisableWWWAuthenticate *bool `json:"disableWWWAuthenticate,omitempty"`
+ LoginParameters []string `json:"loginParameters,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureActiveDirectoryLogin_STATUS
+// The configuration settings of the Azure Active Directory login flow.
+type AzureActiveDirectoryLogin_STATUS struct {
+ DisableWWWAuthenticate *bool `json:"disableWWWAuthenticate,omitempty"`
+ LoginParameters []string `json:"loginParameters,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureActiveDirectoryRegistration
+// The configuration settings of the Azure Active Directory app registration.
+type AzureActiveDirectoryRegistration struct {
+ ClientId *string `json:"clientId,omitempty"`
+ ClientSecretCertificateIssuer *string `json:"clientSecretCertificateIssuer,omitempty"`
+ ClientSecretCertificateSubjectAlternativeName *string `json:"clientSecretCertificateSubjectAlternativeName,omitempty"`
+ ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty"`
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+ OpenIdIssuer *string `json:"openIdIssuer,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureActiveDirectoryRegistration_STATUS
+// The configuration settings of the Azure Active Directory app registration.
+type AzureActiveDirectoryRegistration_STATUS struct {
+ ClientId *string `json:"clientId,omitempty"`
+ ClientSecretCertificateIssuer *string `json:"clientSecretCertificateIssuer,omitempty"`
+ ClientSecretCertificateSubjectAlternativeName *string `json:"clientSecretCertificateSubjectAlternativeName,omitempty"`
+ ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty"`
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+ OpenIdIssuer *string `json:"openIdIssuer,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureActiveDirectoryValidation
+// The configuration settings of the Azure Active Directory token validation flow.
+type AzureActiveDirectoryValidation struct {
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+ DefaultAuthorizationPolicy *DefaultAuthorizationPolicy `json:"defaultAuthorizationPolicy,omitempty"`
+ JwtClaimChecks *JwtClaimChecks `json:"jwtClaimChecks,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureActiveDirectoryValidation_STATUS
+// The configuration settings of the Azure Active Directory token validation flow.
+type AzureActiveDirectoryValidation_STATUS struct {
+ AllowedAudiences []string `json:"allowedAudiences,omitempty"`
+ DefaultAuthorizationPolicy *DefaultAuthorizationPolicy_STATUS `json:"defaultAuthorizationPolicy,omitempty"`
+ JwtClaimChecks *JwtClaimChecks_STATUS `json:"jwtClaimChecks,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureStaticWebAppsRegistration
+// The configuration settings of the registration for the Azure Static Web Apps provider
+type AzureStaticWebAppsRegistration struct {
+ ClientId *string `json:"clientId,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AzureStaticWebAppsRegistration_STATUS
+// The configuration settings of the registration for the Azure Static Web Apps provider
+type AzureStaticWebAppsRegistration_STATUS struct {
+ ClientId *string `json:"clientId,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.BlobStorageTokenStore
+// The configuration settings of the storage of the tokens if blob storage is used.
+type BlobStorageTokenStore struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SasUrlSettingName *string `json:"sasUrlSettingName,omitempty"`
+}
+
+// Storage version of v1api20240301.BlobStorageTokenStore_STATUS
+// The configuration settings of the storage of the tokens if blob storage is used.
+type BlobStorageTokenStore_STATUS struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SasUrlSettingName *string `json:"sasUrlSettingName,omitempty"`
+}
+
+// Storage version of v1api20240301.ClientRegistration
+// The configuration settings of the app registration for providers that have client ids and client secrets
+type ClientRegistration struct {
+ ClientId *string `json:"clientId,omitempty"`
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ClientRegistration_STATUS
+// The configuration settings of the app registration for providers that have client ids and client secrets
+type ClientRegistration_STATUS struct {
+ ClientId *string `json:"clientId,omitempty"`
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.LoginScopes
+// The configuration settings of the login flow, including the scopes that should be requested.
+type LoginScopes struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+// Storage version of v1api20240301.LoginScopes_STATUS
+// The configuration settings of the login flow, including the scopes that should be requested.
+type LoginScopes_STATUS struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+// Storage version of v1api20240301.OpenIdConnectLogin
+// The configuration settings of the login flow of the custom Open ID Connect provider.
+type OpenIdConnectLogin struct {
+ NameClaimType *string `json:"nameClaimType,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+// Storage version of v1api20240301.OpenIdConnectLogin_STATUS
+// The configuration settings of the login flow of the custom Open ID Connect provider.
+type OpenIdConnectLogin_STATUS struct {
+ NameClaimType *string `json:"nameClaimType,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Scopes []string `json:"scopes,omitempty"`
+}
+
+// Storage version of v1api20240301.OpenIdConnectRegistration
+// The configuration settings of the app registration for the custom Open ID Connect provider.
+type OpenIdConnectRegistration struct {
+ ClientCredential *OpenIdConnectClientCredential `json:"clientCredential,omitempty"`
+ ClientId *string `json:"clientId,omitempty"`
+ OpenIdConnectConfiguration *OpenIdConnectConfig `json:"openIdConnectConfiguration,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.OpenIdConnectRegistration_STATUS
+// The configuration settings of the app registration for the custom Open ID Connect provider.
+type OpenIdConnectRegistration_STATUS struct {
+ ClientCredential *OpenIdConnectClientCredential_STATUS `json:"clientCredential,omitempty"`
+ ClientId *string `json:"clientId,omitempty"`
+ OpenIdConnectConfiguration *OpenIdConnectConfig_STATUS `json:"openIdConnectConfiguration,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.TwitterRegistration
+// The configuration settings of the app registration for the Twitter provider.
+type TwitterRegistration struct {
+ ConsumerKey *string `json:"consumerKey,omitempty"`
+ ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.TwitterRegistration_STATUS
+// The configuration settings of the app registration for the Twitter provider.
+type TwitterRegistration_STATUS struct {
+ ConsumerKey *string `json:"consumerKey,omitempty"`
+ ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.DefaultAuthorizationPolicy
+// The configuration settings of the Azure Active Directory default authorization policy.
+type DefaultAuthorizationPolicy struct {
+ AllowedApplications []string `json:"allowedApplications,omitempty"`
+ AllowedPrincipals *AllowedPrincipals `json:"allowedPrincipals,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.DefaultAuthorizationPolicy_STATUS
+// The configuration settings of the Azure Active Directory default authorization policy.
+type DefaultAuthorizationPolicy_STATUS struct {
+ AllowedApplications []string `json:"allowedApplications,omitempty"`
+ AllowedPrincipals *AllowedPrincipals_STATUS `json:"allowedPrincipals,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.JwtClaimChecks
+// The configuration settings of the checks that should be made while validating the JWT Claims.
+type JwtClaimChecks struct {
+ AllowedClientApplications []string `json:"allowedClientApplications,omitempty"`
+ AllowedGroups []string `json:"allowedGroups,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.JwtClaimChecks_STATUS
+// The configuration settings of the checks that should be made while validating the JWT Claims.
+type JwtClaimChecks_STATUS struct {
+ AllowedClientApplications []string `json:"allowedClientApplications,omitempty"`
+ AllowedGroups []string `json:"allowedGroups,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.OpenIdConnectClientCredential
+// The authentication client credentials of the custom Open ID Connect provider.
+type OpenIdConnectClientCredential struct {
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+ Method *string `json:"method,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.OpenIdConnectClientCredential_STATUS
+// The authentication client credentials of the custom Open ID Connect provider.
+type OpenIdConnectClientCredential_STATUS struct {
+ ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty"`
+ Method *string `json:"method,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.OpenIdConnectConfig
+// The configuration settings of the endpoints used for the custom Open ID Connect provider.
+type OpenIdConnectConfig struct {
+ AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty"`
+ CertificationUri *string `json:"certificationUri,omitempty"`
+ Issuer *string `json:"issuer,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TokenEndpoint *string `json:"tokenEndpoint,omitempty"`
+ WellKnownOpenIdConfiguration *string `json:"wellKnownOpenIdConfiguration,omitempty"`
+}
+
+// Storage version of v1api20240301.OpenIdConnectConfig_STATUS
+// The configuration settings of the endpoints used for the custom Open ID Connect provider.
+type OpenIdConnectConfig_STATUS struct {
+ AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty"`
+ CertificationUri *string `json:"certificationUri,omitempty"`
+ Issuer *string `json:"issuer,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TokenEndpoint *string `json:"tokenEndpoint,omitempty"`
+ WellKnownOpenIdConfiguration *string `json:"wellKnownOpenIdConfiguration,omitempty"`
+}
+
+// Storage version of v1api20240301.AllowedPrincipals
+// The configuration settings of the Azure Active Directory allowed principals.
+type AllowedPrincipals struct {
+ Groups []string `json:"groups,omitempty"`
+ Identities []string `json:"identities,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AllowedPrincipals_STATUS
+// The configuration settings of the Azure Active Directory allowed principals.
+type AllowedPrincipals_STATUS struct {
+ Groups []string `json:"groups,omitempty"`
+ Identities []string `json:"identities,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+func init() {
+ SchemeBuilder.Register(&AuthConfig{}, &AuthConfigList{})
+}
diff --git a/v2/api/app/v1api20240301/storage/auth_config_types_gen_test.go b/v2/api/app/v1api20240301/storage/auth_config_types_gen_test.go
new file mode 100644
index 00000000000..87c02e6e709
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/auth_config_types_gen_test.go
@@ -0,0 +1,5461 @@
+// 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_AllowedAudiencesValidation_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 AllowedAudiencesValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedAudiencesValidation, AllowedAudiencesValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedAudiencesValidation runs a test to see if a specific instance of AllowedAudiencesValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedAudiencesValidation(subject AllowedAudiencesValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedAudiencesValidation
+ 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 AllowedAudiencesValidation instances for property testing - lazily instantiated by
+// AllowedAudiencesValidationGenerator()
+var allowedAudiencesValidationGenerator gopter.Gen
+
+// AllowedAudiencesValidationGenerator returns a generator of AllowedAudiencesValidation instances for property testing.
+func AllowedAudiencesValidationGenerator() gopter.Gen {
+ if allowedAudiencesValidationGenerator != nil {
+ return allowedAudiencesValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedAudiencesValidation(generators)
+ allowedAudiencesValidationGenerator = gen.Struct(reflect.TypeOf(AllowedAudiencesValidation{}), generators)
+
+ return allowedAudiencesValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedAudiencesValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedAudiencesValidation(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AllowedAudiencesValidation_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 AllowedAudiencesValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedAudiencesValidation_STATUS, AllowedAudiencesValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedAudiencesValidation_STATUS runs a test to see if a specific instance of AllowedAudiencesValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedAudiencesValidation_STATUS(subject AllowedAudiencesValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedAudiencesValidation_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 AllowedAudiencesValidation_STATUS instances for property testing - lazily instantiated by
+// AllowedAudiencesValidation_STATUSGenerator()
+var allowedAudiencesValidation_STATUSGenerator gopter.Gen
+
+// AllowedAudiencesValidation_STATUSGenerator returns a generator of AllowedAudiencesValidation_STATUS instances for property testing.
+func AllowedAudiencesValidation_STATUSGenerator() gopter.Gen {
+ if allowedAudiencesValidation_STATUSGenerator != nil {
+ return allowedAudiencesValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS(generators)
+ allowedAudiencesValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AllowedAudiencesValidation_STATUS{}), generators)
+
+ return allowedAudiencesValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedAudiencesValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AllowedPrincipals_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 AllowedPrincipals via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedPrincipals, AllowedPrincipalsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedPrincipals runs a test to see if a specific instance of AllowedPrincipals round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedPrincipals(subject AllowedPrincipals) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedPrincipals
+ 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 AllowedPrincipals instances for property testing - lazily instantiated by AllowedPrincipalsGenerator()
+var allowedPrincipalsGenerator gopter.Gen
+
+// AllowedPrincipalsGenerator returns a generator of AllowedPrincipals instances for property testing.
+func AllowedPrincipalsGenerator() gopter.Gen {
+ if allowedPrincipalsGenerator != nil {
+ return allowedPrincipalsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedPrincipals(generators)
+ allowedPrincipalsGenerator = gen.Struct(reflect.TypeOf(AllowedPrincipals{}), generators)
+
+ return allowedPrincipalsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedPrincipals is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedPrincipals(gens map[string]gopter.Gen) {
+ gens["Groups"] = gen.SliceOf(gen.AlphaString())
+ gens["Identities"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AllowedPrincipals_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 AllowedPrincipals_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAllowedPrincipals_STATUS, AllowedPrincipals_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAllowedPrincipals_STATUS runs a test to see if a specific instance of AllowedPrincipals_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAllowedPrincipals_STATUS(subject AllowedPrincipals_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AllowedPrincipals_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 AllowedPrincipals_STATUS instances for property testing - lazily instantiated by
+// AllowedPrincipals_STATUSGenerator()
+var allowedPrincipals_STATUSGenerator gopter.Gen
+
+// AllowedPrincipals_STATUSGenerator returns a generator of AllowedPrincipals_STATUS instances for property testing.
+func AllowedPrincipals_STATUSGenerator() gopter.Gen {
+ if allowedPrincipals_STATUSGenerator != nil {
+ return allowedPrincipals_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS(generators)
+ allowedPrincipals_STATUSGenerator = gen.Struct(reflect.TypeOf(AllowedPrincipals_STATUS{}), generators)
+
+ return allowedPrincipals_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAllowedPrincipals_STATUS(gens map[string]gopter.Gen) {
+ gens["Groups"] = gen.SliceOf(gen.AlphaString())
+ gens["Identities"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AppRegistration_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 AppRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppRegistration, AppRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppRegistration runs a test to see if a specific instance of AppRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppRegistration(subject AppRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppRegistration
+ 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 AppRegistration instances for property testing - lazily instantiated by AppRegistrationGenerator()
+var appRegistrationGenerator gopter.Gen
+
+// AppRegistrationGenerator returns a generator of AppRegistration instances for property testing.
+func AppRegistrationGenerator() gopter.Gen {
+ if appRegistrationGenerator != nil {
+ return appRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppRegistration(generators)
+ appRegistrationGenerator = gen.Struct(reflect.TypeOf(AppRegistration{}), generators)
+
+ return appRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppRegistration(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AppRegistration_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 AppRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppRegistration_STATUS, AppRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppRegistration_STATUS runs a test to see if a specific instance of AppRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppRegistration_STATUS(subject AppRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppRegistration_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 AppRegistration_STATUS instances for property testing - lazily instantiated by
+// AppRegistration_STATUSGenerator()
+var appRegistration_STATUSGenerator gopter.Gen
+
+// AppRegistration_STATUSGenerator returns a generator of AppRegistration_STATUS instances for property testing.
+func AppRegistration_STATUSGenerator() gopter.Gen {
+ if appRegistration_STATUSGenerator != nil {
+ return appRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppRegistration_STATUS(generators)
+ appRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppRegistration_STATUS{}), generators)
+
+ return appRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Apple_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 Apple via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForApple, AppleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForApple runs a test to see if a specific instance of Apple round trips to JSON and back losslessly
+func RunJSONSerializationTestForApple(subject Apple) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Apple
+ 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 Apple instances for property testing - lazily instantiated by AppleGenerator()
+var appleGenerator gopter.Gen
+
+// AppleGenerator returns a generator of Apple instances for property testing.
+// We first initialize appleGenerator 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 AppleGenerator() gopter.Gen {
+ if appleGenerator != nil {
+ return appleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple(generators)
+ appleGenerator = gen.Struct(reflect.TypeOf(Apple{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple(generators)
+ AddRelatedPropertyGeneratorsForApple(generators)
+ appleGenerator = gen.Struct(reflect.TypeOf(Apple{}), generators)
+
+ return appleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForApple is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForApple(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForApple is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForApple(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(AppleRegistrationGenerator())
+}
+
+func Test_AppleRegistration_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 AppleRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppleRegistration, AppleRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppleRegistration runs a test to see if a specific instance of AppleRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppleRegistration(subject AppleRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppleRegistration
+ 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 AppleRegistration instances for property testing - lazily instantiated by AppleRegistrationGenerator()
+var appleRegistrationGenerator gopter.Gen
+
+// AppleRegistrationGenerator returns a generator of AppleRegistration instances for property testing.
+func AppleRegistrationGenerator() gopter.Gen {
+ if appleRegistrationGenerator != nil {
+ return appleRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppleRegistration(generators)
+ appleRegistrationGenerator = gen.Struct(reflect.TypeOf(AppleRegistration{}), generators)
+
+ return appleRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppleRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppleRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AppleRegistration_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 AppleRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppleRegistration_STATUS, AppleRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppleRegistration_STATUS runs a test to see if a specific instance of AppleRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppleRegistration_STATUS(subject AppleRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppleRegistration_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 AppleRegistration_STATUS instances for property testing - lazily instantiated by
+// AppleRegistration_STATUSGenerator()
+var appleRegistration_STATUSGenerator gopter.Gen
+
+// AppleRegistration_STATUSGenerator returns a generator of AppleRegistration_STATUS instances for property testing.
+func AppleRegistration_STATUSGenerator() gopter.Gen {
+ if appleRegistration_STATUSGenerator != nil {
+ return appleRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppleRegistration_STATUS(generators)
+ appleRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppleRegistration_STATUS{}), generators)
+
+ return appleRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppleRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppleRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Apple_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 Apple_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForApple_STATUS, Apple_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForApple_STATUS runs a test to see if a specific instance of Apple_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForApple_STATUS(subject Apple_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Apple_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 Apple_STATUS instances for property testing - lazily instantiated by Apple_STATUSGenerator()
+var apple_STATUSGenerator gopter.Gen
+
+// Apple_STATUSGenerator returns a generator of Apple_STATUS instances for property testing.
+// We first initialize apple_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 Apple_STATUSGenerator() gopter.Gen {
+ if apple_STATUSGenerator != nil {
+ return apple_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple_STATUS(generators)
+ apple_STATUSGenerator = gen.Struct(reflect.TypeOf(Apple_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForApple_STATUS(generators)
+ AddRelatedPropertyGeneratorsForApple_STATUS(generators)
+ apple_STATUSGenerator = gen.Struct(reflect.TypeOf(Apple_STATUS{}), generators)
+
+ return apple_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForApple_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForApple_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForApple_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForApple_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AppleRegistration_STATUSGenerator())
+}
+
+func Test_AuthConfig_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 AuthConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfig, AuthConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfig runs a test to see if a specific instance of AuthConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfig(subject AuthConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfig
+ 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 AuthConfig instances for property testing - lazily instantiated by AuthConfigGenerator()
+var authConfigGenerator gopter.Gen
+
+// AuthConfigGenerator returns a generator of AuthConfig instances for property testing.
+func AuthConfigGenerator() gopter.Gen {
+ if authConfigGenerator != nil {
+ return authConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForAuthConfig(generators)
+ authConfigGenerator = gen.Struct(reflect.TypeOf(AuthConfig{}), generators)
+
+ return authConfigGenerator
+}
+
+// AddRelatedPropertyGeneratorsForAuthConfig is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAuthConfig(gens map[string]gopter.Gen) {
+ gens["Spec"] = AuthConfig_SpecGenerator()
+ gens["Status"] = AuthConfig_STATUSGenerator()
+}
+
+func Test_AuthConfigOperatorSpec_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 AuthConfigOperatorSpec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfigOperatorSpec, AuthConfigOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfigOperatorSpec runs a test to see if a specific instance of AuthConfigOperatorSpec round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfigOperatorSpec(subject AuthConfigOperatorSpec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfigOperatorSpec
+ 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 AuthConfigOperatorSpec instances for property testing - lazily instantiated by
+// AuthConfigOperatorSpecGenerator()
+var authConfigOperatorSpecGenerator gopter.Gen
+
+// AuthConfigOperatorSpecGenerator returns a generator of AuthConfigOperatorSpec instances for property testing.
+func AuthConfigOperatorSpecGenerator() gopter.Gen {
+ if authConfigOperatorSpecGenerator != nil {
+ return authConfigOperatorSpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ authConfigOperatorSpecGenerator = gen.Struct(reflect.TypeOf(AuthConfigOperatorSpec{}), generators)
+
+ return authConfigOperatorSpecGenerator
+}
+
+func Test_AuthConfig_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 AuthConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfig_STATUS, AuthConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfig_STATUS runs a test to see if a specific instance of AuthConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfig_STATUS(subject AuthConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfig_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 AuthConfig_STATUS instances for property testing - lazily instantiated by AuthConfig_STATUSGenerator()
+var authConfig_STATUSGenerator gopter.Gen
+
+// AuthConfig_STATUSGenerator returns a generator of AuthConfig_STATUS instances for property testing.
+// We first initialize authConfig_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 AuthConfig_STATUSGenerator() gopter.Gen {
+ if authConfig_STATUSGenerator != nil {
+ return authConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_STATUS(generators)
+ authConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthConfig_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAuthConfig_STATUS(generators)
+ authConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthConfig_STATUS{}), generators)
+
+ return authConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAuthConfig_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAuthConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["EncryptionSettings"] = gen.PtrOf(EncryptionSettings_STATUSGenerator())
+ gens["GlobalValidation"] = gen.PtrOf(GlobalValidation_STATUSGenerator())
+ gens["HttpSettings"] = gen.PtrOf(HttpSettings_STATUSGenerator())
+ gens["IdentityProviders"] = gen.PtrOf(IdentityProviders_STATUSGenerator())
+ gens["Login"] = gen.PtrOf(Login_STATUSGenerator())
+ gens["Platform"] = gen.PtrOf(AuthPlatform_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+}
+
+func Test_AuthConfig_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 AuthConfig_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthConfig_Spec, AuthConfig_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthConfig_Spec runs a test to see if a specific instance of AuthConfig_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthConfig_Spec(subject AuthConfig_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthConfig_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 AuthConfig_Spec instances for property testing - lazily instantiated by AuthConfig_SpecGenerator()
+var authConfig_SpecGenerator gopter.Gen
+
+// AuthConfig_SpecGenerator returns a generator of AuthConfig_Spec instances for property testing.
+// We first initialize authConfig_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 AuthConfig_SpecGenerator() gopter.Gen {
+ if authConfig_SpecGenerator != nil {
+ return authConfig_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_Spec(generators)
+ authConfig_SpecGenerator = gen.Struct(reflect.TypeOf(AuthConfig_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthConfig_Spec(generators)
+ AddRelatedPropertyGeneratorsForAuthConfig_Spec(generators)
+ authConfig_SpecGenerator = gen.Struct(reflect.TypeOf(AuthConfig_Spec{}), generators)
+
+ return authConfig_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthConfig_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthConfig_Spec(gens map[string]gopter.Gen) {
+ gens["AzureName"] = gen.AlphaString()
+ gens["OriginalVersion"] = gen.AlphaString()
+}
+
+// AddRelatedPropertyGeneratorsForAuthConfig_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAuthConfig_Spec(gens map[string]gopter.Gen) {
+ gens["EncryptionSettings"] = gen.PtrOf(EncryptionSettingsGenerator())
+ gens["GlobalValidation"] = gen.PtrOf(GlobalValidationGenerator())
+ gens["HttpSettings"] = gen.PtrOf(HttpSettingsGenerator())
+ gens["IdentityProviders"] = gen.PtrOf(IdentityProvidersGenerator())
+ gens["Login"] = gen.PtrOf(LoginGenerator())
+ gens["OperatorSpec"] = gen.PtrOf(AuthConfigOperatorSpecGenerator())
+ gens["Platform"] = gen.PtrOf(AuthPlatformGenerator())
+}
+
+func Test_AuthPlatform_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 AuthPlatform via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthPlatform, AuthPlatformGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthPlatform runs a test to see if a specific instance of AuthPlatform round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthPlatform(subject AuthPlatform) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthPlatform
+ 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 AuthPlatform instances for property testing - lazily instantiated by AuthPlatformGenerator()
+var authPlatformGenerator gopter.Gen
+
+// AuthPlatformGenerator returns a generator of AuthPlatform instances for property testing.
+func AuthPlatformGenerator() gopter.Gen {
+ if authPlatformGenerator != nil {
+ return authPlatformGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthPlatform(generators)
+ authPlatformGenerator = gen.Struct(reflect.TypeOf(AuthPlatform{}), generators)
+
+ return authPlatformGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthPlatform is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthPlatform(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["RuntimeVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AuthPlatform_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 AuthPlatform_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAuthPlatform_STATUS, AuthPlatform_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAuthPlatform_STATUS runs a test to see if a specific instance of AuthPlatform_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAuthPlatform_STATUS(subject AuthPlatform_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AuthPlatform_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 AuthPlatform_STATUS instances for property testing - lazily instantiated by
+// AuthPlatform_STATUSGenerator()
+var authPlatform_STATUSGenerator gopter.Gen
+
+// AuthPlatform_STATUSGenerator returns a generator of AuthPlatform_STATUS instances for property testing.
+func AuthPlatform_STATUSGenerator() gopter.Gen {
+ if authPlatform_STATUSGenerator != nil {
+ return authPlatform_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAuthPlatform_STATUS(generators)
+ authPlatform_STATUSGenerator = gen.Struct(reflect.TypeOf(AuthPlatform_STATUS{}), generators)
+
+ return authPlatform_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAuthPlatform_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAuthPlatform_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["RuntimeVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectory_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 AzureActiveDirectory via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectory, AzureActiveDirectoryGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectory runs a test to see if a specific instance of AzureActiveDirectory round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectory(subject AzureActiveDirectory) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectory
+ 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 AzureActiveDirectory instances for property testing - lazily instantiated by
+// AzureActiveDirectoryGenerator()
+var azureActiveDirectoryGenerator gopter.Gen
+
+// AzureActiveDirectoryGenerator returns a generator of AzureActiveDirectory instances for property testing.
+// We first initialize azureActiveDirectoryGenerator 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 AzureActiveDirectoryGenerator() gopter.Gen {
+ if azureActiveDirectoryGenerator != nil {
+ return azureActiveDirectoryGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory(generators)
+ azureActiveDirectoryGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectory(generators)
+ azureActiveDirectoryGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory{}), generators)
+
+ return azureActiveDirectoryGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectory is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectory(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["IsAutoProvisioned"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectory is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectory(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(AzureActiveDirectoryLoginGenerator())
+ gens["Registration"] = gen.PtrOf(AzureActiveDirectoryRegistrationGenerator())
+ gens["Validation"] = gen.PtrOf(AzureActiveDirectoryValidationGenerator())
+}
+
+func Test_AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryLogin, AzureActiveDirectoryLoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryLogin runs a test to see if a specific instance of AzureActiveDirectoryLogin round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryLogin(subject AzureActiveDirectoryLogin) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryLogin
+ 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 AzureActiveDirectoryLogin instances for property testing - lazily instantiated by
+// AzureActiveDirectoryLoginGenerator()
+var azureActiveDirectoryLoginGenerator gopter.Gen
+
+// AzureActiveDirectoryLoginGenerator returns a generator of AzureActiveDirectoryLogin instances for property testing.
+func AzureActiveDirectoryLoginGenerator() gopter.Gen {
+ if azureActiveDirectoryLoginGenerator != nil {
+ return azureActiveDirectoryLoginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin(generators)
+ azureActiveDirectoryLoginGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryLogin{}), generators)
+
+ return azureActiveDirectoryLoginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin(gens map[string]gopter.Gen) {
+ gens["DisableWWWAuthenticate"] = gen.PtrOf(gen.Bool())
+ gens["LoginParameters"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS, AzureActiveDirectoryLogin_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS runs a test to see if a specific instance of AzureActiveDirectoryLogin_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryLogin_STATUS(subject AzureActiveDirectoryLogin_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryLogin_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 AzureActiveDirectoryLogin_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryLogin_STATUSGenerator()
+var azureActiveDirectoryLogin_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryLogin_STATUSGenerator returns a generator of AzureActiveDirectoryLogin_STATUS instances for property testing.
+func AzureActiveDirectoryLogin_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryLogin_STATUSGenerator != nil {
+ return azureActiveDirectoryLogin_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS(generators)
+ azureActiveDirectoryLogin_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryLogin_STATUS{}), generators)
+
+ return azureActiveDirectoryLogin_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["DisableWWWAuthenticate"] = gen.PtrOf(gen.Bool())
+ gens["LoginParameters"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryRegistration, AzureActiveDirectoryRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryRegistration runs a test to see if a specific instance of AzureActiveDirectoryRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryRegistration(subject AzureActiveDirectoryRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryRegistration
+ 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 AzureActiveDirectoryRegistration instances for property testing - lazily instantiated by
+// AzureActiveDirectoryRegistrationGenerator()
+var azureActiveDirectoryRegistrationGenerator gopter.Gen
+
+// AzureActiveDirectoryRegistrationGenerator returns a generator of AzureActiveDirectoryRegistration instances for property testing.
+func AzureActiveDirectoryRegistrationGenerator() gopter.Gen {
+ if azureActiveDirectoryRegistrationGenerator != nil {
+ return azureActiveDirectoryRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration(generators)
+ azureActiveDirectoryRegistrationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryRegistration{}), generators)
+
+ return azureActiveDirectoryRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateIssuer"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateSubjectAlternativeName"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateThumbprint"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["OpenIdIssuer"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS, AzureActiveDirectoryRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS runs a test to see if a specific instance of AzureActiveDirectoryRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryRegistration_STATUS(subject AzureActiveDirectoryRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryRegistration_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 AzureActiveDirectoryRegistration_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryRegistration_STATUSGenerator()
+var azureActiveDirectoryRegistration_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryRegistration_STATUSGenerator returns a generator of AzureActiveDirectoryRegistration_STATUS instances for property testing.
+func AzureActiveDirectoryRegistration_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryRegistration_STATUSGenerator != nil {
+ return azureActiveDirectoryRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS(generators)
+ azureActiveDirectoryRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryRegistration_STATUS{}), generators)
+
+ return azureActiveDirectoryRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateIssuer"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateSubjectAlternativeName"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretCertificateThumbprint"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["OpenIdIssuer"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryValidation, AzureActiveDirectoryValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryValidation runs a test to see if a specific instance of AzureActiveDirectoryValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryValidation(subject AzureActiveDirectoryValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryValidation
+ 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 AzureActiveDirectoryValidation instances for property testing - lazily instantiated by
+// AzureActiveDirectoryValidationGenerator()
+var azureActiveDirectoryValidationGenerator gopter.Gen
+
+// AzureActiveDirectoryValidationGenerator returns a generator of AzureActiveDirectoryValidation instances for property testing.
+// We first initialize azureActiveDirectoryValidationGenerator 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 AzureActiveDirectoryValidationGenerator() gopter.Gen {
+ if azureActiveDirectoryValidationGenerator != nil {
+ return azureActiveDirectoryValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ azureActiveDirectoryValidationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation(generators)
+ azureActiveDirectoryValidationGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation{}), generators)
+
+ return azureActiveDirectoryValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation(gens map[string]gopter.Gen) {
+ gens["DefaultAuthorizationPolicy"] = gen.PtrOf(DefaultAuthorizationPolicyGenerator())
+ gens["JwtClaimChecks"] = gen.PtrOf(JwtClaimChecksGenerator())
+}
+
+func Test_AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS, AzureActiveDirectoryValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS runs a test to see if a specific instance of AzureActiveDirectoryValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectoryValidation_STATUS(subject AzureActiveDirectoryValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectoryValidation_STATUSGenerator()
+var azureActiveDirectoryValidation_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectoryValidation_STATUSGenerator returns a generator of AzureActiveDirectoryValidation_STATUS instances for property testing.
+// We first initialize azureActiveDirectoryValidation_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 AzureActiveDirectoryValidation_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectoryValidation_STATUSGenerator != nil {
+ return azureActiveDirectoryValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ azureActiveDirectoryValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(generators)
+ azureActiveDirectoryValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectoryValidation_STATUS{}), generators)
+
+ return azureActiveDirectoryValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedAudiences"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectoryValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["DefaultAuthorizationPolicy"] = gen.PtrOf(DefaultAuthorizationPolicy_STATUSGenerator())
+ gens["JwtClaimChecks"] = gen.PtrOf(JwtClaimChecks_STATUSGenerator())
+}
+
+func Test_AzureActiveDirectory_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 AzureActiveDirectory_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureActiveDirectory_STATUS, AzureActiveDirectory_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureActiveDirectory_STATUS runs a test to see if a specific instance of AzureActiveDirectory_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureActiveDirectory_STATUS(subject AzureActiveDirectory_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureActiveDirectory_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 AzureActiveDirectory_STATUS instances for property testing - lazily instantiated by
+// AzureActiveDirectory_STATUSGenerator()
+var azureActiveDirectory_STATUSGenerator gopter.Gen
+
+// AzureActiveDirectory_STATUSGenerator returns a generator of AzureActiveDirectory_STATUS instances for property testing.
+// We first initialize azureActiveDirectory_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 AzureActiveDirectory_STATUSGenerator() gopter.Gen {
+ if azureActiveDirectory_STATUSGenerator != nil {
+ return azureActiveDirectory_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ azureActiveDirectory_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS(generators)
+ azureActiveDirectory_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureActiveDirectory_STATUS{}), generators)
+
+ return azureActiveDirectory_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureActiveDirectory_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["IsAutoProvisioned"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureActiveDirectory_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(AzureActiveDirectoryLogin_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AzureActiveDirectoryRegistration_STATUSGenerator())
+ gens["Validation"] = gen.PtrOf(AzureActiveDirectoryValidation_STATUSGenerator())
+}
+
+func Test_AzureStaticWebApps_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 AzureStaticWebApps via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebApps, AzureStaticWebAppsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebApps runs a test to see if a specific instance of AzureStaticWebApps round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebApps(subject AzureStaticWebApps) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebApps
+ 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 AzureStaticWebApps instances for property testing - lazily instantiated by AzureStaticWebAppsGenerator()
+var azureStaticWebAppsGenerator gopter.Gen
+
+// AzureStaticWebAppsGenerator returns a generator of AzureStaticWebApps instances for property testing.
+// We first initialize azureStaticWebAppsGenerator 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 AzureStaticWebAppsGenerator() gopter.Gen {
+ if azureStaticWebAppsGenerator != nil {
+ return azureStaticWebAppsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps(generators)
+ azureStaticWebAppsGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps(generators)
+ AddRelatedPropertyGeneratorsForAzureStaticWebApps(generators)
+ azureStaticWebAppsGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps{}), generators)
+
+ return azureStaticWebAppsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebApps is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebApps(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureStaticWebApps is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureStaticWebApps(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(AzureStaticWebAppsRegistrationGenerator())
+}
+
+func Test_AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebAppsRegistration, AzureStaticWebAppsRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebAppsRegistration runs a test to see if a specific instance of AzureStaticWebAppsRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebAppsRegistration(subject AzureStaticWebAppsRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebAppsRegistration
+ 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 AzureStaticWebAppsRegistration instances for property testing - lazily instantiated by
+// AzureStaticWebAppsRegistrationGenerator()
+var azureStaticWebAppsRegistrationGenerator gopter.Gen
+
+// AzureStaticWebAppsRegistrationGenerator returns a generator of AzureStaticWebAppsRegistration instances for property testing.
+func AzureStaticWebAppsRegistrationGenerator() gopter.Gen {
+ if azureStaticWebAppsRegistrationGenerator != nil {
+ return azureStaticWebAppsRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration(generators)
+ azureStaticWebAppsRegistrationGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebAppsRegistration{}), generators)
+
+ return azureStaticWebAppsRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS, AzureStaticWebAppsRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS runs a test to see if a specific instance of AzureStaticWebAppsRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebAppsRegistration_STATUS(subject AzureStaticWebAppsRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration_STATUS instances for property testing - lazily instantiated by
+// AzureStaticWebAppsRegistration_STATUSGenerator()
+var azureStaticWebAppsRegistration_STATUSGenerator gopter.Gen
+
+// AzureStaticWebAppsRegistration_STATUSGenerator returns a generator of AzureStaticWebAppsRegistration_STATUS instances for property testing.
+func AzureStaticWebAppsRegistration_STATUSGenerator() gopter.Gen {
+ if azureStaticWebAppsRegistration_STATUSGenerator != nil {
+ return azureStaticWebAppsRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS(generators)
+ azureStaticWebAppsRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebAppsRegistration_STATUS{}), generators)
+
+ return azureStaticWebAppsRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebAppsRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_AzureStaticWebApps_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 AzureStaticWebApps_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAzureStaticWebApps_STATUS, AzureStaticWebApps_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAzureStaticWebApps_STATUS runs a test to see if a specific instance of AzureStaticWebApps_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAzureStaticWebApps_STATUS(subject AzureStaticWebApps_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AzureStaticWebApps_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 AzureStaticWebApps_STATUS instances for property testing - lazily instantiated by
+// AzureStaticWebApps_STATUSGenerator()
+var azureStaticWebApps_STATUSGenerator gopter.Gen
+
+// AzureStaticWebApps_STATUSGenerator returns a generator of AzureStaticWebApps_STATUS instances for property testing.
+// We first initialize azureStaticWebApps_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 AzureStaticWebApps_STATUSGenerator() gopter.Gen {
+ if azureStaticWebApps_STATUSGenerator != nil {
+ return azureStaticWebApps_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ azureStaticWebApps_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS(generators)
+ azureStaticWebApps_STATUSGenerator = gen.Struct(reflect.TypeOf(AzureStaticWebApps_STATUS{}), generators)
+
+ return azureStaticWebApps_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAzureStaticWebApps_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAzureStaticWebApps_STATUS(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(AzureStaticWebAppsRegistration_STATUSGenerator())
+}
+
+func Test_BlobStorageTokenStore_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 BlobStorageTokenStore via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBlobStorageTokenStore, BlobStorageTokenStoreGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBlobStorageTokenStore runs a test to see if a specific instance of BlobStorageTokenStore round trips to JSON and back losslessly
+func RunJSONSerializationTestForBlobStorageTokenStore(subject BlobStorageTokenStore) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BlobStorageTokenStore
+ 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 BlobStorageTokenStore instances for property testing - lazily instantiated by
+// BlobStorageTokenStoreGenerator()
+var blobStorageTokenStoreGenerator gopter.Gen
+
+// BlobStorageTokenStoreGenerator returns a generator of BlobStorageTokenStore instances for property testing.
+func BlobStorageTokenStoreGenerator() gopter.Gen {
+ if blobStorageTokenStoreGenerator != nil {
+ return blobStorageTokenStoreGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBlobStorageTokenStore(generators)
+ blobStorageTokenStoreGenerator = gen.Struct(reflect.TypeOf(BlobStorageTokenStore{}), generators)
+
+ return blobStorageTokenStoreGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBlobStorageTokenStore is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBlobStorageTokenStore(gens map[string]gopter.Gen) {
+ gens["SasUrlSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_BlobStorageTokenStore_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 BlobStorageTokenStore_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBlobStorageTokenStore_STATUS, BlobStorageTokenStore_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBlobStorageTokenStore_STATUS runs a test to see if a specific instance of BlobStorageTokenStore_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForBlobStorageTokenStore_STATUS(subject BlobStorageTokenStore_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BlobStorageTokenStore_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 BlobStorageTokenStore_STATUS instances for property testing - lazily instantiated by
+// BlobStorageTokenStore_STATUSGenerator()
+var blobStorageTokenStore_STATUSGenerator gopter.Gen
+
+// BlobStorageTokenStore_STATUSGenerator returns a generator of BlobStorageTokenStore_STATUS instances for property testing.
+func BlobStorageTokenStore_STATUSGenerator() gopter.Gen {
+ if blobStorageTokenStore_STATUSGenerator != nil {
+ return blobStorageTokenStore_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS(generators)
+ blobStorageTokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(BlobStorageTokenStore_STATUS{}), generators)
+
+ return blobStorageTokenStore_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBlobStorageTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["SasUrlSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ClientRegistration_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 ClientRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForClientRegistration, ClientRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForClientRegistration runs a test to see if a specific instance of ClientRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForClientRegistration(subject ClientRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ClientRegistration
+ 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 ClientRegistration instances for property testing - lazily instantiated by ClientRegistrationGenerator()
+var clientRegistrationGenerator gopter.Gen
+
+// ClientRegistrationGenerator returns a generator of ClientRegistration instances for property testing.
+func ClientRegistrationGenerator() gopter.Gen {
+ if clientRegistrationGenerator != nil {
+ return clientRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForClientRegistration(generators)
+ clientRegistrationGenerator = gen.Struct(reflect.TypeOf(ClientRegistration{}), generators)
+
+ return clientRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForClientRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForClientRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ClientRegistration_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 ClientRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForClientRegistration_STATUS, ClientRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForClientRegistration_STATUS runs a test to see if a specific instance of ClientRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForClientRegistration_STATUS(subject ClientRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ClientRegistration_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 ClientRegistration_STATUS instances for property testing - lazily instantiated by
+// ClientRegistration_STATUSGenerator()
+var clientRegistration_STATUSGenerator gopter.Gen
+
+// ClientRegistration_STATUSGenerator returns a generator of ClientRegistration_STATUS instances for property testing.
+func ClientRegistration_STATUSGenerator() gopter.Gen {
+ if clientRegistration_STATUSGenerator != nil {
+ return clientRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForClientRegistration_STATUS(generators)
+ clientRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(ClientRegistration_STATUS{}), generators)
+
+ return clientRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForClientRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForClientRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CookieExpiration_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 CookieExpiration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCookieExpiration, CookieExpirationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCookieExpiration runs a test to see if a specific instance of CookieExpiration round trips to JSON and back losslessly
+func RunJSONSerializationTestForCookieExpiration(subject CookieExpiration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CookieExpiration
+ 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 CookieExpiration instances for property testing - lazily instantiated by CookieExpirationGenerator()
+var cookieExpirationGenerator gopter.Gen
+
+// CookieExpirationGenerator returns a generator of CookieExpiration instances for property testing.
+func CookieExpirationGenerator() gopter.Gen {
+ if cookieExpirationGenerator != nil {
+ return cookieExpirationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCookieExpiration(generators)
+ cookieExpirationGenerator = gen.Struct(reflect.TypeOf(CookieExpiration{}), generators)
+
+ return cookieExpirationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCookieExpiration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCookieExpiration(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.AlphaString())
+ gens["TimeToExpiration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CookieExpiration_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 CookieExpiration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCookieExpiration_STATUS, CookieExpiration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCookieExpiration_STATUS runs a test to see if a specific instance of CookieExpiration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCookieExpiration_STATUS(subject CookieExpiration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CookieExpiration_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 CookieExpiration_STATUS instances for property testing - lazily instantiated by
+// CookieExpiration_STATUSGenerator()
+var cookieExpiration_STATUSGenerator gopter.Gen
+
+// CookieExpiration_STATUSGenerator returns a generator of CookieExpiration_STATUS instances for property testing.
+func CookieExpiration_STATUSGenerator() gopter.Gen {
+ if cookieExpiration_STATUSGenerator != nil {
+ return cookieExpiration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCookieExpiration_STATUS(generators)
+ cookieExpiration_STATUSGenerator = gen.Struct(reflect.TypeOf(CookieExpiration_STATUS{}), generators)
+
+ return cookieExpiration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCookieExpiration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCookieExpiration_STATUS(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.AlphaString())
+ gens["TimeToExpiration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomOpenIdConnectProvider, CustomOpenIdConnectProviderGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomOpenIdConnectProvider runs a test to see if a specific instance of CustomOpenIdConnectProvider round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomOpenIdConnectProvider(subject CustomOpenIdConnectProvider) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomOpenIdConnectProvider
+ 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 CustomOpenIdConnectProvider instances for property testing - lazily instantiated by
+// CustomOpenIdConnectProviderGenerator()
+var customOpenIdConnectProviderGenerator gopter.Gen
+
+// CustomOpenIdConnectProviderGenerator returns a generator of CustomOpenIdConnectProvider instances for property testing.
+// We first initialize customOpenIdConnectProviderGenerator 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 CustomOpenIdConnectProviderGenerator() gopter.Gen {
+ if customOpenIdConnectProviderGenerator != nil {
+ return customOpenIdConnectProviderGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ customOpenIdConnectProviderGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider(generators)
+ customOpenIdConnectProviderGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider{}), generators)
+
+ return customOpenIdConnectProviderGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(OpenIdConnectLoginGenerator())
+ gens["Registration"] = gen.PtrOf(OpenIdConnectRegistrationGenerator())
+}
+
+func Test_CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS, CustomOpenIdConnectProvider_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS runs a test to see if a specific instance of CustomOpenIdConnectProvider_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomOpenIdConnectProvider_STATUS(subject CustomOpenIdConnectProvider_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUS instances for property testing - lazily instantiated by
+// CustomOpenIdConnectProvider_STATUSGenerator()
+var customOpenIdConnectProvider_STATUSGenerator gopter.Gen
+
+// CustomOpenIdConnectProvider_STATUSGenerator returns a generator of CustomOpenIdConnectProvider_STATUS instances for property testing.
+// We first initialize customOpenIdConnectProvider_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 CustomOpenIdConnectProvider_STATUSGenerator() gopter.Gen {
+ if customOpenIdConnectProvider_STATUSGenerator != nil {
+ return customOpenIdConnectProvider_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ customOpenIdConnectProvider_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(generators)
+ customOpenIdConnectProvider_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomOpenIdConnectProvider_STATUS{}), generators)
+
+ return customOpenIdConnectProvider_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomOpenIdConnectProvider_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(OpenIdConnectLogin_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(OpenIdConnectRegistration_STATUSGenerator())
+}
+
+func Test_DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDefaultAuthorizationPolicy, DefaultAuthorizationPolicyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDefaultAuthorizationPolicy runs a test to see if a specific instance of DefaultAuthorizationPolicy round trips to JSON and back losslessly
+func RunJSONSerializationTestForDefaultAuthorizationPolicy(subject DefaultAuthorizationPolicy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DefaultAuthorizationPolicy
+ 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 DefaultAuthorizationPolicy instances for property testing - lazily instantiated by
+// DefaultAuthorizationPolicyGenerator()
+var defaultAuthorizationPolicyGenerator gopter.Gen
+
+// DefaultAuthorizationPolicyGenerator returns a generator of DefaultAuthorizationPolicy instances for property testing.
+// We first initialize defaultAuthorizationPolicyGenerator 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 DefaultAuthorizationPolicyGenerator() gopter.Gen {
+ if defaultAuthorizationPolicyGenerator != nil {
+ return defaultAuthorizationPolicyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ defaultAuthorizationPolicyGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy(generators)
+ defaultAuthorizationPolicyGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy{}), generators)
+
+ return defaultAuthorizationPolicyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy(gens map[string]gopter.Gen) {
+ gens["AllowedApplications"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy(gens map[string]gopter.Gen) {
+ gens["AllowedPrincipals"] = gen.PtrOf(AllowedPrincipalsGenerator())
+}
+
+func Test_DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS, DefaultAuthorizationPolicy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS runs a test to see if a specific instance of DefaultAuthorizationPolicy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDefaultAuthorizationPolicy_STATUS(subject DefaultAuthorizationPolicy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DefaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUS instances for property testing - lazily instantiated by
+// DefaultAuthorizationPolicy_STATUSGenerator()
+var defaultAuthorizationPolicy_STATUSGenerator gopter.Gen
+
+// DefaultAuthorizationPolicy_STATUSGenerator returns a generator of DefaultAuthorizationPolicy_STATUS instances for property testing.
+// We first initialize defaultAuthorizationPolicy_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 DefaultAuthorizationPolicy_STATUSGenerator() gopter.Gen {
+ if defaultAuthorizationPolicy_STATUSGenerator != nil {
+ return defaultAuthorizationPolicy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ defaultAuthorizationPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(generators)
+ defaultAuthorizationPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(DefaultAuthorizationPolicy_STATUS{}), generators)
+
+ return defaultAuthorizationPolicy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedApplications"] = gen.SliceOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForDefaultAuthorizationPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedPrincipals"] = gen.PtrOf(AllowedPrincipals_STATUSGenerator())
+}
+
+func Test_EncryptionSettings_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 EncryptionSettings via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEncryptionSettings, EncryptionSettingsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEncryptionSettings runs a test to see if a specific instance of EncryptionSettings round trips to JSON and back losslessly
+func RunJSONSerializationTestForEncryptionSettings(subject EncryptionSettings) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EncryptionSettings
+ 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 EncryptionSettings instances for property testing - lazily instantiated by EncryptionSettingsGenerator()
+var encryptionSettingsGenerator gopter.Gen
+
+// EncryptionSettingsGenerator returns a generator of EncryptionSettings instances for property testing.
+func EncryptionSettingsGenerator() gopter.Gen {
+ if encryptionSettingsGenerator != nil {
+ return encryptionSettingsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEncryptionSettings(generators)
+ encryptionSettingsGenerator = gen.Struct(reflect.TypeOf(EncryptionSettings{}), generators)
+
+ return encryptionSettingsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEncryptionSettings is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEncryptionSettings(gens map[string]gopter.Gen) {
+ gens["ContainerAppAuthEncryptionSecretName"] = gen.PtrOf(gen.AlphaString())
+ gens["ContainerAppAuthSigningSecretName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_EncryptionSettings_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 EncryptionSettings_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEncryptionSettings_STATUS, EncryptionSettings_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEncryptionSettings_STATUS runs a test to see if a specific instance of EncryptionSettings_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForEncryptionSettings_STATUS(subject EncryptionSettings_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EncryptionSettings_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 EncryptionSettings_STATUS instances for property testing - lazily instantiated by
+// EncryptionSettings_STATUSGenerator()
+var encryptionSettings_STATUSGenerator gopter.Gen
+
+// EncryptionSettings_STATUSGenerator returns a generator of EncryptionSettings_STATUS instances for property testing.
+func EncryptionSettings_STATUSGenerator() gopter.Gen {
+ if encryptionSettings_STATUSGenerator != nil {
+ return encryptionSettings_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS(generators)
+ encryptionSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(EncryptionSettings_STATUS{}), generators)
+
+ return encryptionSettings_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEncryptionSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["ContainerAppAuthEncryptionSecretName"] = gen.PtrOf(gen.AlphaString())
+ gens["ContainerAppAuthSigningSecretName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Facebook_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 Facebook via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForFacebook, FacebookGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForFacebook runs a test to see if a specific instance of Facebook round trips to JSON and back losslessly
+func RunJSONSerializationTestForFacebook(subject Facebook) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Facebook
+ 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 Facebook instances for property testing - lazily instantiated by FacebookGenerator()
+var facebookGenerator gopter.Gen
+
+// FacebookGenerator returns a generator of Facebook instances for property testing.
+// We first initialize facebookGenerator 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 FacebookGenerator() gopter.Gen {
+ if facebookGenerator != nil {
+ return facebookGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook(generators)
+ facebookGenerator = gen.Struct(reflect.TypeOf(Facebook{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook(generators)
+ AddRelatedPropertyGeneratorsForFacebook(generators)
+ facebookGenerator = gen.Struct(reflect.TypeOf(Facebook{}), generators)
+
+ return facebookGenerator
+}
+
+// AddIndependentPropertyGeneratorsForFacebook is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForFacebook(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["GraphApiVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForFacebook is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForFacebook(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(AppRegistrationGenerator())
+}
+
+func Test_Facebook_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 Facebook_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForFacebook_STATUS, Facebook_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForFacebook_STATUS runs a test to see if a specific instance of Facebook_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForFacebook_STATUS(subject Facebook_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Facebook_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 Facebook_STATUS instances for property testing - lazily instantiated by Facebook_STATUSGenerator()
+var facebook_STATUSGenerator gopter.Gen
+
+// Facebook_STATUSGenerator returns a generator of Facebook_STATUS instances for property testing.
+// We first initialize facebook_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 Facebook_STATUSGenerator() gopter.Gen {
+ if facebook_STATUSGenerator != nil {
+ return facebook_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook_STATUS(generators)
+ facebook_STATUSGenerator = gen.Struct(reflect.TypeOf(Facebook_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForFacebook_STATUS(generators)
+ AddRelatedPropertyGeneratorsForFacebook_STATUS(generators)
+ facebook_STATUSGenerator = gen.Struct(reflect.TypeOf(Facebook_STATUS{}), generators)
+
+ return facebook_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForFacebook_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForFacebook_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["GraphApiVersion"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForFacebook_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForFacebook_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(AppRegistration_STATUSGenerator())
+}
+
+func Test_ForwardProxy_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 ForwardProxy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForForwardProxy, ForwardProxyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForForwardProxy runs a test to see if a specific instance of ForwardProxy round trips to JSON and back losslessly
+func RunJSONSerializationTestForForwardProxy(subject ForwardProxy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ForwardProxy
+ 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 ForwardProxy instances for property testing - lazily instantiated by ForwardProxyGenerator()
+var forwardProxyGenerator gopter.Gen
+
+// ForwardProxyGenerator returns a generator of ForwardProxy instances for property testing.
+func ForwardProxyGenerator() gopter.Gen {
+ if forwardProxyGenerator != nil {
+ return forwardProxyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForForwardProxy(generators)
+ forwardProxyGenerator = gen.Struct(reflect.TypeOf(ForwardProxy{}), generators)
+
+ return forwardProxyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForForwardProxy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForForwardProxy(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.AlphaString())
+ gens["CustomHostHeaderName"] = gen.PtrOf(gen.AlphaString())
+ gens["CustomProtoHeaderName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ForwardProxy_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 ForwardProxy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForForwardProxy_STATUS, ForwardProxy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForForwardProxy_STATUS runs a test to see if a specific instance of ForwardProxy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForForwardProxy_STATUS(subject ForwardProxy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ForwardProxy_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 ForwardProxy_STATUS instances for property testing - lazily instantiated by
+// ForwardProxy_STATUSGenerator()
+var forwardProxy_STATUSGenerator gopter.Gen
+
+// ForwardProxy_STATUSGenerator returns a generator of ForwardProxy_STATUS instances for property testing.
+func ForwardProxy_STATUSGenerator() gopter.Gen {
+ if forwardProxy_STATUSGenerator != nil {
+ return forwardProxy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForForwardProxy_STATUS(generators)
+ forwardProxy_STATUSGenerator = gen.Struct(reflect.TypeOf(ForwardProxy_STATUS{}), generators)
+
+ return forwardProxy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForForwardProxy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForForwardProxy_STATUS(gens map[string]gopter.Gen) {
+ gens["Convention"] = gen.PtrOf(gen.AlphaString())
+ gens["CustomHostHeaderName"] = gen.PtrOf(gen.AlphaString())
+ gens["CustomProtoHeaderName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_GitHub_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 GitHub via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGitHub, GitHubGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGitHub runs a test to see if a specific instance of GitHub round trips to JSON and back losslessly
+func RunJSONSerializationTestForGitHub(subject GitHub) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GitHub
+ 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 GitHub instances for property testing - lazily instantiated by GitHubGenerator()
+var gitHubGenerator gopter.Gen
+
+// GitHubGenerator returns a generator of GitHub instances for property testing.
+// We first initialize gitHubGenerator 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 GitHubGenerator() gopter.Gen {
+ if gitHubGenerator != nil {
+ return gitHubGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub(generators)
+ gitHubGenerator = gen.Struct(reflect.TypeOf(GitHub{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub(generators)
+ AddRelatedPropertyGeneratorsForGitHub(generators)
+ gitHubGenerator = gen.Struct(reflect.TypeOf(GitHub{}), generators)
+
+ return gitHubGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGitHub is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGitHub(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGitHub is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGitHub(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistrationGenerator())
+}
+
+func Test_GitHub_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 GitHub_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGitHub_STATUS, GitHub_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGitHub_STATUS runs a test to see if a specific instance of GitHub_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGitHub_STATUS(subject GitHub_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GitHub_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 GitHub_STATUS instances for property testing - lazily instantiated by GitHub_STATUSGenerator()
+var gitHub_STATUSGenerator gopter.Gen
+
+// GitHub_STATUSGenerator returns a generator of GitHub_STATUS instances for property testing.
+// We first initialize gitHub_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 GitHub_STATUSGenerator() gopter.Gen {
+ if gitHub_STATUSGenerator != nil {
+ return gitHub_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub_STATUS(generators)
+ gitHub_STATUSGenerator = gen.Struct(reflect.TypeOf(GitHub_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGitHub_STATUS(generators)
+ AddRelatedPropertyGeneratorsForGitHub_STATUS(generators)
+ gitHub_STATUSGenerator = gen.Struct(reflect.TypeOf(GitHub_STATUS{}), generators)
+
+ return gitHub_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGitHub_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGitHub_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGitHub_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGitHub_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistration_STATUSGenerator())
+}
+
+func Test_GlobalValidation_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 GlobalValidation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGlobalValidation, GlobalValidationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGlobalValidation runs a test to see if a specific instance of GlobalValidation round trips to JSON and back losslessly
+func RunJSONSerializationTestForGlobalValidation(subject GlobalValidation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GlobalValidation
+ 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 GlobalValidation instances for property testing - lazily instantiated by GlobalValidationGenerator()
+var globalValidationGenerator gopter.Gen
+
+// GlobalValidationGenerator returns a generator of GlobalValidation instances for property testing.
+func GlobalValidationGenerator() gopter.Gen {
+ if globalValidationGenerator != nil {
+ return globalValidationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGlobalValidation(generators)
+ globalValidationGenerator = gen.Struct(reflect.TypeOf(GlobalValidation{}), generators)
+
+ return globalValidationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGlobalValidation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGlobalValidation(gens map[string]gopter.Gen) {
+ gens["ExcludedPaths"] = gen.SliceOf(gen.AlphaString())
+ gens["RedirectToProvider"] = gen.PtrOf(gen.AlphaString())
+ gens["UnauthenticatedClientAction"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_GlobalValidation_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 GlobalValidation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGlobalValidation_STATUS, GlobalValidation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGlobalValidation_STATUS runs a test to see if a specific instance of GlobalValidation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGlobalValidation_STATUS(subject GlobalValidation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual GlobalValidation_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 GlobalValidation_STATUS instances for property testing - lazily instantiated by
+// GlobalValidation_STATUSGenerator()
+var globalValidation_STATUSGenerator gopter.Gen
+
+// GlobalValidation_STATUSGenerator returns a generator of GlobalValidation_STATUS instances for property testing.
+func GlobalValidation_STATUSGenerator() gopter.Gen {
+ if globalValidation_STATUSGenerator != nil {
+ return globalValidation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGlobalValidation_STATUS(generators)
+ globalValidation_STATUSGenerator = gen.Struct(reflect.TypeOf(GlobalValidation_STATUS{}), generators)
+
+ return globalValidation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGlobalValidation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGlobalValidation_STATUS(gens map[string]gopter.Gen) {
+ gens["ExcludedPaths"] = gen.SliceOf(gen.AlphaString())
+ gens["RedirectToProvider"] = gen.PtrOf(gen.AlphaString())
+ gens["UnauthenticatedClientAction"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Google_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 Google via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGoogle, GoogleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGoogle runs a test to see if a specific instance of Google round trips to JSON and back losslessly
+func RunJSONSerializationTestForGoogle(subject Google) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Google
+ 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 Google instances for property testing - lazily instantiated by GoogleGenerator()
+var googleGenerator gopter.Gen
+
+// GoogleGenerator returns a generator of Google instances for property testing.
+// We first initialize googleGenerator 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 GoogleGenerator() gopter.Gen {
+ if googleGenerator != nil {
+ return googleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle(generators)
+ googleGenerator = gen.Struct(reflect.TypeOf(Google{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle(generators)
+ AddRelatedPropertyGeneratorsForGoogle(generators)
+ googleGenerator = gen.Struct(reflect.TypeOf(Google{}), generators)
+
+ return googleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGoogle is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGoogle(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGoogle is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGoogle(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopesGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistrationGenerator())
+ gens["Validation"] = gen.PtrOf(AllowedAudiencesValidationGenerator())
+}
+
+func Test_Google_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 Google_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForGoogle_STATUS, Google_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForGoogle_STATUS runs a test to see if a specific instance of Google_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForGoogle_STATUS(subject Google_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Google_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 Google_STATUS instances for property testing - lazily instantiated by Google_STATUSGenerator()
+var google_STATUSGenerator gopter.Gen
+
+// Google_STATUSGenerator returns a generator of Google_STATUS instances for property testing.
+// We first initialize google_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 Google_STATUSGenerator() gopter.Gen {
+ if google_STATUSGenerator != nil {
+ return google_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle_STATUS(generators)
+ google_STATUSGenerator = gen.Struct(reflect.TypeOf(Google_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForGoogle_STATUS(generators)
+ AddRelatedPropertyGeneratorsForGoogle_STATUS(generators)
+ google_STATUSGenerator = gen.Struct(reflect.TypeOf(Google_STATUS{}), generators)
+
+ return google_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForGoogle_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForGoogle_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForGoogle_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForGoogle_STATUS(gens map[string]gopter.Gen) {
+ gens["Login"] = gen.PtrOf(LoginScopes_STATUSGenerator())
+ gens["Registration"] = gen.PtrOf(ClientRegistration_STATUSGenerator())
+ gens["Validation"] = gen.PtrOf(AllowedAudiencesValidation_STATUSGenerator())
+}
+
+func Test_HttpSettings_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 HttpSettings via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettings, HttpSettingsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettings runs a test to see if a specific instance of HttpSettings round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettings(subject HttpSettings) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettings
+ 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 HttpSettings instances for property testing - lazily instantiated by HttpSettingsGenerator()
+var httpSettingsGenerator gopter.Gen
+
+// HttpSettingsGenerator returns a generator of HttpSettings instances for property testing.
+// We first initialize httpSettingsGenerator 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 HttpSettingsGenerator() gopter.Gen {
+ if httpSettingsGenerator != nil {
+ return httpSettingsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings(generators)
+ httpSettingsGenerator = gen.Struct(reflect.TypeOf(HttpSettings{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings(generators)
+ AddRelatedPropertyGeneratorsForHttpSettings(generators)
+ httpSettingsGenerator = gen.Struct(reflect.TypeOf(HttpSettings{}), generators)
+
+ return httpSettingsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettings is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettings(gens map[string]gopter.Gen) {
+ gens["RequireHttps"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForHttpSettings is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpSettings(gens map[string]gopter.Gen) {
+ gens["ForwardProxy"] = gen.PtrOf(ForwardProxyGenerator())
+ gens["Routes"] = gen.PtrOf(HttpSettingsRoutesGenerator())
+}
+
+func Test_HttpSettingsRoutes_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 HttpSettingsRoutes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettingsRoutes, HttpSettingsRoutesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettingsRoutes runs a test to see if a specific instance of HttpSettingsRoutes round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettingsRoutes(subject HttpSettingsRoutes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettingsRoutes
+ 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 HttpSettingsRoutes instances for property testing - lazily instantiated by HttpSettingsRoutesGenerator()
+var httpSettingsRoutesGenerator gopter.Gen
+
+// HttpSettingsRoutesGenerator returns a generator of HttpSettingsRoutes instances for property testing.
+func HttpSettingsRoutesGenerator() gopter.Gen {
+ if httpSettingsRoutesGenerator != nil {
+ return httpSettingsRoutesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettingsRoutes(generators)
+ httpSettingsRoutesGenerator = gen.Struct(reflect.TypeOf(HttpSettingsRoutes{}), generators)
+
+ return httpSettingsRoutesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettingsRoutes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettingsRoutes(gens map[string]gopter.Gen) {
+ gens["ApiPrefix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_HttpSettingsRoutes_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 HttpSettingsRoutes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettingsRoutes_STATUS, HttpSettingsRoutes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettingsRoutes_STATUS runs a test to see if a specific instance of HttpSettingsRoutes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettingsRoutes_STATUS(subject HttpSettingsRoutes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettingsRoutes_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 HttpSettingsRoutes_STATUS instances for property testing - lazily instantiated by
+// HttpSettingsRoutes_STATUSGenerator()
+var httpSettingsRoutes_STATUSGenerator gopter.Gen
+
+// HttpSettingsRoutes_STATUSGenerator returns a generator of HttpSettingsRoutes_STATUS instances for property testing.
+func HttpSettingsRoutes_STATUSGenerator() gopter.Gen {
+ if httpSettingsRoutes_STATUSGenerator != nil {
+ return httpSettingsRoutes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS(generators)
+ httpSettingsRoutes_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettingsRoutes_STATUS{}), generators)
+
+ return httpSettingsRoutes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettingsRoutes_STATUS(gens map[string]gopter.Gen) {
+ gens["ApiPrefix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_HttpSettings_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 HttpSettings_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpSettings_STATUS, HttpSettings_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpSettings_STATUS runs a test to see if a specific instance of HttpSettings_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpSettings_STATUS(subject HttpSettings_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpSettings_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 HttpSettings_STATUS instances for property testing - lazily instantiated by
+// HttpSettings_STATUSGenerator()
+var httpSettings_STATUSGenerator gopter.Gen
+
+// HttpSettings_STATUSGenerator returns a generator of HttpSettings_STATUS instances for property testing.
+// We first initialize httpSettings_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 HttpSettings_STATUSGenerator() gopter.Gen {
+ if httpSettings_STATUSGenerator != nil {
+ return httpSettings_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings_STATUS(generators)
+ httpSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettings_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpSettings_STATUS(generators)
+ AddRelatedPropertyGeneratorsForHttpSettings_STATUS(generators)
+ httpSettings_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpSettings_STATUS{}), generators)
+
+ return httpSettings_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpSettings_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["RequireHttps"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForHttpSettings_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpSettings_STATUS(gens map[string]gopter.Gen) {
+ gens["ForwardProxy"] = gen.PtrOf(ForwardProxy_STATUSGenerator())
+ gens["Routes"] = gen.PtrOf(HttpSettingsRoutes_STATUSGenerator())
+}
+
+func Test_IdentityProviders_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 IdentityProviders via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIdentityProviders, IdentityProvidersGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIdentityProviders runs a test to see if a specific instance of IdentityProviders round trips to JSON and back losslessly
+func RunJSONSerializationTestForIdentityProviders(subject IdentityProviders) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IdentityProviders
+ 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 IdentityProviders instances for property testing - lazily instantiated by IdentityProvidersGenerator()
+var identityProvidersGenerator gopter.Gen
+
+// IdentityProvidersGenerator returns a generator of IdentityProviders instances for property testing.
+func IdentityProvidersGenerator() gopter.Gen {
+ if identityProvidersGenerator != nil {
+ return identityProvidersGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForIdentityProviders(generators)
+ identityProvidersGenerator = gen.Struct(reflect.TypeOf(IdentityProviders{}), generators)
+
+ return identityProvidersGenerator
+}
+
+// AddRelatedPropertyGeneratorsForIdentityProviders is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIdentityProviders(gens map[string]gopter.Gen) {
+ gens["Apple"] = gen.PtrOf(AppleGenerator())
+ gens["AzureActiveDirectory"] = gen.PtrOf(AzureActiveDirectoryGenerator())
+ gens["AzureStaticWebApps"] = gen.PtrOf(AzureStaticWebAppsGenerator())
+ gens["CustomOpenIdConnectProviders"] = gen.MapOf(
+ gen.AlphaString(),
+ CustomOpenIdConnectProviderGenerator())
+ gens["Facebook"] = gen.PtrOf(FacebookGenerator())
+ gens["GitHub"] = gen.PtrOf(GitHubGenerator())
+ gens["Google"] = gen.PtrOf(GoogleGenerator())
+ gens["Twitter"] = gen.PtrOf(TwitterGenerator())
+}
+
+func Test_IdentityProviders_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 IdentityProviders_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIdentityProviders_STATUS, IdentityProviders_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIdentityProviders_STATUS runs a test to see if a specific instance of IdentityProviders_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIdentityProviders_STATUS(subject IdentityProviders_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IdentityProviders_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 IdentityProviders_STATUS instances for property testing - lazily instantiated by
+// IdentityProviders_STATUSGenerator()
+var identityProviders_STATUSGenerator gopter.Gen
+
+// IdentityProviders_STATUSGenerator returns a generator of IdentityProviders_STATUS instances for property testing.
+func IdentityProviders_STATUSGenerator() gopter.Gen {
+ if identityProviders_STATUSGenerator != nil {
+ return identityProviders_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForIdentityProviders_STATUS(generators)
+ identityProviders_STATUSGenerator = gen.Struct(reflect.TypeOf(IdentityProviders_STATUS{}), generators)
+
+ return identityProviders_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForIdentityProviders_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIdentityProviders_STATUS(gens map[string]gopter.Gen) {
+ gens["Apple"] = gen.PtrOf(Apple_STATUSGenerator())
+ gens["AzureActiveDirectory"] = gen.PtrOf(AzureActiveDirectory_STATUSGenerator())
+ gens["AzureStaticWebApps"] = gen.PtrOf(AzureStaticWebApps_STATUSGenerator())
+ gens["CustomOpenIdConnectProviders"] = gen.MapOf(
+ gen.AlphaString(),
+ CustomOpenIdConnectProvider_STATUSGenerator())
+ gens["Facebook"] = gen.PtrOf(Facebook_STATUSGenerator())
+ gens["GitHub"] = gen.PtrOf(GitHub_STATUSGenerator())
+ gens["Google"] = gen.PtrOf(Google_STATUSGenerator())
+ gens["Twitter"] = gen.PtrOf(Twitter_STATUSGenerator())
+}
+
+func Test_JwtClaimChecks_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 JwtClaimChecks via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJwtClaimChecks, JwtClaimChecksGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJwtClaimChecks runs a test to see if a specific instance of JwtClaimChecks round trips to JSON and back losslessly
+func RunJSONSerializationTestForJwtClaimChecks(subject JwtClaimChecks) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JwtClaimChecks
+ 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 JwtClaimChecks instances for property testing - lazily instantiated by JwtClaimChecksGenerator()
+var jwtClaimChecksGenerator gopter.Gen
+
+// JwtClaimChecksGenerator returns a generator of JwtClaimChecks instances for property testing.
+func JwtClaimChecksGenerator() gopter.Gen {
+ if jwtClaimChecksGenerator != nil {
+ return jwtClaimChecksGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJwtClaimChecks(generators)
+ jwtClaimChecksGenerator = gen.Struct(reflect.TypeOf(JwtClaimChecks{}), generators)
+
+ return jwtClaimChecksGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJwtClaimChecks is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJwtClaimChecks(gens map[string]gopter.Gen) {
+ gens["AllowedClientApplications"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedGroups"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_JwtClaimChecks_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 JwtClaimChecks_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJwtClaimChecks_STATUS, JwtClaimChecks_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJwtClaimChecks_STATUS runs a test to see if a specific instance of JwtClaimChecks_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJwtClaimChecks_STATUS(subject JwtClaimChecks_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JwtClaimChecks_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 JwtClaimChecks_STATUS instances for property testing - lazily instantiated by
+// JwtClaimChecks_STATUSGenerator()
+var jwtClaimChecks_STATUSGenerator gopter.Gen
+
+// JwtClaimChecks_STATUSGenerator returns a generator of JwtClaimChecks_STATUS instances for property testing.
+func JwtClaimChecks_STATUSGenerator() gopter.Gen {
+ if jwtClaimChecks_STATUSGenerator != nil {
+ return jwtClaimChecks_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS(generators)
+ jwtClaimChecks_STATUSGenerator = gen.Struct(reflect.TypeOf(JwtClaimChecks_STATUS{}), generators)
+
+ return jwtClaimChecks_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJwtClaimChecks_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedClientApplications"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedGroups"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_Login_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 Login via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogin, LoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogin runs a test to see if a specific instance of Login round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogin(subject Login) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Login
+ 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 Login instances for property testing - lazily instantiated by LoginGenerator()
+var loginGenerator gopter.Gen
+
+// LoginGenerator returns a generator of Login instances for property testing.
+// We first initialize loginGenerator 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 LoginGenerator() gopter.Gen {
+ if loginGenerator != nil {
+ return loginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin(generators)
+ loginGenerator = gen.Struct(reflect.TypeOf(Login{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin(generators)
+ AddRelatedPropertyGeneratorsForLogin(generators)
+ loginGenerator = gen.Struct(reflect.TypeOf(Login{}), generators)
+
+ return loginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogin(gens map[string]gopter.Gen) {
+ gens["AllowedExternalRedirectUrls"] = gen.SliceOf(gen.AlphaString())
+ gens["PreserveUrlFragmentsForLogins"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForLogin is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForLogin(gens map[string]gopter.Gen) {
+ gens["CookieExpiration"] = gen.PtrOf(CookieExpirationGenerator())
+ gens["Nonce"] = gen.PtrOf(NonceGenerator())
+ gens["Routes"] = gen.PtrOf(LoginRoutesGenerator())
+ gens["TokenStore"] = gen.PtrOf(TokenStoreGenerator())
+}
+
+func Test_LoginRoutes_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 LoginRoutes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginRoutes, LoginRoutesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginRoutes runs a test to see if a specific instance of LoginRoutes round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginRoutes(subject LoginRoutes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginRoutes
+ 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 LoginRoutes instances for property testing - lazily instantiated by LoginRoutesGenerator()
+var loginRoutesGenerator gopter.Gen
+
+// LoginRoutesGenerator returns a generator of LoginRoutes instances for property testing.
+func LoginRoutesGenerator() gopter.Gen {
+ if loginRoutesGenerator != nil {
+ return loginRoutesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginRoutes(generators)
+ loginRoutesGenerator = gen.Struct(reflect.TypeOf(LoginRoutes{}), generators)
+
+ return loginRoutesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginRoutes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginRoutes(gens map[string]gopter.Gen) {
+ gens["LogoutEndpoint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LoginRoutes_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 LoginRoutes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginRoutes_STATUS, LoginRoutes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginRoutes_STATUS runs a test to see if a specific instance of LoginRoutes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginRoutes_STATUS(subject LoginRoutes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginRoutes_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 LoginRoutes_STATUS instances for property testing - lazily instantiated by LoginRoutes_STATUSGenerator()
+var loginRoutes_STATUSGenerator gopter.Gen
+
+// LoginRoutes_STATUSGenerator returns a generator of LoginRoutes_STATUS instances for property testing.
+func LoginRoutes_STATUSGenerator() gopter.Gen {
+ if loginRoutes_STATUSGenerator != nil {
+ return loginRoutes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginRoutes_STATUS(generators)
+ loginRoutes_STATUSGenerator = gen.Struct(reflect.TypeOf(LoginRoutes_STATUS{}), generators)
+
+ return loginRoutes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginRoutes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginRoutes_STATUS(gens map[string]gopter.Gen) {
+ gens["LogoutEndpoint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LoginScopes_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 LoginScopes via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginScopes, LoginScopesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginScopes runs a test to see if a specific instance of LoginScopes round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginScopes(subject LoginScopes) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginScopes
+ 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 LoginScopes instances for property testing - lazily instantiated by LoginScopesGenerator()
+var loginScopesGenerator gopter.Gen
+
+// LoginScopesGenerator returns a generator of LoginScopes instances for property testing.
+func LoginScopesGenerator() gopter.Gen {
+ if loginScopesGenerator != nil {
+ return loginScopesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginScopes(generators)
+ loginScopesGenerator = gen.Struct(reflect.TypeOf(LoginScopes{}), generators)
+
+ return loginScopesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginScopes is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginScopes(gens map[string]gopter.Gen) {
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_LoginScopes_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 LoginScopes_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLoginScopes_STATUS, LoginScopes_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLoginScopes_STATUS runs a test to see if a specific instance of LoginScopes_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLoginScopes_STATUS(subject LoginScopes_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LoginScopes_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 LoginScopes_STATUS instances for property testing - lazily instantiated by LoginScopes_STATUSGenerator()
+var loginScopes_STATUSGenerator gopter.Gen
+
+// LoginScopes_STATUSGenerator returns a generator of LoginScopes_STATUS instances for property testing.
+func LoginScopes_STATUSGenerator() gopter.Gen {
+ if loginScopes_STATUSGenerator != nil {
+ return loginScopes_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLoginScopes_STATUS(generators)
+ loginScopes_STATUSGenerator = gen.Struct(reflect.TypeOf(LoginScopes_STATUS{}), generators)
+
+ return loginScopes_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLoginScopes_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLoginScopes_STATUS(gens map[string]gopter.Gen) {
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_Login_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 Login_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogin_STATUS, Login_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogin_STATUS runs a test to see if a specific instance of Login_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogin_STATUS(subject Login_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Login_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 Login_STATUS instances for property testing - lazily instantiated by Login_STATUSGenerator()
+var login_STATUSGenerator gopter.Gen
+
+// Login_STATUSGenerator returns a generator of Login_STATUS instances for property testing.
+// We first initialize login_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 Login_STATUSGenerator() gopter.Gen {
+ if login_STATUSGenerator != nil {
+ return login_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin_STATUS(generators)
+ login_STATUSGenerator = gen.Struct(reflect.TypeOf(Login_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogin_STATUS(generators)
+ AddRelatedPropertyGeneratorsForLogin_STATUS(generators)
+ login_STATUSGenerator = gen.Struct(reflect.TypeOf(Login_STATUS{}), generators)
+
+ return login_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowedExternalRedirectUrls"] = gen.SliceOf(gen.AlphaString())
+ gens["PreserveUrlFragmentsForLogins"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForLogin_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["CookieExpiration"] = gen.PtrOf(CookieExpiration_STATUSGenerator())
+ gens["Nonce"] = gen.PtrOf(Nonce_STATUSGenerator())
+ gens["Routes"] = gen.PtrOf(LoginRoutes_STATUSGenerator())
+ gens["TokenStore"] = gen.PtrOf(TokenStore_STATUSGenerator())
+}
+
+func Test_Nonce_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 Nonce via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForNonce, NonceGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForNonce runs a test to see if a specific instance of Nonce round trips to JSON and back losslessly
+func RunJSONSerializationTestForNonce(subject Nonce) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Nonce
+ 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 Nonce instances for property testing - lazily instantiated by NonceGenerator()
+var nonceGenerator gopter.Gen
+
+// NonceGenerator returns a generator of Nonce instances for property testing.
+func NonceGenerator() gopter.Gen {
+ if nonceGenerator != nil {
+ return nonceGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForNonce(generators)
+ nonceGenerator = gen.Struct(reflect.TypeOf(Nonce{}), generators)
+
+ return nonceGenerator
+}
+
+// AddIndependentPropertyGeneratorsForNonce is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForNonce(gens map[string]gopter.Gen) {
+ gens["NonceExpirationInterval"] = gen.PtrOf(gen.AlphaString())
+ gens["ValidateNonce"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_Nonce_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 Nonce_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForNonce_STATUS, Nonce_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForNonce_STATUS runs a test to see if a specific instance of Nonce_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForNonce_STATUS(subject Nonce_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Nonce_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 Nonce_STATUS instances for property testing - lazily instantiated by Nonce_STATUSGenerator()
+var nonce_STATUSGenerator gopter.Gen
+
+// Nonce_STATUSGenerator returns a generator of Nonce_STATUS instances for property testing.
+func Nonce_STATUSGenerator() gopter.Gen {
+ if nonce_STATUSGenerator != nil {
+ return nonce_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForNonce_STATUS(generators)
+ nonce_STATUSGenerator = gen.Struct(reflect.TypeOf(Nonce_STATUS{}), generators)
+
+ return nonce_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForNonce_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForNonce_STATUS(gens map[string]gopter.Gen) {
+ gens["NonceExpirationInterval"] = gen.PtrOf(gen.AlphaString())
+ gens["ValidateNonce"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_OpenIdConnectClientCredential_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 OpenIdConnectClientCredential via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectClientCredential, OpenIdConnectClientCredentialGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectClientCredential runs a test to see if a specific instance of OpenIdConnectClientCredential round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectClientCredential(subject OpenIdConnectClientCredential) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectClientCredential
+ 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 OpenIdConnectClientCredential instances for property testing - lazily instantiated by
+// OpenIdConnectClientCredentialGenerator()
+var openIdConnectClientCredentialGenerator gopter.Gen
+
+// OpenIdConnectClientCredentialGenerator returns a generator of OpenIdConnectClientCredential instances for property testing.
+func OpenIdConnectClientCredentialGenerator() gopter.Gen {
+ if openIdConnectClientCredentialGenerator != nil {
+ return openIdConnectClientCredentialGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential(generators)
+ openIdConnectClientCredentialGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectClientCredential{}), generators)
+
+ return openIdConnectClientCredentialGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential(gens map[string]gopter.Gen) {
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["Method"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectClientCredential_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 OpenIdConnectClientCredential_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS, OpenIdConnectClientCredential_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS runs a test to see if a specific instance of OpenIdConnectClientCredential_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectClientCredential_STATUS(subject OpenIdConnectClientCredential_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectClientCredential_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 OpenIdConnectClientCredential_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectClientCredential_STATUSGenerator()
+var openIdConnectClientCredential_STATUSGenerator gopter.Gen
+
+// OpenIdConnectClientCredential_STATUSGenerator returns a generator of OpenIdConnectClientCredential_STATUS instances for property testing.
+func OpenIdConnectClientCredential_STATUSGenerator() gopter.Gen {
+ if openIdConnectClientCredential_STATUSGenerator != nil {
+ return openIdConnectClientCredential_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS(generators)
+ openIdConnectClientCredential_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectClientCredential_STATUS{}), generators)
+
+ return openIdConnectClientCredential_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectClientCredential_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+ gens["Method"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectConfig_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 OpenIdConnectConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectConfig, OpenIdConnectConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectConfig runs a test to see if a specific instance of OpenIdConnectConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectConfig(subject OpenIdConnectConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectConfig
+ 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 OpenIdConnectConfig instances for property testing - lazily instantiated by
+// OpenIdConnectConfigGenerator()
+var openIdConnectConfigGenerator gopter.Gen
+
+// OpenIdConnectConfigGenerator returns a generator of OpenIdConnectConfig instances for property testing.
+func OpenIdConnectConfigGenerator() gopter.Gen {
+ if openIdConnectConfigGenerator != nil {
+ return openIdConnectConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectConfig(generators)
+ openIdConnectConfigGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectConfig{}), generators)
+
+ return openIdConnectConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectConfig(gens map[string]gopter.Gen) {
+ gens["AuthorizationEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["CertificationUri"] = gen.PtrOf(gen.AlphaString())
+ gens["Issuer"] = gen.PtrOf(gen.AlphaString())
+ gens["TokenEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["WellKnownOpenIdConfiguration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectConfig_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 OpenIdConnectConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectConfig_STATUS, OpenIdConnectConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectConfig_STATUS runs a test to see if a specific instance of OpenIdConnectConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectConfig_STATUS(subject OpenIdConnectConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectConfig_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 OpenIdConnectConfig_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectConfig_STATUSGenerator()
+var openIdConnectConfig_STATUSGenerator gopter.Gen
+
+// OpenIdConnectConfig_STATUSGenerator returns a generator of OpenIdConnectConfig_STATUS instances for property testing.
+func OpenIdConnectConfig_STATUSGenerator() gopter.Gen {
+ if openIdConnectConfig_STATUSGenerator != nil {
+ return openIdConnectConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS(generators)
+ openIdConnectConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectConfig_STATUS{}), generators)
+
+ return openIdConnectConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["AuthorizationEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["CertificationUri"] = gen.PtrOf(gen.AlphaString())
+ gens["Issuer"] = gen.PtrOf(gen.AlphaString())
+ gens["TokenEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["WellKnownOpenIdConfiguration"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectLogin_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 OpenIdConnectLogin via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectLogin, OpenIdConnectLoginGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectLogin runs a test to see if a specific instance of OpenIdConnectLogin round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectLogin(subject OpenIdConnectLogin) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectLogin
+ 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 OpenIdConnectLogin instances for property testing - lazily instantiated by OpenIdConnectLoginGenerator()
+var openIdConnectLoginGenerator gopter.Gen
+
+// OpenIdConnectLoginGenerator returns a generator of OpenIdConnectLogin instances for property testing.
+func OpenIdConnectLoginGenerator() gopter.Gen {
+ if openIdConnectLoginGenerator != nil {
+ return openIdConnectLoginGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectLogin(generators)
+ openIdConnectLoginGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectLogin{}), generators)
+
+ return openIdConnectLoginGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectLogin is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectLogin(gens map[string]gopter.Gen) {
+ gens["NameClaimType"] = gen.PtrOf(gen.AlphaString())
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectLogin_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 OpenIdConnectLogin_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectLogin_STATUS, OpenIdConnectLogin_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectLogin_STATUS runs a test to see if a specific instance of OpenIdConnectLogin_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectLogin_STATUS(subject OpenIdConnectLogin_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectLogin_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 OpenIdConnectLogin_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectLogin_STATUSGenerator()
+var openIdConnectLogin_STATUSGenerator gopter.Gen
+
+// OpenIdConnectLogin_STATUSGenerator returns a generator of OpenIdConnectLogin_STATUS instances for property testing.
+func OpenIdConnectLogin_STATUSGenerator() gopter.Gen {
+ if openIdConnectLogin_STATUSGenerator != nil {
+ return openIdConnectLogin_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS(generators)
+ openIdConnectLogin_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectLogin_STATUS{}), generators)
+
+ return openIdConnectLogin_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectLogin_STATUS(gens map[string]gopter.Gen) {
+ gens["NameClaimType"] = gen.PtrOf(gen.AlphaString())
+ gens["Scopes"] = gen.SliceOf(gen.AlphaString())
+}
+
+func Test_OpenIdConnectRegistration_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 OpenIdConnectRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectRegistration, OpenIdConnectRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectRegistration runs a test to see if a specific instance of OpenIdConnectRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectRegistration(subject OpenIdConnectRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectRegistration
+ 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 OpenIdConnectRegistration instances for property testing - lazily instantiated by
+// OpenIdConnectRegistrationGenerator()
+var openIdConnectRegistrationGenerator gopter.Gen
+
+// OpenIdConnectRegistrationGenerator returns a generator of OpenIdConnectRegistration instances for property testing.
+// We first initialize openIdConnectRegistrationGenerator 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 OpenIdConnectRegistrationGenerator() gopter.Gen {
+ if openIdConnectRegistrationGenerator != nil {
+ return openIdConnectRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ openIdConnectRegistrationGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ AddRelatedPropertyGeneratorsForOpenIdConnectRegistration(generators)
+ openIdConnectRegistrationGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration{}), generators)
+
+ return openIdConnectRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectRegistration(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForOpenIdConnectRegistration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForOpenIdConnectRegistration(gens map[string]gopter.Gen) {
+ gens["ClientCredential"] = gen.PtrOf(OpenIdConnectClientCredentialGenerator())
+ gens["OpenIdConnectConfiguration"] = gen.PtrOf(OpenIdConnectConfigGenerator())
+}
+
+func Test_OpenIdConnectRegistration_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 OpenIdConnectRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForOpenIdConnectRegistration_STATUS, OpenIdConnectRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForOpenIdConnectRegistration_STATUS runs a test to see if a specific instance of OpenIdConnectRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForOpenIdConnectRegistration_STATUS(subject OpenIdConnectRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual OpenIdConnectRegistration_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 OpenIdConnectRegistration_STATUS instances for property testing - lazily instantiated by
+// OpenIdConnectRegistration_STATUSGenerator()
+var openIdConnectRegistration_STATUSGenerator gopter.Gen
+
+// OpenIdConnectRegistration_STATUSGenerator returns a generator of OpenIdConnectRegistration_STATUS instances for property testing.
+// We first initialize openIdConnectRegistration_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 OpenIdConnectRegistration_STATUSGenerator() gopter.Gen {
+ if openIdConnectRegistration_STATUSGenerator != nil {
+ return openIdConnectRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ openIdConnectRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS(generators)
+ openIdConnectRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(OpenIdConnectRegistration_STATUS{}), generators)
+
+ return openIdConnectRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForOpenIdConnectRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForOpenIdConnectRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientCredential"] = gen.PtrOf(OpenIdConnectClientCredential_STATUSGenerator())
+ gens["OpenIdConnectConfiguration"] = gen.PtrOf(OpenIdConnectConfig_STATUSGenerator())
+}
+
+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_TokenStore_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 TokenStore via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTokenStore, TokenStoreGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTokenStore runs a test to see if a specific instance of TokenStore round trips to JSON and back losslessly
+func RunJSONSerializationTestForTokenStore(subject TokenStore) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TokenStore
+ 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 TokenStore instances for property testing - lazily instantiated by TokenStoreGenerator()
+var tokenStoreGenerator gopter.Gen
+
+// TokenStoreGenerator returns a generator of TokenStore instances for property testing.
+// We first initialize tokenStoreGenerator 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 TokenStoreGenerator() gopter.Gen {
+ if tokenStoreGenerator != nil {
+ return tokenStoreGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore(generators)
+ tokenStoreGenerator = gen.Struct(reflect.TypeOf(TokenStore{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore(generators)
+ AddRelatedPropertyGeneratorsForTokenStore(generators)
+ tokenStoreGenerator = gen.Struct(reflect.TypeOf(TokenStore{}), generators)
+
+ return tokenStoreGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTokenStore is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTokenStore(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["TokenRefreshExtensionHours"] = gen.PtrOf(gen.Float64())
+}
+
+// AddRelatedPropertyGeneratorsForTokenStore is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTokenStore(gens map[string]gopter.Gen) {
+ gens["AzureBlobStorage"] = gen.PtrOf(BlobStorageTokenStoreGenerator())
+}
+
+func Test_TokenStore_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 TokenStore_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTokenStore_STATUS, TokenStore_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTokenStore_STATUS runs a test to see if a specific instance of TokenStore_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTokenStore_STATUS(subject TokenStore_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TokenStore_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 TokenStore_STATUS instances for property testing - lazily instantiated by TokenStore_STATUSGenerator()
+var tokenStore_STATUSGenerator gopter.Gen
+
+// TokenStore_STATUSGenerator returns a generator of TokenStore_STATUS instances for property testing.
+// We first initialize tokenStore_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 TokenStore_STATUSGenerator() gopter.Gen {
+ if tokenStore_STATUSGenerator != nil {
+ return tokenStore_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore_STATUS(generators)
+ tokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(TokenStore_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTokenStore_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTokenStore_STATUS(generators)
+ tokenStore_STATUSGenerator = gen.Struct(reflect.TypeOf(TokenStore_STATUS{}), generators)
+
+ return tokenStore_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTokenStore_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["TokenRefreshExtensionHours"] = gen.PtrOf(gen.Float64())
+}
+
+// AddRelatedPropertyGeneratorsForTokenStore_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTokenStore_STATUS(gens map[string]gopter.Gen) {
+ gens["AzureBlobStorage"] = gen.PtrOf(BlobStorageTokenStore_STATUSGenerator())
+}
+
+func Test_Twitter_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 Twitter via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitter, TwitterGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitter runs a test to see if a specific instance of Twitter round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitter(subject Twitter) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Twitter
+ 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 Twitter instances for property testing - lazily instantiated by TwitterGenerator()
+var twitterGenerator gopter.Gen
+
+// TwitterGenerator returns a generator of Twitter instances for property testing.
+// We first initialize twitterGenerator 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 TwitterGenerator() gopter.Gen {
+ if twitterGenerator != nil {
+ return twitterGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter(generators)
+ twitterGenerator = gen.Struct(reflect.TypeOf(Twitter{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter(generators)
+ AddRelatedPropertyGeneratorsForTwitter(generators)
+ twitterGenerator = gen.Struct(reflect.TypeOf(Twitter{}), generators)
+
+ return twitterGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitter is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitter(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForTwitter is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTwitter(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(TwitterRegistrationGenerator())
+}
+
+func Test_TwitterRegistration_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 TwitterRegistration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitterRegistration, TwitterRegistrationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitterRegistration runs a test to see if a specific instance of TwitterRegistration round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitterRegistration(subject TwitterRegistration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TwitterRegistration
+ 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 TwitterRegistration instances for property testing - lazily instantiated by
+// TwitterRegistrationGenerator()
+var twitterRegistrationGenerator gopter.Gen
+
+// TwitterRegistrationGenerator returns a generator of TwitterRegistration instances for property testing.
+func TwitterRegistrationGenerator() gopter.Gen {
+ if twitterRegistrationGenerator != nil {
+ return twitterRegistrationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitterRegistration(generators)
+ twitterRegistrationGenerator = gen.Struct(reflect.TypeOf(TwitterRegistration{}), generators)
+
+ return twitterRegistrationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitterRegistration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitterRegistration(gens map[string]gopter.Gen) {
+ gens["ConsumerKey"] = gen.PtrOf(gen.AlphaString())
+ gens["ConsumerSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_TwitterRegistration_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 TwitterRegistration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitterRegistration_STATUS, TwitterRegistration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitterRegistration_STATUS runs a test to see if a specific instance of TwitterRegistration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitterRegistration_STATUS(subject TwitterRegistration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TwitterRegistration_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 TwitterRegistration_STATUS instances for property testing - lazily instantiated by
+// TwitterRegistration_STATUSGenerator()
+var twitterRegistration_STATUSGenerator gopter.Gen
+
+// TwitterRegistration_STATUSGenerator returns a generator of TwitterRegistration_STATUS instances for property testing.
+func TwitterRegistration_STATUSGenerator() gopter.Gen {
+ if twitterRegistration_STATUSGenerator != nil {
+ return twitterRegistration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS(generators)
+ twitterRegistration_STATUSGenerator = gen.Struct(reflect.TypeOf(TwitterRegistration_STATUS{}), generators)
+
+ return twitterRegistration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitterRegistration_STATUS(gens map[string]gopter.Gen) {
+ gens["ConsumerKey"] = gen.PtrOf(gen.AlphaString())
+ gens["ConsumerSecretSettingName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Twitter_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 Twitter_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTwitter_STATUS, Twitter_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTwitter_STATUS runs a test to see if a specific instance of Twitter_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTwitter_STATUS(subject Twitter_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Twitter_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 Twitter_STATUS instances for property testing - lazily instantiated by Twitter_STATUSGenerator()
+var twitter_STATUSGenerator gopter.Gen
+
+// Twitter_STATUSGenerator returns a generator of Twitter_STATUS instances for property testing.
+// We first initialize twitter_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 Twitter_STATUSGenerator() gopter.Gen {
+ if twitter_STATUSGenerator != nil {
+ return twitter_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter_STATUS(generators)
+ twitter_STATUSGenerator = gen.Struct(reflect.TypeOf(Twitter_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTwitter_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTwitter_STATUS(generators)
+ twitter_STATUSGenerator = gen.Struct(reflect.TypeOf(Twitter_STATUS{}), generators)
+
+ return twitter_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTwitter_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTwitter_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForTwitter_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTwitter_STATUS(gens map[string]gopter.Gen) {
+ gens["Registration"] = gen.PtrOf(TwitterRegistration_STATUSGenerator())
+}
diff --git a/v2/api/app/v1api20240301/storage/container_app_types_gen.go b/v2/api/app/v1api20240301/storage/container_app_types_gen.go
new file mode 100644
index 00000000000..6fdce63bfa2
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/container_app_types_gen.go
@@ -0,0 +1,1024 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license.
+package storage
+
+import (
+ "context"
+ "github.com/Azure/azure-service-operator/v2/internal/genericarmclient"
+ "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/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/secrets"
+ "github.com/go-logr/logr"
+ "github.com/rotisserie/eris"
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+ "k8s.io/apimachinery/pkg/runtime/schema"
+ "sigs.k8s.io/controller-runtime/pkg/client"
+)
+
+// +kubebuilder:rbac:groups=app.azure.com,resources=containerapps,verbs=get;list;watch;create;update;patch;delete
+// +kubebuilder:rbac:groups=app.azure.com,resources={containerapps/status,containerapps/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 v1api20240301.ContainerApp
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/ContainerApps.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}
+type ContainerApp struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty"`
+ Spec ContainerApp_Spec `json:"spec,omitempty"`
+ Status ContainerApp_STATUS `json:"status,omitempty"`
+}
+
+var _ conditions.Conditioner = &ContainerApp{}
+
+// GetConditions returns the conditions of the resource
+func (containerApp *ContainerApp) GetConditions() conditions.Conditions {
+ return containerApp.Status.Conditions
+}
+
+// SetConditions sets the conditions on the resource status
+func (containerApp *ContainerApp) SetConditions(conditions conditions.Conditions) {
+ containerApp.Status.Conditions = conditions
+}
+
+var _ configmaps.Exporter = &ContainerApp{}
+
+// ConfigMapDestinationExpressions returns the Spec.OperatorSpec.ConfigMapExpressions property
+func (containerApp *ContainerApp) ConfigMapDestinationExpressions() []*core.DestinationExpression {
+ if containerApp.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return containerApp.Spec.OperatorSpec.ConfigMapExpressions
+}
+
+var _ secrets.Exporter = &ContainerApp{}
+
+// SecretDestinationExpressions returns the Spec.OperatorSpec.SecretExpressions property
+func (containerApp *ContainerApp) SecretDestinationExpressions() []*core.DestinationExpression {
+ if containerApp.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return containerApp.Spec.OperatorSpec.SecretExpressions
+}
+
+var _ genruntime.KubernetesConfigExporter = &ContainerApp{}
+
+// ExportKubernetesConfigMaps defines a resource which can create ConfigMaps in Kubernetes.
+func (containerApp *ContainerApp) ExportKubernetesConfigMaps(_ context.Context, _ genruntime.MetaObject, _ *genericarmclient.GenericClient, _ logr.Logger) ([]client.Object, error) {
+ collector := configmaps.NewCollector(containerApp.Namespace)
+ if containerApp.Spec.OperatorSpec != nil && containerApp.Spec.OperatorSpec.ConfigMaps != nil {
+ if containerApp.Status.EventStreamEndpoint != nil {
+ collector.AddValue(containerApp.Spec.OperatorSpec.ConfigMaps.EventStreamEndpoint, *containerApp.Status.EventStreamEndpoint)
+ }
+ }
+ if containerApp.Spec.OperatorSpec != nil && containerApp.Spec.OperatorSpec.ConfigMaps != nil {
+ if containerApp.Status.LatestRevisionFqdn != nil {
+ collector.AddValue(containerApp.Spec.OperatorSpec.ConfigMaps.Fqdn, *containerApp.Status.LatestRevisionFqdn)
+ }
+ }
+ result, err := collector.Values()
+ if err != nil {
+ return nil, err
+ }
+ return configmaps.SliceToClientObjectSlice(result), nil
+}
+
+var _ genruntime.KubernetesResource = &ContainerApp{}
+
+// AzureName returns the Azure name of the resource
+func (containerApp *ContainerApp) AzureName() string {
+ return containerApp.Spec.AzureName
+}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (containerApp ContainerApp) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetResourceScope returns the scope of the resource
+func (containerApp *ContainerApp) GetResourceScope() genruntime.ResourceScope {
+ return genruntime.ResourceScopeResourceGroup
+}
+
+// GetSpec returns the specification of this resource
+func (containerApp *ContainerApp) GetSpec() genruntime.ConvertibleSpec {
+ return &containerApp.Spec
+}
+
+// GetStatus returns the status of this resource
+func (containerApp *ContainerApp) GetStatus() genruntime.ConvertibleStatus {
+ return &containerApp.Status
+}
+
+// GetSupportedOperations returns the operations supported by the resource
+func (containerApp *ContainerApp) GetSupportedOperations() []genruntime.ResourceOperation {
+ return []genruntime.ResourceOperation{
+ genruntime.ResourceOperationDelete,
+ genruntime.ResourceOperationGet,
+ genruntime.ResourceOperationPut,
+ }
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/containerApps"
+func (containerApp *ContainerApp) GetType() string {
+ return "Microsoft.App/containerApps"
+}
+
+// NewEmptyStatus returns a new empty (blank) status
+func (containerApp *ContainerApp) NewEmptyStatus() genruntime.ConvertibleStatus {
+ return &ContainerApp_STATUS{}
+}
+
+// Owner returns the ResourceReference of the owner
+func (containerApp *ContainerApp) Owner() *genruntime.ResourceReference {
+ if containerApp.Spec.Owner == nil {
+ return nil
+ }
+
+ group, kind := genruntime.LookupOwnerGroupKind(containerApp.Spec)
+ return containerApp.Spec.Owner.AsResourceReference(group, kind)
+}
+
+// SetStatus sets the status of this resource
+func (containerApp *ContainerApp) SetStatus(status genruntime.ConvertibleStatus) error {
+ // If we have exactly the right type of status, assign it
+ if st, ok := status.(*ContainerApp_STATUS); ok {
+ containerApp.Status = *st
+ return nil
+ }
+
+ // Convert status to required version
+ var st ContainerApp_STATUS
+ err := status.ConvertStatusTo(&st)
+ if err != nil {
+ return eris.Wrap(err, "failed to convert status")
+ }
+
+ containerApp.Status = st
+ return nil
+}
+
+// Hub marks that this ContainerApp is the hub type for conversion
+func (containerApp *ContainerApp) Hub() {}
+
+// OriginalGVK returns a GroupValueKind for the original API version used to create the resource
+func (containerApp *ContainerApp) OriginalGVK() *schema.GroupVersionKind {
+ return &schema.GroupVersionKind{
+ Group: GroupVersion.Group,
+ Version: containerApp.Spec.OriginalVersion,
+ Kind: "ContainerApp",
+ }
+}
+
+// +kubebuilder:object:root=true
+// Storage version of v1api20240301.ContainerApp
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/ContainerApps.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}
+type ContainerAppList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata,omitempty"`
+ Items []ContainerApp `json:"items"`
+}
+
+// Storage version of v1api20240301.ContainerApp_Spec
+type ContainerApp_Spec struct {
+ // 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"`
+ Configuration *Configuration `json:"configuration,omitempty"`
+
+ // EnvironmentReference: Resource ID of environment.
+ EnvironmentReference *genruntime.ResourceReference `armReference:"EnvironmentId" json:"environmentReference,omitempty"`
+ ExtendedLocation *ExtendedLocation `json:"extendedLocation,omitempty"`
+ Identity *ManagedServiceIdentity `json:"identity,omitempty"`
+ Location *string `json:"location,omitempty"`
+
+ // ManagedByReference: The fully qualified resource ID of the resource that manages this resource. Indicates if this
+ // resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource
+ // if it is removed from the template since it is managed by another resource.
+ ManagedByReference *genruntime.ResourceReference `armReference:"ManagedBy" json:"managedByReference,omitempty"`
+
+ // ManagedEnvironmentReference: Deprecated. Resource ID of the Container App's environment.
+ ManagedEnvironmentReference *genruntime.ResourceReference `armReference:"ManagedEnvironmentId" json:"managedEnvironmentReference,omitempty"`
+ OperatorSpec *ContainerAppOperatorSpec `json:"operatorSpec,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"`
+ Tags map[string]string `json:"tags,omitempty"`
+ Template *Template `json:"template,omitempty"`
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+var _ genruntime.ConvertibleSpec = &ContainerApp_Spec{}
+
+// ConvertSpecFrom populates our ContainerApp_Spec from the provided source
+func (containerApp *ContainerApp_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error {
+ if source == containerApp {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec")
+ }
+
+ return source.ConvertSpecTo(containerApp)
+}
+
+// ConvertSpecTo populates the provided destination from our ContainerApp_Spec
+func (containerApp *ContainerApp_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error {
+ if destination == containerApp {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec")
+ }
+
+ return destination.ConvertSpecFrom(containerApp)
+}
+
+// Storage version of v1api20240301.ContainerApp_STATUS
+// Container App.
+type ContainerApp_STATUS struct {
+ Conditions []conditions.Condition `json:"conditions,omitempty"`
+ Configuration *Configuration_STATUS `json:"configuration,omitempty"`
+ CustomDomainVerificationId *string `json:"customDomainVerificationId,omitempty"`
+ EnvironmentId *string `json:"environmentId,omitempty"`
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+ ExtendedLocation *ExtendedLocation_STATUS `json:"extendedLocation,omitempty"`
+ Id *string `json:"id,omitempty"`
+ Identity *ManagedServiceIdentity_STATUS `json:"identity,omitempty"`
+ LatestReadyRevisionName *string `json:"latestReadyRevisionName,omitempty"`
+ LatestRevisionFqdn *string `json:"latestRevisionFqdn,omitempty"`
+ LatestRevisionName *string `json:"latestRevisionName,omitempty"`
+ Location *string `json:"location,omitempty"`
+ ManagedBy *string `json:"managedBy,omitempty"`
+ ManagedEnvironmentId *string `json:"managedEnvironmentId,omitempty"`
+ Name *string `json:"name,omitempty"`
+ OutboundIpAddresses []string `json:"outboundIpAddresses,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ProvisioningState *string `json:"provisioningState,omitempty"`
+ SystemData *SystemData_STATUS `json:"systemData,omitempty"`
+ Tags map[string]string `json:"tags,omitempty"`
+ Template *Template_STATUS `json:"template,omitempty"`
+ Type *string `json:"type,omitempty"`
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+var _ genruntime.ConvertibleStatus = &ContainerApp_STATUS{}
+
+// ConvertStatusFrom populates our ContainerApp_STATUS from the provided source
+func (containerApp *ContainerApp_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error {
+ if source == containerApp {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus")
+ }
+
+ return source.ConvertStatusTo(containerApp)
+}
+
+// ConvertStatusTo populates the provided destination from our ContainerApp_STATUS
+func (containerApp *ContainerApp_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error {
+ if destination == containerApp {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus")
+ }
+
+ return destination.ConvertStatusFrom(containerApp)
+}
+
+// Storage version of v1api20240301.Configuration
+// Non versioned Container App configuration properties that define the mutable settings of a Container app
+type Configuration struct {
+ ActiveRevisionsMode *string `json:"activeRevisionsMode,omitempty"`
+ Dapr *Dapr `json:"dapr,omitempty"`
+ Ingress *Ingress `json:"ingress,omitempty"`
+ MaxInactiveRevisions *int `json:"maxInactiveRevisions,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registries []RegistryCredentials `json:"registries,omitempty"`
+ Secrets []Secret `json:"secrets,omitempty"`
+ Service *Service `json:"service,omitempty"`
+}
+
+// Storage version of v1api20240301.Configuration_STATUS
+// Non versioned Container App configuration properties that define the mutable settings of a Container app
+type Configuration_STATUS struct {
+ ActiveRevisionsMode *string `json:"activeRevisionsMode,omitempty"`
+ Dapr *Dapr_STATUS `json:"dapr,omitempty"`
+ Ingress *Ingress_STATUS `json:"ingress,omitempty"`
+ MaxInactiveRevisions *int `json:"maxInactiveRevisions,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registries []RegistryCredentials_STATUS `json:"registries,omitempty"`
+ Secrets []Secret_STATUS `json:"secrets,omitempty"`
+ Service *Service_STATUS `json:"service,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppOperatorSpec
+// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure
+type ContainerAppOperatorSpec struct {
+ ConfigMapExpressions []*core.DestinationExpression `json:"configMapExpressions,omitempty"`
+ ConfigMaps *ContainerAppOperatorConfigMaps `json:"configMaps,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretExpressions []*core.DestinationExpression `json:"secretExpressions,omitempty"`
+}
+
+// Storage version of v1api20240301.ExtendedLocation
+// The complex type of the extended location.
+type ExtendedLocation struct {
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.ExtendedLocation_STATUS
+// The complex type of the extended location.
+type ExtendedLocation_STATUS struct {
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedServiceIdentity
+// Managed service identity (system assigned and/or user assigned identities)
+type ManagedServiceIdentity struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+ UserAssignedIdentities []UserAssignedIdentityDetails `json:"userAssignedIdentities,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedServiceIdentity_STATUS
+// Managed service identity (system assigned and/or user assigned identities)
+type ManagedServiceIdentity_STATUS struct {
+ PrincipalId *string `json:"principalId,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TenantId *string `json:"tenantId,omitempty"`
+ Type *string `json:"type,omitempty"`
+ UserAssignedIdentities map[string]UserAssignedIdentity_STATUS `json:"userAssignedIdentities,omitempty"`
+}
+
+// Storage version of v1api20240301.Template
+// Container App versioned application definition.
+// Defines the desired state of an immutable revision.
+// Any changes to this
+// section Will result in a new revision being created
+type Template struct {
+ Containers []Container `json:"containers,omitempty"`
+ InitContainers []BaseContainer `json:"initContainers,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RevisionSuffix *string `json:"revisionSuffix,omitempty"`
+ Scale *Scale `json:"scale,omitempty"`
+ ServiceBinds []ServiceBind `json:"serviceBinds,omitempty"`
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+ Volumes []Volume `json:"volumes,omitempty"`
+}
+
+// Storage version of v1api20240301.Template_STATUS
+// Container App versioned application definition.
+// Defines the desired state of an immutable revision.
+// Any changes to this
+// section Will result in a new revision being created
+type Template_STATUS struct {
+ Containers []Container_STATUS `json:"containers,omitempty"`
+ InitContainers []BaseContainer_STATUS `json:"initContainers,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RevisionSuffix *string `json:"revisionSuffix,omitempty"`
+ Scale *Scale_STATUS `json:"scale,omitempty"`
+ ServiceBinds []ServiceBind_STATUS `json:"serviceBinds,omitempty"`
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+ Volumes []Volume_STATUS `json:"volumes,omitempty"`
+}
+
+// Storage version of v1api20240301.BaseContainer
+// Container App base container definition.
+type BaseContainer struct {
+ Args []string `json:"args,omitempty"`
+ Command []string `json:"command,omitempty"`
+ Env []EnvironmentVar `json:"env,omitempty"`
+ Image *string `json:"image,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Resources *ContainerResources `json:"resources,omitempty"`
+ VolumeMounts []VolumeMount `json:"volumeMounts,omitempty"`
+}
+
+// Storage version of v1api20240301.BaseContainer_STATUS
+// Container App base container definition.
+type BaseContainer_STATUS struct {
+ Args []string `json:"args,omitempty"`
+ Command []string `json:"command,omitempty"`
+ Env []EnvironmentVar_STATUS `json:"env,omitempty"`
+ Image *string `json:"image,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Resources *ContainerResources_STATUS `json:"resources,omitempty"`
+ VolumeMounts []VolumeMount_STATUS `json:"volumeMounts,omitempty"`
+}
+
+// Storage version of v1api20240301.Container
+// Container App container definition
+type Container struct {
+ Args []string `json:"args,omitempty"`
+ Command []string `json:"command,omitempty"`
+ Env []EnvironmentVar `json:"env,omitempty"`
+ Image *string `json:"image,omitempty"`
+ Name *string `json:"name,omitempty"`
+ Probes []ContainerAppProbe `json:"probes,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Resources *ContainerResources `json:"resources,omitempty"`
+ VolumeMounts []VolumeMount `json:"volumeMounts,omitempty"`
+}
+
+// Storage version of v1api20240301.Container_STATUS
+// Container App container definition
+type Container_STATUS struct {
+ Args []string `json:"args,omitempty"`
+ Command []string `json:"command,omitempty"`
+ Env []EnvironmentVar_STATUS `json:"env,omitempty"`
+ Image *string `json:"image,omitempty"`
+ Name *string `json:"name,omitempty"`
+ Probes []ContainerAppProbe_STATUS `json:"probes,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Resources *ContainerResources_STATUS `json:"resources,omitempty"`
+ VolumeMounts []VolumeMount_STATUS `json:"volumeMounts,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppOperatorConfigMaps
+type ContainerAppOperatorConfigMaps struct {
+ EventStreamEndpoint *genruntime.ConfigMapDestination `json:"eventStreamEndpoint,omitempty"`
+ Fqdn *genruntime.ConfigMapDestination `json:"fqdn,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.Dapr
+// Container App Dapr configuration.
+type Dapr struct {
+ AppId *string `json:"appId,omitempty"`
+ AppPort *int `json:"appPort,omitempty"`
+ AppProtocol *string `json:"appProtocol,omitempty"`
+ EnableApiLogging *bool `json:"enableApiLogging,omitempty"`
+ Enabled *bool `json:"enabled,omitempty"`
+ HttpMaxRequestSize *int `json:"httpMaxRequestSize,omitempty"`
+ HttpReadBufferSize *int `json:"httpReadBufferSize,omitempty"`
+ LogLevel *string `json:"logLevel,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.Dapr_STATUS
+// Container App Dapr configuration.
+type Dapr_STATUS struct {
+ AppId *string `json:"appId,omitempty"`
+ AppPort *int `json:"appPort,omitempty"`
+ AppProtocol *string `json:"appProtocol,omitempty"`
+ EnableApiLogging *bool `json:"enableApiLogging,omitempty"`
+ Enabled *bool `json:"enabled,omitempty"`
+ HttpMaxRequestSize *int `json:"httpMaxRequestSize,omitempty"`
+ HttpReadBufferSize *int `json:"httpReadBufferSize,omitempty"`
+ LogLevel *string `json:"logLevel,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.Ingress
+// Container App Ingress configuration.
+type Ingress struct {
+ AdditionalPortMappings []IngressPortMapping `json:"additionalPortMappings,omitempty"`
+ AllowInsecure *bool `json:"allowInsecure,omitempty"`
+ ClientCertificateMode *string `json:"clientCertificateMode,omitempty"`
+ CorsPolicy *CorsPolicy `json:"corsPolicy,omitempty"`
+ CustomDomains []CustomDomain `json:"customDomains,omitempty"`
+ ExposedPort *int `json:"exposedPort,omitempty"`
+ External *bool `json:"external,omitempty"`
+ IpSecurityRestrictions []IpSecurityRestrictionRule `json:"ipSecurityRestrictions,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ StickySessions *Ingress_StickySessions `json:"stickySessions,omitempty"`
+ TargetPort *int `json:"targetPort,omitempty"`
+ Traffic []TrafficWeight `json:"traffic,omitempty"`
+ Transport *string `json:"transport,omitempty"`
+}
+
+// Storage version of v1api20240301.Ingress_STATUS
+// Container App Ingress configuration.
+type Ingress_STATUS struct {
+ AdditionalPortMappings []IngressPortMapping_STATUS `json:"additionalPortMappings,omitempty"`
+ AllowInsecure *bool `json:"allowInsecure,omitempty"`
+ ClientCertificateMode *string `json:"clientCertificateMode,omitempty"`
+ CorsPolicy *CorsPolicy_STATUS `json:"corsPolicy,omitempty"`
+ CustomDomains []CustomDomain_STATUS `json:"customDomains,omitempty"`
+ ExposedPort *int `json:"exposedPort,omitempty"`
+ External *bool `json:"external,omitempty"`
+ Fqdn *string `json:"fqdn,omitempty"`
+ IpSecurityRestrictions []IpSecurityRestrictionRule_STATUS `json:"ipSecurityRestrictions,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ StickySessions *Ingress_StickySessions_STATUS `json:"stickySessions,omitempty"`
+ TargetPort *int `json:"targetPort,omitempty"`
+ Traffic []TrafficWeight_STATUS `json:"traffic,omitempty"`
+ Transport *string `json:"transport,omitempty"`
+}
+
+// Storage version of v1api20240301.RegistryCredentials
+// Container App Private Registry
+type RegistryCredentials struct {
+ // IdentityReference: A Managed Identity to use to authenticate with Azure Container Registry. For user-assigned
+ // identities, use the full user-assigned identity Resource ID. For system-assigned identities, use 'system'
+ IdentityReference *genruntime.ResourceReference `armReference:"Identity" json:"identityReference,omitempty"`
+ PasswordSecretRef *string `json:"passwordSecretRef,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Server *string `json:"server,omitempty"`
+ Username *string `json:"username,omitempty"`
+}
+
+// Storage version of v1api20240301.RegistryCredentials_STATUS
+// Container App Private Registry
+type RegistryCredentials_STATUS struct {
+ Identity *string `json:"identity,omitempty"`
+ PasswordSecretRef *string `json:"passwordSecretRef,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Server *string `json:"server,omitempty"`
+ Username *string `json:"username,omitempty"`
+}
+
+// Storage version of v1api20240301.Scale
+// Container App scaling configurations.
+type Scale struct {
+ MaxReplicas *int `json:"maxReplicas,omitempty"`
+ MinReplicas *int `json:"minReplicas,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Rules []ScaleRule `json:"rules,omitempty"`
+}
+
+// Storage version of v1api20240301.Scale_STATUS
+// Container App scaling configurations.
+type Scale_STATUS struct {
+ MaxReplicas *int `json:"maxReplicas,omitempty"`
+ MinReplicas *int `json:"minReplicas,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Rules []ScaleRule_STATUS `json:"rules,omitempty"`
+}
+
+// Storage version of v1api20240301.Secret
+// Secret definition.
+type Secret struct {
+ // IdentityReference: Resource ID of a managed identity to authenticate with Azure Key Vault, or System to use a
+ // system-assigned identity.
+ IdentityReference *genruntime.ResourceReference `armReference:"Identity" json:"identityReference,omitempty"`
+ KeyVaultUrl *string `json:"keyVaultUrl,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Value *genruntime.SecretReference `json:"value,omitempty"`
+}
+
+// Storage version of v1api20240301.Secret_STATUS
+// Secret definition.
+type Secret_STATUS struct {
+ Identity *string `json:"identity,omitempty"`
+ KeyVaultUrl *string `json:"keyVaultUrl,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.Service
+// Container App to be a dev service
+type Service struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.Service_STATUS
+// Container App to be a dev service
+type Service_STATUS struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.ServiceBind
+// Configuration to bind a ContainerApp to a dev ContainerApp Service
+type ServiceBind struct {
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+
+ // ServiceReference: Resource id of the target service
+ ServiceReference *genruntime.ResourceReference `armReference:"ServiceId" json:"serviceReference,omitempty"`
+}
+
+// Storage version of v1api20240301.ServiceBind_STATUS
+// Configuration to bind a ContainerApp to a dev ContainerApp Service
+type ServiceBind_STATUS struct {
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ServiceId *string `json:"serviceId,omitempty"`
+}
+
+// Storage version of v1api20240301.UserAssignedIdentity_STATUS
+// User assigned identity properties
+type UserAssignedIdentity_STATUS struct {
+ ClientId *string `json:"clientId,omitempty"`
+ PrincipalId *string `json:"principalId,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.UserAssignedIdentityDetails
+// Information about the user assigned identity for the resource
+type UserAssignedIdentityDetails struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Reference genruntime.ResourceReference `armReference:"Reference" json:"reference,omitempty"`
+}
+
+// Storage version of v1api20240301.Volume
+// Volume definitions for the Container App.
+type Volume struct {
+ MountOptions *string `json:"mountOptions,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Secrets []SecretVolumeItem `json:"secrets,omitempty"`
+ StorageName *string `json:"storageName,omitempty"`
+ StorageType *string `json:"storageType,omitempty"`
+}
+
+// Storage version of v1api20240301.Volume_STATUS
+// Volume definitions for the Container App.
+type Volume_STATUS struct {
+ MountOptions *string `json:"mountOptions,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Secrets []SecretVolumeItem_STATUS `json:"secrets,omitempty"`
+ StorageName *string `json:"storageName,omitempty"`
+ StorageType *string `json:"storageType,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppProbe
+// Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive
+// traffic.
+type ContainerAppProbe struct {
+ FailureThreshold *int `json:"failureThreshold,omitempty"`
+ HttpGet *ContainerAppProbe_HttpGet `json:"httpGet,omitempty"`
+ InitialDelaySeconds *int `json:"initialDelaySeconds,omitempty"`
+ PeriodSeconds *int `json:"periodSeconds,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SuccessThreshold *int `json:"successThreshold,omitempty"`
+ TcpSocket *ContainerAppProbe_TcpSocket `json:"tcpSocket,omitempty"`
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+ TimeoutSeconds *int `json:"timeoutSeconds,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppProbe_STATUS
+// Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive
+// traffic.
+type ContainerAppProbe_STATUS struct {
+ FailureThreshold *int `json:"failureThreshold,omitempty"`
+ HttpGet *ContainerAppProbe_HttpGet_STATUS `json:"httpGet,omitempty"`
+ InitialDelaySeconds *int `json:"initialDelaySeconds,omitempty"`
+ PeriodSeconds *int `json:"periodSeconds,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SuccessThreshold *int `json:"successThreshold,omitempty"`
+ TcpSocket *ContainerAppProbe_TcpSocket_STATUS `json:"tcpSocket,omitempty"`
+ TerminationGracePeriodSeconds *int `json:"terminationGracePeriodSeconds,omitempty"`
+ TimeoutSeconds *int `json:"timeoutSeconds,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerResources
+// Container App container resource requirements.
+type ContainerResources struct {
+ Cpu *float64 `json:"cpu,omitempty"`
+ Memory *string `json:"memory,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerResources_STATUS
+// Container App container resource requirements.
+type ContainerResources_STATUS struct {
+ Cpu *float64 `json:"cpu,omitempty"`
+ EphemeralStorage *string `json:"ephemeralStorage,omitempty"`
+ Memory *string `json:"memory,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.CorsPolicy
+// Cross-Origin-Resource-Sharing policy
+type CorsPolicy struct {
+ AllowCredentials *bool `json:"allowCredentials,omitempty"`
+ AllowedHeaders []string `json:"allowedHeaders,omitempty"`
+ AllowedMethods []string `json:"allowedMethods,omitempty"`
+ AllowedOrigins []string `json:"allowedOrigins,omitempty"`
+ ExposeHeaders []string `json:"exposeHeaders,omitempty"`
+ MaxAge *int `json:"maxAge,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.CorsPolicy_STATUS
+// Cross-Origin-Resource-Sharing policy
+type CorsPolicy_STATUS struct {
+ AllowCredentials *bool `json:"allowCredentials,omitempty"`
+ AllowedHeaders []string `json:"allowedHeaders,omitempty"`
+ AllowedMethods []string `json:"allowedMethods,omitempty"`
+ AllowedOrigins []string `json:"allowedOrigins,omitempty"`
+ ExposeHeaders []string `json:"exposeHeaders,omitempty"`
+ MaxAge *int `json:"maxAge,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.CustomDomain
+// Custom Domain of a Container App
+type CustomDomain struct {
+ BindingType *string `json:"bindingType,omitempty"`
+
+ // CertificateReference: Resource Id of the Certificate to be bound to this hostname. Must exist in the Managed Environment.
+ CertificateReference *genruntime.ResourceReference `armReference:"CertificateId" json:"certificateReference,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.CustomDomain_STATUS
+// Custom Domain of a Container App
+type CustomDomain_STATUS struct {
+ BindingType *string `json:"bindingType,omitempty"`
+ CertificateId *string `json:"certificateId,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.EnvironmentVar
+// Container App container environment variable.
+type EnvironmentVar struct {
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretRef *string `json:"secretRef,omitempty"`
+ Value *string `json:"value,omitempty"`
+}
+
+// Storage version of v1api20240301.EnvironmentVar_STATUS
+// Container App container environment variable.
+type EnvironmentVar_STATUS struct {
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretRef *string `json:"secretRef,omitempty"`
+ Value *string `json:"value,omitempty"`
+}
+
+// Storage version of v1api20240301.Ingress_StickySessions
+type Ingress_StickySessions struct {
+ Affinity *string `json:"affinity,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.Ingress_StickySessions_STATUS
+type Ingress_StickySessions_STATUS struct {
+ Affinity *string `json:"affinity,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.IngressPortMapping
+// Port mappings of container app ingress
+type IngressPortMapping struct {
+ ExposedPort *int `json:"exposedPort,omitempty"`
+ External *bool `json:"external,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TargetPort *int `json:"targetPort,omitempty"`
+}
+
+// Storage version of v1api20240301.IngressPortMapping_STATUS
+// Port mappings of container app ingress
+type IngressPortMapping_STATUS struct {
+ ExposedPort *int `json:"exposedPort,omitempty"`
+ External *bool `json:"external,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ TargetPort *int `json:"targetPort,omitempty"`
+}
+
+// Storage version of v1api20240301.IpSecurityRestrictionRule
+// Rule to restrict incoming IP address.
+type IpSecurityRestrictionRule struct {
+ Action *string `json:"action,omitempty"`
+ Description *string `json:"description,omitempty"`
+ IpAddressRange *string `json:"ipAddressRange,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.IpSecurityRestrictionRule_STATUS
+// Rule to restrict incoming IP address.
+type IpSecurityRestrictionRule_STATUS struct {
+ Action *string `json:"action,omitempty"`
+ Description *string `json:"description,omitempty"`
+ IpAddressRange *string `json:"ipAddressRange,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ScaleRule
+// Container App container scaling rule.
+type ScaleRule struct {
+ AzureQueue *QueueScaleRule `json:"azureQueue,omitempty"`
+ Custom *CustomScaleRule `json:"custom,omitempty"`
+ Http *HttpScaleRule `json:"http,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Tcp *TcpScaleRule `json:"tcp,omitempty"`
+}
+
+// Storage version of v1api20240301.ScaleRule_STATUS
+// Container App container scaling rule.
+type ScaleRule_STATUS struct {
+ AzureQueue *QueueScaleRule_STATUS `json:"azureQueue,omitempty"`
+ Custom *CustomScaleRule_STATUS `json:"custom,omitempty"`
+ Http *HttpScaleRule_STATUS `json:"http,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Tcp *TcpScaleRule_STATUS `json:"tcp,omitempty"`
+}
+
+// Storage version of v1api20240301.SecretVolumeItem
+// Secret to be added to volume.
+type SecretVolumeItem struct {
+ Path *string `json:"path,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretRef *string `json:"secretRef,omitempty"`
+}
+
+// Storage version of v1api20240301.SecretVolumeItem_STATUS
+// Secret to be added to volume.
+type SecretVolumeItem_STATUS struct {
+ Path *string `json:"path,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretRef *string `json:"secretRef,omitempty"`
+}
+
+// Storage version of v1api20240301.TrafficWeight
+// Traffic weight assigned to a revision
+type TrafficWeight struct {
+ Label *string `json:"label,omitempty"`
+ LatestRevision *bool `json:"latestRevision,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RevisionName *string `json:"revisionName,omitempty"`
+ Weight *int `json:"weight,omitempty"`
+}
+
+// Storage version of v1api20240301.TrafficWeight_STATUS
+// Traffic weight assigned to a revision
+type TrafficWeight_STATUS struct {
+ Label *string `json:"label,omitempty"`
+ LatestRevision *bool `json:"latestRevision,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ RevisionName *string `json:"revisionName,omitempty"`
+ Weight *int `json:"weight,omitempty"`
+}
+
+// Storage version of v1api20240301.VolumeMount
+// Volume mount for the Container App.
+type VolumeMount struct {
+ MountPath *string `json:"mountPath,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SubPath *string `json:"subPath,omitempty"`
+ VolumeName *string `json:"volumeName,omitempty"`
+}
+
+// Storage version of v1api20240301.VolumeMount_STATUS
+// Volume mount for the Container App.
+type VolumeMount_STATUS struct {
+ MountPath *string `json:"mountPath,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SubPath *string `json:"subPath,omitempty"`
+ VolumeName *string `json:"volumeName,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppProbe_HttpGet
+type ContainerAppProbe_HttpGet struct {
+ Host *string `json:"host,omitempty"`
+ HttpHeaders []ContainerAppProbe_HttpGet_HttpHeaders `json:"httpHeaders,omitempty"`
+ Path *string `json:"path,omitempty"`
+ Port *int `json:"port,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Scheme *string `json:"scheme,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppProbe_HttpGet_STATUS
+type ContainerAppProbe_HttpGet_STATUS struct {
+ Host *string `json:"host,omitempty"`
+ HttpHeaders []ContainerAppProbe_HttpGet_HttpHeaders_STATUS `json:"httpHeaders,omitempty"`
+ Path *string `json:"path,omitempty"`
+ Port *int `json:"port,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Scheme *string `json:"scheme,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppProbe_TcpSocket
+type ContainerAppProbe_TcpSocket struct {
+ Host *string `json:"host,omitempty"`
+ Port *int `json:"port,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppProbe_TcpSocket_STATUS
+type ContainerAppProbe_TcpSocket_STATUS struct {
+ Host *string `json:"host,omitempty"`
+ Port *int `json:"port,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.CustomScaleRule
+// Container App container Custom scaling rule.
+type CustomScaleRule struct {
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+ Metadata map[string]string `json:"metadata,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.CustomScaleRule_STATUS
+// Container App container Custom scaling rule.
+type CustomScaleRule_STATUS struct {
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+ Metadata map[string]string `json:"metadata,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.HttpScaleRule
+// Container App container Http scaling rule.
+type HttpScaleRule struct {
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+ Metadata map[string]string `json:"metadata,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.HttpScaleRule_STATUS
+// Container App container Http scaling rule.
+type HttpScaleRule_STATUS struct {
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+ Metadata map[string]string `json:"metadata,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.QueueScaleRule
+// Container App container Azure Queue based scaling rule.
+type QueueScaleRule struct {
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ QueueLength *int `json:"queueLength,omitempty"`
+ QueueName *string `json:"queueName,omitempty"`
+}
+
+// Storage version of v1api20240301.QueueScaleRule_STATUS
+// Container App container Azure Queue based scaling rule.
+type QueueScaleRule_STATUS struct {
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ QueueLength *int `json:"queueLength,omitempty"`
+ QueueName *string `json:"queueName,omitempty"`
+}
+
+// Storage version of v1api20240301.TcpScaleRule
+// Container App container Tcp scaling rule.
+type TcpScaleRule struct {
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+ Metadata map[string]string `json:"metadata,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.TcpScaleRule_STATUS
+// Container App container Tcp scaling rule.
+type TcpScaleRule_STATUS struct {
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+ Metadata map[string]string `json:"metadata,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppProbe_HttpGet_HttpHeaders
+type ContainerAppProbe_HttpGet_HttpHeaders struct {
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Value *string `json:"value,omitempty"`
+}
+
+// Storage version of v1api20240301.ContainerAppProbe_HttpGet_HttpHeaders_STATUS
+type ContainerAppProbe_HttpGet_HttpHeaders_STATUS struct {
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Value *string `json:"value,omitempty"`
+}
+
+// Storage version of v1api20240301.ScaleRuleAuth
+// Auth Secrets for Scale Rule
+type ScaleRuleAuth struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretRef *string `json:"secretRef,omitempty"`
+ TriggerParameter *string `json:"triggerParameter,omitempty"`
+}
+
+// Storage version of v1api20240301.ScaleRuleAuth_STATUS
+// Auth Secrets for Scale Rule
+type ScaleRuleAuth_STATUS struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretRef *string `json:"secretRef,omitempty"`
+ TriggerParameter *string `json:"triggerParameter,omitempty"`
+}
+
+func init() {
+ SchemeBuilder.Register(&ContainerApp{}, &ContainerAppList{})
+}
diff --git a/v2/api/app/v1api20240301/storage/container_app_types_gen_test.go b/v2/api/app/v1api20240301/storage/container_app_types_gen_test.go
new file mode 100644
index 00000000000..ae118a519d3
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/container_app_types_gen_test.go
@@ -0,0 +1,5211 @@
+// 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_BaseContainer_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 BaseContainer via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBaseContainer, BaseContainerGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBaseContainer runs a test to see if a specific instance of BaseContainer round trips to JSON and back losslessly
+func RunJSONSerializationTestForBaseContainer(subject BaseContainer) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BaseContainer
+ 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 BaseContainer instances for property testing - lazily instantiated by BaseContainerGenerator()
+var baseContainerGenerator gopter.Gen
+
+// BaseContainerGenerator returns a generator of BaseContainer instances for property testing.
+// We first initialize baseContainerGenerator 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 BaseContainerGenerator() gopter.Gen {
+ if baseContainerGenerator != nil {
+ return baseContainerGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer(generators)
+ baseContainerGenerator = gen.Struct(reflect.TypeOf(BaseContainer{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer(generators)
+ AddRelatedPropertyGeneratorsForBaseContainer(generators)
+ baseContainerGenerator = gen.Struct(reflect.TypeOf(BaseContainer{}), generators)
+
+ return baseContainerGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBaseContainer is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBaseContainer(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForBaseContainer is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForBaseContainer(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVarGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResourcesGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMountGenerator())
+}
+
+func Test_BaseContainer_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 BaseContainer_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForBaseContainer_STATUS, BaseContainer_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForBaseContainer_STATUS runs a test to see if a specific instance of BaseContainer_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForBaseContainer_STATUS(subject BaseContainer_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual BaseContainer_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 BaseContainer_STATUS instances for property testing - lazily instantiated by
+// BaseContainer_STATUSGenerator()
+var baseContainer_STATUSGenerator gopter.Gen
+
+// BaseContainer_STATUSGenerator returns a generator of BaseContainer_STATUS instances for property testing.
+// We first initialize baseContainer_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 BaseContainer_STATUSGenerator() gopter.Gen {
+ if baseContainer_STATUSGenerator != nil {
+ return baseContainer_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer_STATUS(generators)
+ baseContainer_STATUSGenerator = gen.Struct(reflect.TypeOf(BaseContainer_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForBaseContainer_STATUS(generators)
+ AddRelatedPropertyGeneratorsForBaseContainer_STATUS(generators)
+ baseContainer_STATUSGenerator = gen.Struct(reflect.TypeOf(BaseContainer_STATUS{}), generators)
+
+ return baseContainer_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForBaseContainer_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForBaseContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForBaseContainer_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForBaseContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVar_STATUSGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResources_STATUSGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMount_STATUSGenerator())
+}
+
+func Test_Configuration_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 Configuration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForConfiguration, ConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForConfiguration runs a test to see if a specific instance of Configuration round trips to JSON and back losslessly
+func RunJSONSerializationTestForConfiguration(subject Configuration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Configuration
+ 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 Configuration instances for property testing - lazily instantiated by ConfigurationGenerator()
+var configurationGenerator gopter.Gen
+
+// ConfigurationGenerator returns a generator of Configuration instances for property testing.
+// We first initialize configurationGenerator 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 ConfigurationGenerator() gopter.Gen {
+ if configurationGenerator != nil {
+ return configurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration(generators)
+ configurationGenerator = gen.Struct(reflect.TypeOf(Configuration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration(generators)
+ AddRelatedPropertyGeneratorsForConfiguration(generators)
+ configurationGenerator = gen.Struct(reflect.TypeOf(Configuration{}), generators)
+
+ return configurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForConfiguration(gens map[string]gopter.Gen) {
+ gens["ActiveRevisionsMode"] = gen.PtrOf(gen.AlphaString())
+ gens["MaxInactiveRevisions"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForConfiguration(gens map[string]gopter.Gen) {
+ gens["Dapr"] = gen.PtrOf(DaprGenerator())
+ gens["Ingress"] = gen.PtrOf(IngressGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentialsGenerator())
+ gens["Secrets"] = gen.SliceOf(SecretGenerator())
+ gens["Service"] = gen.PtrOf(ServiceGenerator())
+}
+
+func Test_Configuration_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 Configuration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForConfiguration_STATUS, Configuration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForConfiguration_STATUS runs a test to see if a specific instance of Configuration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForConfiguration_STATUS(subject Configuration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Configuration_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 Configuration_STATUS instances for property testing - lazily instantiated by
+// Configuration_STATUSGenerator()
+var configuration_STATUSGenerator gopter.Gen
+
+// Configuration_STATUSGenerator returns a generator of Configuration_STATUS instances for property testing.
+// We first initialize configuration_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 Configuration_STATUSGenerator() gopter.Gen {
+ if configuration_STATUSGenerator != nil {
+ return configuration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration_STATUS(generators)
+ configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(Configuration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForConfiguration_STATUS(generators)
+ configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(Configuration_STATUS{}), generators)
+
+ return configuration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["ActiveRevisionsMode"] = gen.PtrOf(gen.AlphaString())
+ gens["MaxInactiveRevisions"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Dapr"] = gen.PtrOf(Dapr_STATUSGenerator())
+ gens["Ingress"] = gen.PtrOf(Ingress_STATUSGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentials_STATUSGenerator())
+ gens["Secrets"] = gen.SliceOf(Secret_STATUSGenerator())
+ gens["Service"] = gen.PtrOf(Service_STATUSGenerator())
+}
+
+func Test_Container_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 Container via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainer, ContainerGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainer runs a test to see if a specific instance of Container round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainer(subject Container) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Container
+ 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 Container instances for property testing - lazily instantiated by ContainerGenerator()
+var containerGenerator gopter.Gen
+
+// ContainerGenerator returns a generator of Container instances for property testing.
+// We first initialize containerGenerator 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 ContainerGenerator() gopter.Gen {
+ if containerGenerator != nil {
+ return containerGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer(generators)
+ containerGenerator = gen.Struct(reflect.TypeOf(Container{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer(generators)
+ AddRelatedPropertyGeneratorsForContainer(generators)
+ containerGenerator = gen.Struct(reflect.TypeOf(Container{}), generators)
+
+ return containerGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainer is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainer(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainer is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainer(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVarGenerator())
+ gens["Probes"] = gen.SliceOf(ContainerAppProbeGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResourcesGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMountGenerator())
+}
+
+func Test_ContainerApp_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 ContainerApp via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp, ContainerAppGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp runs a test to see if a specific instance of ContainerApp round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp(subject ContainerApp) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp
+ 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 ContainerApp instances for property testing - lazily instantiated by ContainerAppGenerator()
+var containerAppGenerator gopter.Gen
+
+// ContainerAppGenerator returns a generator of ContainerApp instances for property testing.
+func ContainerAppGenerator() gopter.Gen {
+ if containerAppGenerator != nil {
+ return containerAppGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForContainerApp(generators)
+ containerAppGenerator = gen.Struct(reflect.TypeOf(ContainerApp{}), generators)
+
+ return containerAppGenerator
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp(gens map[string]gopter.Gen) {
+ gens["Spec"] = ContainerApp_SpecGenerator()
+ gens["Status"] = ContainerApp_STATUSGenerator()
+}
+
+func Test_ContainerAppOperatorConfigMaps_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 ContainerAppOperatorConfigMaps via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppOperatorConfigMaps, ContainerAppOperatorConfigMapsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppOperatorConfigMaps runs a test to see if a specific instance of ContainerAppOperatorConfigMaps round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppOperatorConfigMaps(subject ContainerAppOperatorConfigMaps) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppOperatorConfigMaps
+ 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 ContainerAppOperatorConfigMaps instances for property testing - lazily instantiated by
+// ContainerAppOperatorConfigMapsGenerator()
+var containerAppOperatorConfigMapsGenerator gopter.Gen
+
+// ContainerAppOperatorConfigMapsGenerator returns a generator of ContainerAppOperatorConfigMaps instances for property testing.
+func ContainerAppOperatorConfigMapsGenerator() gopter.Gen {
+ if containerAppOperatorConfigMapsGenerator != nil {
+ return containerAppOperatorConfigMapsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ containerAppOperatorConfigMapsGenerator = gen.Struct(reflect.TypeOf(ContainerAppOperatorConfigMaps{}), generators)
+
+ return containerAppOperatorConfigMapsGenerator
+}
+
+func Test_ContainerAppOperatorSpec_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 ContainerAppOperatorSpec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppOperatorSpec, ContainerAppOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppOperatorSpec runs a test to see if a specific instance of ContainerAppOperatorSpec round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppOperatorSpec(subject ContainerAppOperatorSpec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppOperatorSpec
+ 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 ContainerAppOperatorSpec instances for property testing - lazily instantiated by
+// ContainerAppOperatorSpecGenerator()
+var containerAppOperatorSpecGenerator gopter.Gen
+
+// ContainerAppOperatorSpecGenerator returns a generator of ContainerAppOperatorSpec instances for property testing.
+func ContainerAppOperatorSpecGenerator() gopter.Gen {
+ if containerAppOperatorSpecGenerator != nil {
+ return containerAppOperatorSpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForContainerAppOperatorSpec(generators)
+ containerAppOperatorSpecGenerator = gen.Struct(reflect.TypeOf(ContainerAppOperatorSpec{}), generators)
+
+ return containerAppOperatorSpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppOperatorSpec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppOperatorSpec(gens map[string]gopter.Gen) {
+ gens["ConfigMaps"] = gen.PtrOf(ContainerAppOperatorConfigMapsGenerator())
+}
+
+func Test_ContainerAppProbe_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 ContainerAppProbe via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe, ContainerAppProbeGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe runs a test to see if a specific instance of ContainerAppProbe round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe(subject ContainerAppProbe) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe
+ 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 ContainerAppProbe instances for property testing - lazily instantiated by ContainerAppProbeGenerator()
+var containerAppProbeGenerator gopter.Gen
+
+// ContainerAppProbeGenerator returns a generator of ContainerAppProbe instances for property testing.
+// We first initialize containerAppProbeGenerator 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 ContainerAppProbeGenerator() gopter.Gen {
+ if containerAppProbeGenerator != nil {
+ return containerAppProbeGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe(generators)
+ containerAppProbeGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe(generators)
+ containerAppProbeGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe{}), generators)
+
+ return containerAppProbeGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe(gens map[string]gopter.Gen) {
+ gens["FailureThreshold"] = gen.PtrOf(gen.Int())
+ gens["InitialDelaySeconds"] = gen.PtrOf(gen.Int())
+ gens["PeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["SuccessThreshold"] = gen.PtrOf(gen.Int())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["TimeoutSeconds"] = gen.PtrOf(gen.Int())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe(gens map[string]gopter.Gen) {
+ gens["HttpGet"] = gen.PtrOf(ContainerAppProbe_HttpGetGenerator())
+ gens["TcpSocket"] = gen.PtrOf(ContainerAppProbe_TcpSocketGenerator())
+}
+
+func Test_ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet, ContainerAppProbe_HttpGetGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet runs a test to see if a specific instance of ContainerAppProbe_HttpGet round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet(subject ContainerAppProbe_HttpGet) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet
+ 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 ContainerAppProbe_HttpGet instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGetGenerator()
+var containerAppProbe_HttpGetGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGetGenerator returns a generator of ContainerAppProbe_HttpGet instances for property testing.
+// We first initialize containerAppProbe_HttpGetGenerator 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 ContainerAppProbe_HttpGetGenerator() gopter.Gen {
+ if containerAppProbe_HttpGetGenerator != nil {
+ return containerAppProbe_HttpGetGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ containerAppProbe_HttpGetGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet(generators)
+ containerAppProbe_HttpGetGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet{}), generators)
+
+ return containerAppProbe_HttpGetGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+ gens["Scheme"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet(gens map[string]gopter.Gen) {
+ gens["HttpHeaders"] = gen.SliceOf(ContainerAppProbe_HttpGet_HttpHeadersGenerator())
+}
+
+func Test_ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders, ContainerAppProbe_HttpGet_HttpHeadersGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders runs a test to see if a specific instance of ContainerAppProbe_HttpGet_HttpHeaders round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders(subject ContainerAppProbe_HttpGet_HttpHeaders) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_HttpHeaders
+ 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 ContainerAppProbe_HttpGet_HttpHeaders instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_HttpHeadersGenerator()
+var containerAppProbe_HttpGet_HttpHeadersGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_HttpHeadersGenerator returns a generator of ContainerAppProbe_HttpGet_HttpHeaders instances for property testing.
+func ContainerAppProbe_HttpGet_HttpHeadersGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_HttpHeadersGenerator != nil {
+ return containerAppProbe_HttpGet_HttpHeadersGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders(generators)
+ containerAppProbe_HttpGet_HttpHeadersGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_HttpHeaders{}), generators)
+
+ return containerAppProbe_HttpGet_HttpHeadersGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS, ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS runs a test to see if a specific instance of ContainerAppProbe_HttpGet_HttpHeaders_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_HttpHeaders_STATUS(subject ContainerAppProbe_HttpGet_HttpHeaders_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_HttpHeaders_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 ContainerAppProbe_HttpGet_HttpHeaders_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator()
+var containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator returns a generator of ContainerAppProbe_HttpGet_HttpHeaders_STATUS instances for property testing.
+func ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator != nil {
+ return containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS(generators)
+ containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_HttpHeaders_STATUS{}), generators)
+
+ return containerAppProbe_HttpGet_HttpHeaders_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_HttpHeaders_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS, ContainerAppProbe_HttpGet_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS runs a test to see if a specific instance of ContainerAppProbe_HttpGet_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_HttpGet_STATUS(subject ContainerAppProbe_HttpGet_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_HttpGet_STATUSGenerator()
+var containerAppProbe_HttpGet_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_HttpGet_STATUSGenerator returns a generator of ContainerAppProbe_HttpGet_STATUS instances for property testing.
+// We first initialize containerAppProbe_HttpGet_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 ContainerAppProbe_HttpGet_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_HttpGet_STATUSGenerator != nil {
+ return containerAppProbe_HttpGet_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ containerAppProbe_HttpGet_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(generators)
+ containerAppProbe_HttpGet_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_HttpGet_STATUS{}), generators)
+
+ return containerAppProbe_HttpGet_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+ gens["Scheme"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_HttpGet_STATUS(gens map[string]gopter.Gen) {
+ gens["HttpHeaders"] = gen.SliceOf(ContainerAppProbe_HttpGet_HttpHeaders_STATUSGenerator())
+}
+
+func Test_ContainerAppProbe_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 ContainerAppProbe_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_STATUS, ContainerAppProbe_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_STATUS runs a test to see if a specific instance of ContainerAppProbe_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_STATUS(subject ContainerAppProbe_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_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 ContainerAppProbe_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_STATUSGenerator()
+var containerAppProbe_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_STATUSGenerator returns a generator of ContainerAppProbe_STATUS instances for property testing.
+// We first initialize containerAppProbe_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 ContainerAppProbe_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_STATUSGenerator != nil {
+ return containerAppProbe_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ containerAppProbe_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS(generators)
+ containerAppProbe_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_STATUS{}), generators)
+
+ return containerAppProbe_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_STATUS(gens map[string]gopter.Gen) {
+ gens["FailureThreshold"] = gen.PtrOf(gen.Int())
+ gens["InitialDelaySeconds"] = gen.PtrOf(gen.Int())
+ gens["PeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["SuccessThreshold"] = gen.PtrOf(gen.Int())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+ gens["TimeoutSeconds"] = gen.PtrOf(gen.Int())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerAppProbe_STATUS(gens map[string]gopter.Gen) {
+ gens["HttpGet"] = gen.PtrOf(ContainerAppProbe_HttpGet_STATUSGenerator())
+ gens["TcpSocket"] = gen.PtrOf(ContainerAppProbe_TcpSocket_STATUSGenerator())
+}
+
+func Test_ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_TcpSocket, ContainerAppProbe_TcpSocketGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_TcpSocket runs a test to see if a specific instance of ContainerAppProbe_TcpSocket round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_TcpSocket(subject ContainerAppProbe_TcpSocket) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_TcpSocket
+ 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 ContainerAppProbe_TcpSocket instances for property testing - lazily instantiated by
+// ContainerAppProbe_TcpSocketGenerator()
+var containerAppProbe_TcpSocketGenerator gopter.Gen
+
+// ContainerAppProbe_TcpSocketGenerator returns a generator of ContainerAppProbe_TcpSocket instances for property testing.
+func ContainerAppProbe_TcpSocketGenerator() gopter.Gen {
+ if containerAppProbe_TcpSocketGenerator != nil {
+ return containerAppProbe_TcpSocketGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket(generators)
+ containerAppProbe_TcpSocketGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_TcpSocket{}), generators)
+
+ return containerAppProbe_TcpSocketGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+}
+
+func Test_ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS, ContainerAppProbe_TcpSocket_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS runs a test to see if a specific instance of ContainerAppProbe_TcpSocket_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerAppProbe_TcpSocket_STATUS(subject ContainerAppProbe_TcpSocket_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerAppProbe_TcpSocket_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 ContainerAppProbe_TcpSocket_STATUS instances for property testing - lazily instantiated by
+// ContainerAppProbe_TcpSocket_STATUSGenerator()
+var containerAppProbe_TcpSocket_STATUSGenerator gopter.Gen
+
+// ContainerAppProbe_TcpSocket_STATUSGenerator returns a generator of ContainerAppProbe_TcpSocket_STATUS instances for property testing.
+func ContainerAppProbe_TcpSocket_STATUSGenerator() gopter.Gen {
+ if containerAppProbe_TcpSocket_STATUSGenerator != nil {
+ return containerAppProbe_TcpSocket_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS(generators)
+ containerAppProbe_TcpSocket_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerAppProbe_TcpSocket_STATUS{}), generators)
+
+ return containerAppProbe_TcpSocket_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerAppProbe_TcpSocket_STATUS(gens map[string]gopter.Gen) {
+ gens["Host"] = gen.PtrOf(gen.AlphaString())
+ gens["Port"] = gen.PtrOf(gen.Int())
+}
+
+func Test_ContainerApp_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 ContainerApp_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp_STATUS, ContainerApp_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp_STATUS runs a test to see if a specific instance of ContainerApp_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp_STATUS(subject ContainerApp_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp_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 ContainerApp_STATUS instances for property testing - lazily instantiated by
+// ContainerApp_STATUSGenerator()
+var containerApp_STATUSGenerator gopter.Gen
+
+// ContainerApp_STATUSGenerator returns a generator of ContainerApp_STATUS instances for property testing.
+// We first initialize containerApp_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 ContainerApp_STATUSGenerator() gopter.Gen {
+ if containerApp_STATUSGenerator != nil {
+ return containerApp_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_STATUS(generators)
+ containerApp_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApp_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainerApp_STATUS(generators)
+ containerApp_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerApp_STATUS{}), generators)
+
+ return containerApp_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerApp_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerApp_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomDomainVerificationId"] = gen.PtrOf(gen.AlphaString())
+ gens["EnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestReadyRevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevisionFqdn"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["ManagedBy"] = gen.PtrOf(gen.AlphaString())
+ gens["ManagedEnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["OutboundIpAddresses"] = gen.SliceOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.AlphaString())
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp_STATUS(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(Configuration_STATUSGenerator())
+ gens["ExtendedLocation"] = gen.PtrOf(ExtendedLocation_STATUSGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentity_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+ gens["Template"] = gen.PtrOf(Template_STATUSGenerator())
+}
+
+func Test_ContainerApp_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 ContainerApp_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerApp_Spec, ContainerApp_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerApp_Spec runs a test to see if a specific instance of ContainerApp_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerApp_Spec(subject ContainerApp_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerApp_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 ContainerApp_Spec instances for property testing - lazily instantiated by ContainerApp_SpecGenerator()
+var containerApp_SpecGenerator gopter.Gen
+
+// ContainerApp_SpecGenerator returns a generator of ContainerApp_Spec instances for property testing.
+// We first initialize containerApp_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 ContainerApp_SpecGenerator() gopter.Gen {
+ if containerApp_SpecGenerator != nil {
+ return containerApp_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Spec(generators)
+ containerApp_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerApp_Spec(generators)
+ AddRelatedPropertyGeneratorsForContainerApp_Spec(generators)
+ containerApp_SpecGenerator = gen.Struct(reflect.TypeOf(ContainerApp_Spec{}), generators)
+
+ return containerApp_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerApp_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerApp_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())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainerApp_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainerApp_Spec(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(ConfigurationGenerator())
+ gens["ExtendedLocation"] = gen.PtrOf(ExtendedLocationGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentityGenerator())
+ gens["OperatorSpec"] = gen.PtrOf(ContainerAppOperatorSpecGenerator())
+ gens["Template"] = gen.PtrOf(TemplateGenerator())
+}
+
+func Test_ContainerResources_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 ContainerResources via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerResources, ContainerResourcesGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerResources runs a test to see if a specific instance of ContainerResources round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerResources(subject ContainerResources) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerResources
+ 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 ContainerResources instances for property testing - lazily instantiated by ContainerResourcesGenerator()
+var containerResourcesGenerator gopter.Gen
+
+// ContainerResourcesGenerator returns a generator of ContainerResources instances for property testing.
+func ContainerResourcesGenerator() gopter.Gen {
+ if containerResourcesGenerator != nil {
+ return containerResourcesGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerResources(generators)
+ containerResourcesGenerator = gen.Struct(reflect.TypeOf(ContainerResources{}), generators)
+
+ return containerResourcesGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerResources is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerResources(gens map[string]gopter.Gen) {
+ gens["Cpu"] = gen.PtrOf(gen.Float64())
+ gens["Memory"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ContainerResources_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 ContainerResources_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainerResources_STATUS, ContainerResources_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainerResources_STATUS runs a test to see if a specific instance of ContainerResources_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainerResources_STATUS(subject ContainerResources_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ContainerResources_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 ContainerResources_STATUS instances for property testing - lazily instantiated by
+// ContainerResources_STATUSGenerator()
+var containerResources_STATUSGenerator gopter.Gen
+
+// ContainerResources_STATUSGenerator returns a generator of ContainerResources_STATUS instances for property testing.
+func ContainerResources_STATUSGenerator() gopter.Gen {
+ if containerResources_STATUSGenerator != nil {
+ return containerResources_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainerResources_STATUS(generators)
+ containerResources_STATUSGenerator = gen.Struct(reflect.TypeOf(ContainerResources_STATUS{}), generators)
+
+ return containerResources_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainerResources_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainerResources_STATUS(gens map[string]gopter.Gen) {
+ gens["Cpu"] = gen.PtrOf(gen.Float64())
+ gens["EphemeralStorage"] = gen.PtrOf(gen.AlphaString())
+ gens["Memory"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Container_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 Container_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForContainer_STATUS, Container_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForContainer_STATUS runs a test to see if a specific instance of Container_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForContainer_STATUS(subject Container_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Container_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 Container_STATUS instances for property testing - lazily instantiated by Container_STATUSGenerator()
+var container_STATUSGenerator gopter.Gen
+
+// Container_STATUSGenerator returns a generator of Container_STATUS instances for property testing.
+// We first initialize container_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 Container_STATUSGenerator() gopter.Gen {
+ if container_STATUSGenerator != nil {
+ return container_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer_STATUS(generators)
+ container_STATUSGenerator = gen.Struct(reflect.TypeOf(Container_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForContainer_STATUS(generators)
+ AddRelatedPropertyGeneratorsForContainer_STATUS(generators)
+ container_STATUSGenerator = gen.Struct(reflect.TypeOf(Container_STATUS{}), generators)
+
+ return container_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForContainer_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Args"] = gen.SliceOf(gen.AlphaString())
+ gens["Command"] = gen.SliceOf(gen.AlphaString())
+ gens["Image"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForContainer_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForContainer_STATUS(gens map[string]gopter.Gen) {
+ gens["Env"] = gen.SliceOf(EnvironmentVar_STATUSGenerator())
+ gens["Probes"] = gen.SliceOf(ContainerAppProbe_STATUSGenerator())
+ gens["Resources"] = gen.PtrOf(ContainerResources_STATUSGenerator())
+ gens["VolumeMounts"] = gen.SliceOf(VolumeMount_STATUSGenerator())
+}
+
+func Test_CorsPolicy_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 CorsPolicy via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCorsPolicy, CorsPolicyGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCorsPolicy runs a test to see if a specific instance of CorsPolicy round trips to JSON and back losslessly
+func RunJSONSerializationTestForCorsPolicy(subject CorsPolicy) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CorsPolicy
+ 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 CorsPolicy instances for property testing - lazily instantiated by CorsPolicyGenerator()
+var corsPolicyGenerator gopter.Gen
+
+// CorsPolicyGenerator returns a generator of CorsPolicy instances for property testing.
+func CorsPolicyGenerator() gopter.Gen {
+ if corsPolicyGenerator != nil {
+ return corsPolicyGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCorsPolicy(generators)
+ corsPolicyGenerator = gen.Struct(reflect.TypeOf(CorsPolicy{}), generators)
+
+ return corsPolicyGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCorsPolicy is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCorsPolicy(gens map[string]gopter.Gen) {
+ gens["AllowCredentials"] = gen.PtrOf(gen.Bool())
+ gens["AllowedHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedMethods"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedOrigins"] = gen.SliceOf(gen.AlphaString())
+ gens["ExposeHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["MaxAge"] = gen.PtrOf(gen.Int())
+}
+
+func Test_CorsPolicy_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 CorsPolicy_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCorsPolicy_STATUS, CorsPolicy_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCorsPolicy_STATUS runs a test to see if a specific instance of CorsPolicy_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCorsPolicy_STATUS(subject CorsPolicy_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CorsPolicy_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 CorsPolicy_STATUS instances for property testing - lazily instantiated by CorsPolicy_STATUSGenerator()
+var corsPolicy_STATUSGenerator gopter.Gen
+
+// CorsPolicy_STATUSGenerator returns a generator of CorsPolicy_STATUS instances for property testing.
+func CorsPolicy_STATUSGenerator() gopter.Gen {
+ if corsPolicy_STATUSGenerator != nil {
+ return corsPolicy_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCorsPolicy_STATUS(generators)
+ corsPolicy_STATUSGenerator = gen.Struct(reflect.TypeOf(CorsPolicy_STATUS{}), generators)
+
+ return corsPolicy_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCorsPolicy_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCorsPolicy_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowCredentials"] = gen.PtrOf(gen.Bool())
+ gens["AllowedHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedMethods"] = gen.SliceOf(gen.AlphaString())
+ gens["AllowedOrigins"] = gen.SliceOf(gen.AlphaString())
+ gens["ExposeHeaders"] = gen.SliceOf(gen.AlphaString())
+ gens["MaxAge"] = gen.PtrOf(gen.Int())
+}
+
+func Test_CustomDomain_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 CustomDomain via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomain, CustomDomainGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomain runs a test to see if a specific instance of CustomDomain round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomain(subject CustomDomain) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomain
+ 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 CustomDomain instances for property testing - lazily instantiated by CustomDomainGenerator()
+var customDomainGenerator gopter.Gen
+
+// CustomDomainGenerator returns a generator of CustomDomain instances for property testing.
+func CustomDomainGenerator() gopter.Gen {
+ if customDomainGenerator != nil {
+ return customDomainGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomain(generators)
+ customDomainGenerator = gen.Struct(reflect.TypeOf(CustomDomain{}), generators)
+
+ return customDomainGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomain is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomain(gens map[string]gopter.Gen) {
+ gens["BindingType"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomDomain_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 CustomDomain_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomain_STATUS, CustomDomain_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomain_STATUS runs a test to see if a specific instance of CustomDomain_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomain_STATUS(subject CustomDomain_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomain_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 CustomDomain_STATUS instances for property testing - lazily instantiated by
+// CustomDomain_STATUSGenerator()
+var customDomain_STATUSGenerator gopter.Gen
+
+// CustomDomain_STATUSGenerator returns a generator of CustomDomain_STATUS instances for property testing.
+func CustomDomain_STATUSGenerator() gopter.Gen {
+ if customDomain_STATUSGenerator != nil {
+ return customDomain_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomain_STATUS(generators)
+ customDomain_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomDomain_STATUS{}), generators)
+
+ return customDomain_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomain_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomain_STATUS(gens map[string]gopter.Gen) {
+ gens["BindingType"] = gen.PtrOf(gen.AlphaString())
+ gens["CertificateId"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomScaleRule_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 CustomScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomScaleRule, CustomScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomScaleRule runs a test to see if a specific instance of CustomScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomScaleRule(subject CustomScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomScaleRule
+ 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 CustomScaleRule instances for property testing - lazily instantiated by CustomScaleRuleGenerator()
+var customScaleRuleGenerator gopter.Gen
+
+// CustomScaleRuleGenerator returns a generator of CustomScaleRule instances for property testing.
+// We first initialize customScaleRuleGenerator 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 CustomScaleRuleGenerator() gopter.Gen {
+ if customScaleRuleGenerator != nil {
+ return customScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule(generators)
+ customScaleRuleGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule(generators)
+ AddRelatedPropertyGeneratorsForCustomScaleRule(generators)
+ customScaleRuleGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule{}), generators)
+
+ return customScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForCustomScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_CustomScaleRule_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 CustomScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomScaleRule_STATUS, CustomScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomScaleRule_STATUS runs a test to see if a specific instance of CustomScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomScaleRule_STATUS(subject CustomScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomScaleRule_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 CustomScaleRule_STATUS instances for property testing - lazily instantiated by
+// CustomScaleRule_STATUSGenerator()
+var customScaleRule_STATUSGenerator gopter.Gen
+
+// CustomScaleRule_STATUSGenerator returns a generator of CustomScaleRule_STATUS instances for property testing.
+// We first initialize customScaleRule_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 CustomScaleRule_STATUSGenerator() gopter.Gen {
+ if customScaleRule_STATUSGenerator != nil {
+ return customScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ customScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS(generators)
+ customScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomScaleRule_STATUS{}), generators)
+
+ return customScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForCustomScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_Dapr_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 Dapr via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDapr, DaprGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDapr runs a test to see if a specific instance of Dapr round trips to JSON and back losslessly
+func RunJSONSerializationTestForDapr(subject Dapr) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Dapr
+ 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 Dapr instances for property testing - lazily instantiated by DaprGenerator()
+var daprGenerator gopter.Gen
+
+// DaprGenerator returns a generator of Dapr instances for property testing.
+func DaprGenerator() gopter.Gen {
+ if daprGenerator != nil {
+ return daprGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDapr(generators)
+ daprGenerator = gen.Struct(reflect.TypeOf(Dapr{}), generators)
+
+ return daprGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDapr is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDapr(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppPort"] = gen.PtrOf(gen.Int())
+ gens["AppProtocol"] = gen.PtrOf(gen.AlphaString())
+ gens["EnableApiLogging"] = gen.PtrOf(gen.Bool())
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["HttpMaxRequestSize"] = gen.PtrOf(gen.Int())
+ gens["HttpReadBufferSize"] = gen.PtrOf(gen.Int())
+ gens["LogLevel"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Dapr_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 Dapr_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDapr_STATUS, Dapr_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDapr_STATUS runs a test to see if a specific instance of Dapr_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDapr_STATUS(subject Dapr_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Dapr_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 Dapr_STATUS instances for property testing - lazily instantiated by Dapr_STATUSGenerator()
+var dapr_STATUSGenerator gopter.Gen
+
+// Dapr_STATUSGenerator returns a generator of Dapr_STATUS instances for property testing.
+func Dapr_STATUSGenerator() gopter.Gen {
+ if dapr_STATUSGenerator != nil {
+ return dapr_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDapr_STATUS(generators)
+ dapr_STATUSGenerator = gen.Struct(reflect.TypeOf(Dapr_STATUS{}), generators)
+
+ return dapr_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDapr_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDapr_STATUS(gens map[string]gopter.Gen) {
+ gens["AppId"] = gen.PtrOf(gen.AlphaString())
+ gens["AppPort"] = gen.PtrOf(gen.Int())
+ gens["AppProtocol"] = gen.PtrOf(gen.AlphaString())
+ gens["EnableApiLogging"] = gen.PtrOf(gen.Bool())
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+ gens["HttpMaxRequestSize"] = gen.PtrOf(gen.Int())
+ gens["HttpReadBufferSize"] = gen.PtrOf(gen.Int())
+ gens["LogLevel"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_EnvironmentVar_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 EnvironmentVar via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEnvironmentVar, EnvironmentVarGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEnvironmentVar runs a test to see if a specific instance of EnvironmentVar round trips to JSON and back losslessly
+func RunJSONSerializationTestForEnvironmentVar(subject EnvironmentVar) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EnvironmentVar
+ 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 EnvironmentVar instances for property testing - lazily instantiated by EnvironmentVarGenerator()
+var environmentVarGenerator gopter.Gen
+
+// EnvironmentVarGenerator returns a generator of EnvironmentVar instances for property testing.
+func EnvironmentVarGenerator() gopter.Gen {
+ if environmentVarGenerator != nil {
+ return environmentVarGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEnvironmentVar(generators)
+ environmentVarGenerator = gen.Struct(reflect.TypeOf(EnvironmentVar{}), generators)
+
+ return environmentVarGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEnvironmentVar is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEnvironmentVar(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_EnvironmentVar_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 EnvironmentVar_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForEnvironmentVar_STATUS, EnvironmentVar_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForEnvironmentVar_STATUS runs a test to see if a specific instance of EnvironmentVar_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForEnvironmentVar_STATUS(subject EnvironmentVar_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual EnvironmentVar_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 EnvironmentVar_STATUS instances for property testing - lazily instantiated by
+// EnvironmentVar_STATUSGenerator()
+var environmentVar_STATUSGenerator gopter.Gen
+
+// EnvironmentVar_STATUSGenerator returns a generator of EnvironmentVar_STATUS instances for property testing.
+func EnvironmentVar_STATUSGenerator() gopter.Gen {
+ if environmentVar_STATUSGenerator != nil {
+ return environmentVar_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS(generators)
+ environmentVar_STATUSGenerator = gen.Struct(reflect.TypeOf(EnvironmentVar_STATUS{}), generators)
+
+ return environmentVar_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForEnvironmentVar_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Value"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ExtendedLocation_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 ExtendedLocation via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForExtendedLocation, ExtendedLocationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForExtendedLocation runs a test to see if a specific instance of ExtendedLocation round trips to JSON and back losslessly
+func RunJSONSerializationTestForExtendedLocation(subject ExtendedLocation) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ExtendedLocation
+ 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 ExtendedLocation instances for property testing - lazily instantiated by ExtendedLocationGenerator()
+var extendedLocationGenerator gopter.Gen
+
+// ExtendedLocationGenerator returns a generator of ExtendedLocation instances for property testing.
+func ExtendedLocationGenerator() gopter.Gen {
+ if extendedLocationGenerator != nil {
+ return extendedLocationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForExtendedLocation(generators)
+ extendedLocationGenerator = gen.Struct(reflect.TypeOf(ExtendedLocation{}), generators)
+
+ return extendedLocationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForExtendedLocation is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForExtendedLocation(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ExtendedLocation_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 ExtendedLocation_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForExtendedLocation_STATUS, ExtendedLocation_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForExtendedLocation_STATUS runs a test to see if a specific instance of ExtendedLocation_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForExtendedLocation_STATUS(subject ExtendedLocation_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ExtendedLocation_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 ExtendedLocation_STATUS instances for property testing - lazily instantiated by
+// ExtendedLocation_STATUSGenerator()
+var extendedLocation_STATUSGenerator gopter.Gen
+
+// ExtendedLocation_STATUSGenerator returns a generator of ExtendedLocation_STATUS instances for property testing.
+func ExtendedLocation_STATUSGenerator() gopter.Gen {
+ if extendedLocation_STATUSGenerator != nil {
+ return extendedLocation_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForExtendedLocation_STATUS(generators)
+ extendedLocation_STATUSGenerator = gen.Struct(reflect.TypeOf(ExtendedLocation_STATUS{}), generators)
+
+ return extendedLocation_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForExtendedLocation_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForExtendedLocation_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_HttpScaleRule_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 HttpScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpScaleRule, HttpScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpScaleRule runs a test to see if a specific instance of HttpScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpScaleRule(subject HttpScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpScaleRule
+ 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 HttpScaleRule instances for property testing - lazily instantiated by HttpScaleRuleGenerator()
+var httpScaleRuleGenerator gopter.Gen
+
+// HttpScaleRuleGenerator returns a generator of HttpScaleRule instances for property testing.
+// We first initialize httpScaleRuleGenerator 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 HttpScaleRuleGenerator() gopter.Gen {
+ if httpScaleRuleGenerator != nil {
+ return httpScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule(generators)
+ httpScaleRuleGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule(generators)
+ AddRelatedPropertyGeneratorsForHttpScaleRule(generators)
+ httpScaleRuleGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule{}), generators)
+
+ return httpScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForHttpScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_HttpScaleRule_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 HttpScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForHttpScaleRule_STATUS, HttpScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForHttpScaleRule_STATUS runs a test to see if a specific instance of HttpScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForHttpScaleRule_STATUS(subject HttpScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual HttpScaleRule_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 HttpScaleRule_STATUS instances for property testing - lazily instantiated by
+// HttpScaleRule_STATUSGenerator()
+var httpScaleRule_STATUSGenerator gopter.Gen
+
+// HttpScaleRule_STATUSGenerator returns a generator of HttpScaleRule_STATUS instances for property testing.
+// We first initialize httpScaleRule_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 HttpScaleRule_STATUSGenerator() gopter.Gen {
+ if httpScaleRule_STATUSGenerator != nil {
+ return httpScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ httpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS(generators)
+ httpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(HttpScaleRule_STATUS{}), generators)
+
+ return httpScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForHttpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForHttpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_Ingress_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 Ingress via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress, IngressGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress runs a test to see if a specific instance of Ingress round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress(subject Ingress) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress
+ 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 Ingress instances for property testing - lazily instantiated by IngressGenerator()
+var ingressGenerator gopter.Gen
+
+// IngressGenerator returns a generator of Ingress instances for property testing.
+// We first initialize ingressGenerator 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 IngressGenerator() gopter.Gen {
+ if ingressGenerator != nil {
+ return ingressGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress(generators)
+ ingressGenerator = gen.Struct(reflect.TypeOf(Ingress{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress(generators)
+ AddRelatedPropertyGeneratorsForIngress(generators)
+ ingressGenerator = gen.Struct(reflect.TypeOf(Ingress{}), generators)
+
+ return ingressGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress(gens map[string]gopter.Gen) {
+ gens["AllowInsecure"] = gen.PtrOf(gen.Bool())
+ gens["ClientCertificateMode"] = gen.PtrOf(gen.AlphaString())
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+ gens["Transport"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForIngress is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIngress(gens map[string]gopter.Gen) {
+ gens["AdditionalPortMappings"] = gen.SliceOf(IngressPortMappingGenerator())
+ gens["CorsPolicy"] = gen.PtrOf(CorsPolicyGenerator())
+ gens["CustomDomains"] = gen.SliceOf(CustomDomainGenerator())
+ gens["IpSecurityRestrictions"] = gen.SliceOf(IpSecurityRestrictionRuleGenerator())
+ gens["StickySessions"] = gen.PtrOf(Ingress_StickySessionsGenerator())
+ gens["Traffic"] = gen.SliceOf(TrafficWeightGenerator())
+}
+
+func Test_IngressPortMapping_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 IngressPortMapping via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngressPortMapping, IngressPortMappingGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngressPortMapping runs a test to see if a specific instance of IngressPortMapping round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngressPortMapping(subject IngressPortMapping) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IngressPortMapping
+ 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 IngressPortMapping instances for property testing - lazily instantiated by IngressPortMappingGenerator()
+var ingressPortMappingGenerator gopter.Gen
+
+// IngressPortMappingGenerator returns a generator of IngressPortMapping instances for property testing.
+func IngressPortMappingGenerator() gopter.Gen {
+ if ingressPortMappingGenerator != nil {
+ return ingressPortMappingGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngressPortMapping(generators)
+ ingressPortMappingGenerator = gen.Struct(reflect.TypeOf(IngressPortMapping{}), generators)
+
+ return ingressPortMappingGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngressPortMapping is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngressPortMapping(gens map[string]gopter.Gen) {
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+}
+
+func Test_IngressPortMapping_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 IngressPortMapping_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngressPortMapping_STATUS, IngressPortMapping_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngressPortMapping_STATUS runs a test to see if a specific instance of IngressPortMapping_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngressPortMapping_STATUS(subject IngressPortMapping_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IngressPortMapping_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 IngressPortMapping_STATUS instances for property testing - lazily instantiated by
+// IngressPortMapping_STATUSGenerator()
+var ingressPortMapping_STATUSGenerator gopter.Gen
+
+// IngressPortMapping_STATUSGenerator returns a generator of IngressPortMapping_STATUS instances for property testing.
+func IngressPortMapping_STATUSGenerator() gopter.Gen {
+ if ingressPortMapping_STATUSGenerator != nil {
+ return ingressPortMapping_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS(generators)
+ ingressPortMapping_STATUSGenerator = gen.Struct(reflect.TypeOf(IngressPortMapping_STATUS{}), generators)
+
+ return ingressPortMapping_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngressPortMapping_STATUS(gens map[string]gopter.Gen) {
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+}
+
+func Test_Ingress_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 Ingress_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_STATUS, Ingress_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_STATUS runs a test to see if a specific instance of Ingress_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_STATUS(subject Ingress_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_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 Ingress_STATUS instances for property testing - lazily instantiated by Ingress_STATUSGenerator()
+var ingress_STATUSGenerator gopter.Gen
+
+// Ingress_STATUSGenerator returns a generator of Ingress_STATUS instances for property testing.
+// We first initialize ingress_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 Ingress_STATUSGenerator() gopter.Gen {
+ if ingress_STATUSGenerator != nil {
+ return ingress_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_STATUS(generators)
+ ingress_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_STATUS(generators)
+ AddRelatedPropertyGeneratorsForIngress_STATUS(generators)
+ ingress_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_STATUS{}), generators)
+
+ return ingress_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_STATUS(gens map[string]gopter.Gen) {
+ gens["AllowInsecure"] = gen.PtrOf(gen.Bool())
+ gens["ClientCertificateMode"] = gen.PtrOf(gen.AlphaString())
+ gens["ExposedPort"] = gen.PtrOf(gen.Int())
+ gens["External"] = gen.PtrOf(gen.Bool())
+ gens["Fqdn"] = gen.PtrOf(gen.AlphaString())
+ gens["TargetPort"] = gen.PtrOf(gen.Int())
+ gens["Transport"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForIngress_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForIngress_STATUS(gens map[string]gopter.Gen) {
+ gens["AdditionalPortMappings"] = gen.SliceOf(IngressPortMapping_STATUSGenerator())
+ gens["CorsPolicy"] = gen.PtrOf(CorsPolicy_STATUSGenerator())
+ gens["CustomDomains"] = gen.SliceOf(CustomDomain_STATUSGenerator())
+ gens["IpSecurityRestrictions"] = gen.SliceOf(IpSecurityRestrictionRule_STATUSGenerator())
+ gens["StickySessions"] = gen.PtrOf(Ingress_StickySessions_STATUSGenerator())
+ gens["Traffic"] = gen.SliceOf(TrafficWeight_STATUSGenerator())
+}
+
+func Test_Ingress_StickySessions_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 Ingress_StickySessions via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_StickySessions, Ingress_StickySessionsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_StickySessions runs a test to see if a specific instance of Ingress_StickySessions round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_StickySessions(subject Ingress_StickySessions) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_StickySessions
+ 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 Ingress_StickySessions instances for property testing - lazily instantiated by
+// Ingress_StickySessionsGenerator()
+var ingress_StickySessionsGenerator gopter.Gen
+
+// Ingress_StickySessionsGenerator returns a generator of Ingress_StickySessions instances for property testing.
+func Ingress_StickySessionsGenerator() gopter.Gen {
+ if ingress_StickySessionsGenerator != nil {
+ return ingress_StickySessionsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_StickySessions(generators)
+ ingress_StickySessionsGenerator = gen.Struct(reflect.TypeOf(Ingress_StickySessions{}), generators)
+
+ return ingress_StickySessionsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_StickySessions is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_StickySessions(gens map[string]gopter.Gen) {
+ gens["Affinity"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Ingress_StickySessions_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 Ingress_StickySessions_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIngress_StickySessions_STATUS, Ingress_StickySessions_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIngress_StickySessions_STATUS runs a test to see if a specific instance of Ingress_StickySessions_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIngress_StickySessions_STATUS(subject Ingress_StickySessions_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Ingress_StickySessions_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 Ingress_StickySessions_STATUS instances for property testing - lazily instantiated by
+// Ingress_StickySessions_STATUSGenerator()
+var ingress_StickySessions_STATUSGenerator gopter.Gen
+
+// Ingress_StickySessions_STATUSGenerator returns a generator of Ingress_StickySessions_STATUS instances for property testing.
+func Ingress_StickySessions_STATUSGenerator() gopter.Gen {
+ if ingress_StickySessions_STATUSGenerator != nil {
+ return ingress_StickySessions_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS(generators)
+ ingress_StickySessions_STATUSGenerator = gen.Struct(reflect.TypeOf(Ingress_StickySessions_STATUS{}), generators)
+
+ return ingress_StickySessions_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIngress_StickySessions_STATUS(gens map[string]gopter.Gen) {
+ gens["Affinity"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_IpSecurityRestrictionRule_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 IpSecurityRestrictionRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIpSecurityRestrictionRule, IpSecurityRestrictionRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIpSecurityRestrictionRule runs a test to see if a specific instance of IpSecurityRestrictionRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForIpSecurityRestrictionRule(subject IpSecurityRestrictionRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IpSecurityRestrictionRule
+ 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 IpSecurityRestrictionRule instances for property testing - lazily instantiated by
+// IpSecurityRestrictionRuleGenerator()
+var ipSecurityRestrictionRuleGenerator gopter.Gen
+
+// IpSecurityRestrictionRuleGenerator returns a generator of IpSecurityRestrictionRule instances for property testing.
+func IpSecurityRestrictionRuleGenerator() gopter.Gen {
+ if ipSecurityRestrictionRuleGenerator != nil {
+ return ipSecurityRestrictionRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule(generators)
+ ipSecurityRestrictionRuleGenerator = gen.Struct(reflect.TypeOf(IpSecurityRestrictionRule{}), generators)
+
+ return ipSecurityRestrictionRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule(gens map[string]gopter.Gen) {
+ gens["Action"] = gen.PtrOf(gen.AlphaString())
+ gens["Description"] = gen.PtrOf(gen.AlphaString())
+ gens["IpAddressRange"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_IpSecurityRestrictionRule_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 IpSecurityRestrictionRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS, IpSecurityRestrictionRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS runs a test to see if a specific instance of IpSecurityRestrictionRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForIpSecurityRestrictionRule_STATUS(subject IpSecurityRestrictionRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual IpSecurityRestrictionRule_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 IpSecurityRestrictionRule_STATUS instances for property testing - lazily instantiated by
+// IpSecurityRestrictionRule_STATUSGenerator()
+var ipSecurityRestrictionRule_STATUSGenerator gopter.Gen
+
+// IpSecurityRestrictionRule_STATUSGenerator returns a generator of IpSecurityRestrictionRule_STATUS instances for property testing.
+func IpSecurityRestrictionRule_STATUSGenerator() gopter.Gen {
+ if ipSecurityRestrictionRule_STATUSGenerator != nil {
+ return ipSecurityRestrictionRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS(generators)
+ ipSecurityRestrictionRule_STATUSGenerator = gen.Struct(reflect.TypeOf(IpSecurityRestrictionRule_STATUS{}), generators)
+
+ return ipSecurityRestrictionRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForIpSecurityRestrictionRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Action"] = gen.PtrOf(gen.AlphaString())
+ gens["Description"] = gen.PtrOf(gen.AlphaString())
+ gens["IpAddressRange"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ManagedServiceIdentity_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 ManagedServiceIdentity via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedServiceIdentity, ManagedServiceIdentityGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedServiceIdentity runs a test to see if a specific instance of ManagedServiceIdentity round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedServiceIdentity(subject ManagedServiceIdentity) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedServiceIdentity
+ 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 ManagedServiceIdentity instances for property testing - lazily instantiated by
+// ManagedServiceIdentityGenerator()
+var managedServiceIdentityGenerator gopter.Gen
+
+// ManagedServiceIdentityGenerator returns a generator of ManagedServiceIdentity instances for property testing.
+// We first initialize managedServiceIdentityGenerator 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 ManagedServiceIdentityGenerator() gopter.Gen {
+ if managedServiceIdentityGenerator != nil {
+ return managedServiceIdentityGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity(generators)
+ managedServiceIdentityGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity(generators)
+ AddRelatedPropertyGeneratorsForManagedServiceIdentity(generators)
+ managedServiceIdentityGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity{}), generators)
+
+ return managedServiceIdentityGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedServiceIdentity is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedServiceIdentity(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForManagedServiceIdentity is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedServiceIdentity(gens map[string]gopter.Gen) {
+ gens["UserAssignedIdentities"] = gen.SliceOf(UserAssignedIdentityDetailsGenerator())
+}
+
+func Test_ManagedServiceIdentity_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 ManagedServiceIdentity_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedServiceIdentity_STATUS, ManagedServiceIdentity_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedServiceIdentity_STATUS runs a test to see if a specific instance of ManagedServiceIdentity_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedServiceIdentity_STATUS(subject ManagedServiceIdentity_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedServiceIdentity_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 ManagedServiceIdentity_STATUS instances for property testing - lazily instantiated by
+// ManagedServiceIdentity_STATUSGenerator()
+var managedServiceIdentity_STATUSGenerator gopter.Gen
+
+// ManagedServiceIdentity_STATUSGenerator returns a generator of ManagedServiceIdentity_STATUS instances for property testing.
+// We first initialize managedServiceIdentity_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 ManagedServiceIdentity_STATUSGenerator() gopter.Gen {
+ if managedServiceIdentity_STATUSGenerator != nil {
+ return managedServiceIdentity_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ managedServiceIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS(generators)
+ managedServiceIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedServiceIdentity_STATUS{}), generators)
+
+ return managedServiceIdentity_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedServiceIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["PrincipalId"] = gen.PtrOf(gen.AlphaString())
+ gens["TenantId"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedServiceIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["UserAssignedIdentities"] = gen.MapOf(
+ gen.AlphaString(),
+ UserAssignedIdentity_STATUSGenerator())
+}
+
+func Test_QueueScaleRule_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 QueueScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForQueueScaleRule, QueueScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForQueueScaleRule runs a test to see if a specific instance of QueueScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForQueueScaleRule(subject QueueScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual QueueScaleRule
+ 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 QueueScaleRule instances for property testing - lazily instantiated by QueueScaleRuleGenerator()
+var queueScaleRuleGenerator gopter.Gen
+
+// QueueScaleRuleGenerator returns a generator of QueueScaleRule instances for property testing.
+// We first initialize queueScaleRuleGenerator 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 QueueScaleRuleGenerator() gopter.Gen {
+ if queueScaleRuleGenerator != nil {
+ return queueScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule(generators)
+ queueScaleRuleGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule(generators)
+ AddRelatedPropertyGeneratorsForQueueScaleRule(generators)
+ queueScaleRuleGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule{}), generators)
+
+ return queueScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForQueueScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForQueueScaleRule(gens map[string]gopter.Gen) {
+ gens["QueueLength"] = gen.PtrOf(gen.Int())
+ gens["QueueName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForQueueScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForQueueScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_QueueScaleRule_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 QueueScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForQueueScaleRule_STATUS, QueueScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForQueueScaleRule_STATUS runs a test to see if a specific instance of QueueScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForQueueScaleRule_STATUS(subject QueueScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual QueueScaleRule_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 QueueScaleRule_STATUS instances for property testing - lazily instantiated by
+// QueueScaleRule_STATUSGenerator()
+var queueScaleRule_STATUSGenerator gopter.Gen
+
+// QueueScaleRule_STATUSGenerator returns a generator of QueueScaleRule_STATUS instances for property testing.
+// We first initialize queueScaleRule_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 QueueScaleRule_STATUSGenerator() gopter.Gen {
+ if queueScaleRule_STATUSGenerator != nil {
+ return queueScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ queueScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS(generators)
+ queueScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(QueueScaleRule_STATUS{}), generators)
+
+ return queueScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForQueueScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["QueueLength"] = gen.PtrOf(gen.Int())
+ gens["QueueName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForQueueScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_RegistryCredentials_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 RegistryCredentials via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForRegistryCredentials, RegistryCredentialsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForRegistryCredentials runs a test to see if a specific instance of RegistryCredentials round trips to JSON and back losslessly
+func RunJSONSerializationTestForRegistryCredentials(subject RegistryCredentials) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual RegistryCredentials
+ 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 RegistryCredentials instances for property testing - lazily instantiated by
+// RegistryCredentialsGenerator()
+var registryCredentialsGenerator gopter.Gen
+
+// RegistryCredentialsGenerator returns a generator of RegistryCredentials instances for property testing.
+func RegistryCredentialsGenerator() gopter.Gen {
+ if registryCredentialsGenerator != nil {
+ return registryCredentialsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForRegistryCredentials(generators)
+ registryCredentialsGenerator = gen.Struct(reflect.TypeOf(RegistryCredentials{}), generators)
+
+ return registryCredentialsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForRegistryCredentials is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForRegistryCredentials(gens map[string]gopter.Gen) {
+ gens["PasswordSecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Server"] = gen.PtrOf(gen.AlphaString())
+ gens["Username"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_RegistryCredentials_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 RegistryCredentials_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForRegistryCredentials_STATUS, RegistryCredentials_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForRegistryCredentials_STATUS runs a test to see if a specific instance of RegistryCredentials_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForRegistryCredentials_STATUS(subject RegistryCredentials_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual RegistryCredentials_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 RegistryCredentials_STATUS instances for property testing - lazily instantiated by
+// RegistryCredentials_STATUSGenerator()
+var registryCredentials_STATUSGenerator gopter.Gen
+
+// RegistryCredentials_STATUSGenerator returns a generator of RegistryCredentials_STATUS instances for property testing.
+func RegistryCredentials_STATUSGenerator() gopter.Gen {
+ if registryCredentials_STATUSGenerator != nil {
+ return registryCredentials_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS(generators)
+ registryCredentials_STATUSGenerator = gen.Struct(reflect.TypeOf(RegistryCredentials_STATUS{}), generators)
+
+ return registryCredentials_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForRegistryCredentials_STATUS(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(gen.AlphaString())
+ gens["PasswordSecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["Server"] = gen.PtrOf(gen.AlphaString())
+ gens["Username"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Scale_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 Scale via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScale, ScaleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScale runs a test to see if a specific instance of Scale round trips to JSON and back losslessly
+func RunJSONSerializationTestForScale(subject Scale) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Scale
+ 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 Scale instances for property testing - lazily instantiated by ScaleGenerator()
+var scaleGenerator gopter.Gen
+
+// ScaleGenerator returns a generator of Scale instances for property testing.
+// We first initialize scaleGenerator 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 ScaleGenerator() gopter.Gen {
+ if scaleGenerator != nil {
+ return scaleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale(generators)
+ scaleGenerator = gen.Struct(reflect.TypeOf(Scale{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale(generators)
+ AddRelatedPropertyGeneratorsForScale(generators)
+ scaleGenerator = gen.Struct(reflect.TypeOf(Scale{}), generators)
+
+ return scaleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScale is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScale(gens map[string]gopter.Gen) {
+ gens["MaxReplicas"] = gen.PtrOf(gen.Int())
+ gens["MinReplicas"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForScale is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScale(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(ScaleRuleGenerator())
+}
+
+func Test_ScaleRule_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 ScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRule, ScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRule runs a test to see if a specific instance of ScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRule(subject ScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRule
+ 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 ScaleRule instances for property testing - lazily instantiated by ScaleRuleGenerator()
+var scaleRuleGenerator gopter.Gen
+
+// ScaleRuleGenerator returns a generator of ScaleRule instances for property testing.
+// We first initialize scaleRuleGenerator 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 ScaleRuleGenerator() gopter.Gen {
+ if scaleRuleGenerator != nil {
+ return scaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule(generators)
+ scaleRuleGenerator = gen.Struct(reflect.TypeOf(ScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule(generators)
+ AddRelatedPropertyGeneratorsForScaleRule(generators)
+ scaleRuleGenerator = gen.Struct(reflect.TypeOf(ScaleRule{}), generators)
+
+ return scaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRule(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScaleRule(gens map[string]gopter.Gen) {
+ gens["AzureQueue"] = gen.PtrOf(QueueScaleRuleGenerator())
+ gens["Custom"] = gen.PtrOf(CustomScaleRuleGenerator())
+ gens["Http"] = gen.PtrOf(HttpScaleRuleGenerator())
+ gens["Tcp"] = gen.PtrOf(TcpScaleRuleGenerator())
+}
+
+func Test_ScaleRuleAuth_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 ScaleRuleAuth via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRuleAuth, ScaleRuleAuthGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRuleAuth runs a test to see if a specific instance of ScaleRuleAuth round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRuleAuth(subject ScaleRuleAuth) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRuleAuth
+ 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 ScaleRuleAuth instances for property testing - lazily instantiated by ScaleRuleAuthGenerator()
+var scaleRuleAuthGenerator gopter.Gen
+
+// ScaleRuleAuthGenerator returns a generator of ScaleRuleAuth instances for property testing.
+func ScaleRuleAuthGenerator() gopter.Gen {
+ if scaleRuleAuthGenerator != nil {
+ return scaleRuleAuthGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRuleAuth(generators)
+ scaleRuleAuthGenerator = gen.Struct(reflect.TypeOf(ScaleRuleAuth{}), generators)
+
+ return scaleRuleAuthGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRuleAuth is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRuleAuth(gens map[string]gopter.Gen) {
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["TriggerParameter"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ScaleRuleAuth_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 ScaleRuleAuth_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRuleAuth_STATUS, ScaleRuleAuth_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRuleAuth_STATUS runs a test to see if a specific instance of ScaleRuleAuth_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRuleAuth_STATUS(subject ScaleRuleAuth_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRuleAuth_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 ScaleRuleAuth_STATUS instances for property testing - lazily instantiated by
+// ScaleRuleAuth_STATUSGenerator()
+var scaleRuleAuth_STATUSGenerator gopter.Gen
+
+// ScaleRuleAuth_STATUSGenerator returns a generator of ScaleRuleAuth_STATUS instances for property testing.
+func ScaleRuleAuth_STATUSGenerator() gopter.Gen {
+ if scaleRuleAuth_STATUSGenerator != nil {
+ return scaleRuleAuth_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS(generators)
+ scaleRuleAuth_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRuleAuth_STATUS{}), generators)
+
+ return scaleRuleAuth_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRuleAuth_STATUS(gens map[string]gopter.Gen) {
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+ gens["TriggerParameter"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ScaleRule_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 ScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScaleRule_STATUS, ScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScaleRule_STATUS runs a test to see if a specific instance of ScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScaleRule_STATUS(subject ScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ScaleRule_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 ScaleRule_STATUS instances for property testing - lazily instantiated by ScaleRule_STATUSGenerator()
+var scaleRule_STATUSGenerator gopter.Gen
+
+// ScaleRule_STATUSGenerator returns a generator of ScaleRule_STATUS instances for property testing.
+// We first initialize scaleRule_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 ScaleRule_STATUSGenerator() gopter.Gen {
+ if scaleRule_STATUSGenerator != nil {
+ return scaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule_STATUS(generators)
+ scaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForScaleRule_STATUS(generators)
+ scaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(ScaleRule_STATUS{}), generators)
+
+ return scaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["AzureQueue"] = gen.PtrOf(QueueScaleRule_STATUSGenerator())
+ gens["Custom"] = gen.PtrOf(CustomScaleRule_STATUSGenerator())
+ gens["Http"] = gen.PtrOf(HttpScaleRule_STATUSGenerator())
+ gens["Tcp"] = gen.PtrOf(TcpScaleRule_STATUSGenerator())
+}
+
+func Test_Scale_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 Scale_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForScale_STATUS, Scale_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForScale_STATUS runs a test to see if a specific instance of Scale_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForScale_STATUS(subject Scale_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Scale_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 Scale_STATUS instances for property testing - lazily instantiated by Scale_STATUSGenerator()
+var scale_STATUSGenerator gopter.Gen
+
+// Scale_STATUSGenerator returns a generator of Scale_STATUS instances for property testing.
+// We first initialize scale_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 Scale_STATUSGenerator() gopter.Gen {
+ if scale_STATUSGenerator != nil {
+ return scale_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale_STATUS(generators)
+ scale_STATUSGenerator = gen.Struct(reflect.TypeOf(Scale_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForScale_STATUS(generators)
+ AddRelatedPropertyGeneratorsForScale_STATUS(generators)
+ scale_STATUSGenerator = gen.Struct(reflect.TypeOf(Scale_STATUS{}), generators)
+
+ return scale_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForScale_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForScale_STATUS(gens map[string]gopter.Gen) {
+ gens["MaxReplicas"] = gen.PtrOf(gen.Int())
+ gens["MinReplicas"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForScale_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForScale_STATUS(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(ScaleRule_STATUSGenerator())
+}
+
+func Test_Secret_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 Secret via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecret, SecretGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecret runs a test to see if a specific instance of Secret round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecret(subject Secret) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Secret
+ 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 Secret instances for property testing - lazily instantiated by SecretGenerator()
+var secretGenerator gopter.Gen
+
+// SecretGenerator returns a generator of Secret instances for property testing.
+func SecretGenerator() gopter.Gen {
+ if secretGenerator != nil {
+ return secretGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecret(generators)
+ secretGenerator = gen.Struct(reflect.TypeOf(Secret{}), generators)
+
+ return secretGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecret is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecret(gens map[string]gopter.Gen) {
+ gens["KeyVaultUrl"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_SecretVolumeItem_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 SecretVolumeItem via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecretVolumeItem, SecretVolumeItemGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecretVolumeItem runs a test to see if a specific instance of SecretVolumeItem round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecretVolumeItem(subject SecretVolumeItem) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual SecretVolumeItem
+ 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 SecretVolumeItem instances for property testing - lazily instantiated by SecretVolumeItemGenerator()
+var secretVolumeItemGenerator gopter.Gen
+
+// SecretVolumeItemGenerator returns a generator of SecretVolumeItem instances for property testing.
+func SecretVolumeItemGenerator() gopter.Gen {
+ if secretVolumeItemGenerator != nil {
+ return secretVolumeItemGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecretVolumeItem(generators)
+ secretVolumeItemGenerator = gen.Struct(reflect.TypeOf(SecretVolumeItem{}), generators)
+
+ return secretVolumeItemGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecretVolumeItem is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecretVolumeItem(gens map[string]gopter.Gen) {
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_SecretVolumeItem_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 SecretVolumeItem_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecretVolumeItem_STATUS, SecretVolumeItem_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecretVolumeItem_STATUS runs a test to see if a specific instance of SecretVolumeItem_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecretVolumeItem_STATUS(subject SecretVolumeItem_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual SecretVolumeItem_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 SecretVolumeItem_STATUS instances for property testing - lazily instantiated by
+// SecretVolumeItem_STATUSGenerator()
+var secretVolumeItem_STATUSGenerator gopter.Gen
+
+// SecretVolumeItem_STATUSGenerator returns a generator of SecretVolumeItem_STATUS instances for property testing.
+func SecretVolumeItem_STATUSGenerator() gopter.Gen {
+ if secretVolumeItem_STATUSGenerator != nil {
+ return secretVolumeItem_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS(generators)
+ secretVolumeItem_STATUSGenerator = gen.Struct(reflect.TypeOf(SecretVolumeItem_STATUS{}), generators)
+
+ return secretVolumeItem_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecretVolumeItem_STATUS(gens map[string]gopter.Gen) {
+ gens["Path"] = gen.PtrOf(gen.AlphaString())
+ gens["SecretRef"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Secret_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 Secret_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForSecret_STATUS, Secret_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForSecret_STATUS runs a test to see if a specific instance of Secret_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForSecret_STATUS(subject Secret_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Secret_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 Secret_STATUS instances for property testing - lazily instantiated by Secret_STATUSGenerator()
+var secret_STATUSGenerator gopter.Gen
+
+// Secret_STATUSGenerator returns a generator of Secret_STATUS instances for property testing.
+func Secret_STATUSGenerator() gopter.Gen {
+ if secret_STATUSGenerator != nil {
+ return secret_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForSecret_STATUS(generators)
+ secret_STATUSGenerator = gen.Struct(reflect.TypeOf(Secret_STATUS{}), generators)
+
+ return secret_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForSecret_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForSecret_STATUS(gens map[string]gopter.Gen) {
+ gens["Identity"] = gen.PtrOf(gen.AlphaString())
+ gens["KeyVaultUrl"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Service_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 Service via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForService, ServiceGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForService runs a test to see if a specific instance of Service round trips to JSON and back losslessly
+func RunJSONSerializationTestForService(subject Service) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Service
+ err = json.Unmarshal(bin, &actual)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Check for outcome
+ match := cmp.Equal(subject, actual, cmpopts.EquateEmpty())
+ if !match {
+ actualFmt := pretty.Sprint(actual)
+ subjectFmt := pretty.Sprint(subject)
+ result := diff.Diff(subjectFmt, actualFmt)
+ return result
+ }
+
+ return ""
+}
+
+// Generator of Service instances for property testing - lazily instantiated by ServiceGenerator()
+var serviceGenerator gopter.Gen
+
+// ServiceGenerator returns a generator of Service instances for property testing.
+func ServiceGenerator() gopter.Gen {
+ if serviceGenerator != nil {
+ return serviceGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForService(generators)
+ serviceGenerator = gen.Struct(reflect.TypeOf(Service{}), generators)
+
+ return serviceGenerator
+}
+
+// AddIndependentPropertyGeneratorsForService is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForService(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ServiceBind_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 ServiceBind via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForServiceBind, ServiceBindGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForServiceBind runs a test to see if a specific instance of ServiceBind round trips to JSON and back losslessly
+func RunJSONSerializationTestForServiceBind(subject ServiceBind) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ServiceBind
+ 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 ServiceBind instances for property testing - lazily instantiated by ServiceBindGenerator()
+var serviceBindGenerator gopter.Gen
+
+// ServiceBindGenerator returns a generator of ServiceBind instances for property testing.
+func ServiceBindGenerator() gopter.Gen {
+ if serviceBindGenerator != nil {
+ return serviceBindGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForServiceBind(generators)
+ serviceBindGenerator = gen.Struct(reflect.TypeOf(ServiceBind{}), generators)
+
+ return serviceBindGenerator
+}
+
+// AddIndependentPropertyGeneratorsForServiceBind is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForServiceBind(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ServiceBind_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 ServiceBind_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForServiceBind_STATUS, ServiceBind_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForServiceBind_STATUS runs a test to see if a specific instance of ServiceBind_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForServiceBind_STATUS(subject ServiceBind_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ServiceBind_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 ServiceBind_STATUS instances for property testing - lazily instantiated by ServiceBind_STATUSGenerator()
+var serviceBind_STATUSGenerator gopter.Gen
+
+// ServiceBind_STATUSGenerator returns a generator of ServiceBind_STATUS instances for property testing.
+func ServiceBind_STATUSGenerator() gopter.Gen {
+ if serviceBind_STATUSGenerator != nil {
+ return serviceBind_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForServiceBind_STATUS(generators)
+ serviceBind_STATUSGenerator = gen.Struct(reflect.TypeOf(ServiceBind_STATUS{}), generators)
+
+ return serviceBind_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForServiceBind_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForServiceBind_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["ServiceId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Service_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) {
+ t.Parallel()
+ parameters := gopter.DefaultTestParameters()
+ parameters.MinSuccessfulTests = 80
+ parameters.MaxSize = 3
+ properties := gopter.NewProperties(parameters)
+ properties.Property(
+ "Round trip of Service_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForService_STATUS, Service_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForService_STATUS runs a test to see if a specific instance of Service_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForService_STATUS(subject Service_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Service_STATUS
+ err = json.Unmarshal(bin, &actual)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Check for outcome
+ match := cmp.Equal(subject, actual, cmpopts.EquateEmpty())
+ if !match {
+ actualFmt := pretty.Sprint(actual)
+ subjectFmt := pretty.Sprint(subject)
+ result := diff.Diff(subjectFmt, actualFmt)
+ return result
+ }
+
+ return ""
+}
+
+// Generator of Service_STATUS instances for property testing - lazily instantiated by Service_STATUSGenerator()
+var service_STATUSGenerator gopter.Gen
+
+// Service_STATUSGenerator returns a generator of Service_STATUS instances for property testing.
+func Service_STATUSGenerator() gopter.Gen {
+ if service_STATUSGenerator != nil {
+ return service_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForService_STATUS(generators)
+ service_STATUSGenerator = gen.Struct(reflect.TypeOf(Service_STATUS{}), generators)
+
+ return service_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForService_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForService_STATUS(gens map[string]gopter.Gen) {
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_TcpScaleRule_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 TcpScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTcpScaleRule, TcpScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTcpScaleRule runs a test to see if a specific instance of TcpScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForTcpScaleRule(subject TcpScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TcpScaleRule
+ 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 TcpScaleRule instances for property testing - lazily instantiated by TcpScaleRuleGenerator()
+var tcpScaleRuleGenerator gopter.Gen
+
+// TcpScaleRuleGenerator returns a generator of TcpScaleRule instances for property testing.
+// We first initialize tcpScaleRuleGenerator 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 TcpScaleRuleGenerator() gopter.Gen {
+ if tcpScaleRuleGenerator != nil {
+ return tcpScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule(generators)
+ tcpScaleRuleGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule(generators)
+ AddRelatedPropertyGeneratorsForTcpScaleRule(generators)
+ tcpScaleRuleGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule{}), generators)
+
+ return tcpScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTcpScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTcpScaleRule(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForTcpScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTcpScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_TcpScaleRule_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 TcpScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTcpScaleRule_STATUS, TcpScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTcpScaleRule_STATUS runs a test to see if a specific instance of TcpScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTcpScaleRule_STATUS(subject TcpScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TcpScaleRule_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 TcpScaleRule_STATUS instances for property testing - lazily instantiated by
+// TcpScaleRule_STATUSGenerator()
+var tcpScaleRule_STATUSGenerator gopter.Gen
+
+// TcpScaleRule_STATUSGenerator returns a generator of TcpScaleRule_STATUS instances for property testing.
+// We first initialize tcpScaleRule_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 TcpScaleRule_STATUSGenerator() gopter.Gen {
+ if tcpScaleRule_STATUSGenerator != nil {
+ return tcpScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ tcpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS(generators)
+ tcpScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(TcpScaleRule_STATUS{}), generators)
+
+ return tcpScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTcpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Metadata"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTcpScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_Template_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 Template via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTemplate, TemplateGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTemplate runs a test to see if a specific instance of Template round trips to JSON and back losslessly
+func RunJSONSerializationTestForTemplate(subject Template) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Template
+ 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 Template instances for property testing - lazily instantiated by TemplateGenerator()
+var templateGenerator gopter.Gen
+
+// TemplateGenerator returns a generator of Template instances for property testing.
+// We first initialize templateGenerator 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 TemplateGenerator() gopter.Gen {
+ if templateGenerator != nil {
+ return templateGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate(generators)
+ templateGenerator = gen.Struct(reflect.TypeOf(Template{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate(generators)
+ AddRelatedPropertyGeneratorsForTemplate(generators)
+ templateGenerator = gen.Struct(reflect.TypeOf(Template{}), generators)
+
+ return templateGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTemplate is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTemplate(gens map[string]gopter.Gen) {
+ gens["RevisionSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForTemplate is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTemplate(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(ContainerGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainerGenerator())
+ gens["Scale"] = gen.PtrOf(ScaleGenerator())
+ gens["ServiceBinds"] = gen.SliceOf(ServiceBindGenerator())
+ gens["Volumes"] = gen.SliceOf(VolumeGenerator())
+}
+
+func Test_Template_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 Template_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTemplate_STATUS, Template_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTemplate_STATUS runs a test to see if a specific instance of Template_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTemplate_STATUS(subject Template_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Template_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 Template_STATUS instances for property testing - lazily instantiated by Template_STATUSGenerator()
+var template_STATUSGenerator gopter.Gen
+
+// Template_STATUSGenerator returns a generator of Template_STATUS instances for property testing.
+// We first initialize template_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 Template_STATUSGenerator() gopter.Gen {
+ if template_STATUSGenerator != nil {
+ return template_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate_STATUS(generators)
+ template_STATUSGenerator = gen.Struct(reflect.TypeOf(Template_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTemplate_STATUS(generators)
+ AddRelatedPropertyGeneratorsForTemplate_STATUS(generators)
+ template_STATUSGenerator = gen.Struct(reflect.TypeOf(Template_STATUS{}), generators)
+
+ return template_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTemplate_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["RevisionSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["TerminationGracePeriodSeconds"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForTemplate_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(Container_STATUSGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainer_STATUSGenerator())
+ gens["Scale"] = gen.PtrOf(Scale_STATUSGenerator())
+ gens["ServiceBinds"] = gen.SliceOf(ServiceBind_STATUSGenerator())
+ gens["Volumes"] = gen.SliceOf(Volume_STATUSGenerator())
+}
+
+func Test_TrafficWeight_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 TrafficWeight via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTrafficWeight, TrafficWeightGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTrafficWeight runs a test to see if a specific instance of TrafficWeight round trips to JSON and back losslessly
+func RunJSONSerializationTestForTrafficWeight(subject TrafficWeight) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TrafficWeight
+ 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 TrafficWeight instances for property testing - lazily instantiated by TrafficWeightGenerator()
+var trafficWeightGenerator gopter.Gen
+
+// TrafficWeightGenerator returns a generator of TrafficWeight instances for property testing.
+func TrafficWeightGenerator() gopter.Gen {
+ if trafficWeightGenerator != nil {
+ return trafficWeightGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTrafficWeight(generators)
+ trafficWeightGenerator = gen.Struct(reflect.TypeOf(TrafficWeight{}), generators)
+
+ return trafficWeightGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTrafficWeight is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTrafficWeight(gens map[string]gopter.Gen) {
+ gens["Label"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevision"] = gen.PtrOf(gen.Bool())
+ gens["RevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["Weight"] = gen.PtrOf(gen.Int())
+}
+
+func Test_TrafficWeight_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 TrafficWeight_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForTrafficWeight_STATUS, TrafficWeight_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForTrafficWeight_STATUS runs a test to see if a specific instance of TrafficWeight_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForTrafficWeight_STATUS(subject TrafficWeight_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual TrafficWeight_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 TrafficWeight_STATUS instances for property testing - lazily instantiated by
+// TrafficWeight_STATUSGenerator()
+var trafficWeight_STATUSGenerator gopter.Gen
+
+// TrafficWeight_STATUSGenerator returns a generator of TrafficWeight_STATUS instances for property testing.
+func TrafficWeight_STATUSGenerator() gopter.Gen {
+ if trafficWeight_STATUSGenerator != nil {
+ return trafficWeight_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForTrafficWeight_STATUS(generators)
+ trafficWeight_STATUSGenerator = gen.Struct(reflect.TypeOf(TrafficWeight_STATUS{}), generators)
+
+ return trafficWeight_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForTrafficWeight_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForTrafficWeight_STATUS(gens map[string]gopter.Gen) {
+ gens["Label"] = gen.PtrOf(gen.AlphaString())
+ gens["LatestRevision"] = gen.PtrOf(gen.Bool())
+ gens["RevisionName"] = gen.PtrOf(gen.AlphaString())
+ gens["Weight"] = gen.PtrOf(gen.Int())
+}
+
+func Test_UserAssignedIdentityDetails_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 UserAssignedIdentityDetails via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForUserAssignedIdentityDetails, UserAssignedIdentityDetailsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForUserAssignedIdentityDetails runs a test to see if a specific instance of UserAssignedIdentityDetails round trips to JSON and back losslessly
+func RunJSONSerializationTestForUserAssignedIdentityDetails(subject UserAssignedIdentityDetails) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual UserAssignedIdentityDetails
+ 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 UserAssignedIdentityDetails instances for property testing - lazily instantiated by
+// UserAssignedIdentityDetailsGenerator()
+var userAssignedIdentityDetailsGenerator gopter.Gen
+
+// UserAssignedIdentityDetailsGenerator returns a generator of UserAssignedIdentityDetails instances for property testing.
+func UserAssignedIdentityDetailsGenerator() gopter.Gen {
+ if userAssignedIdentityDetailsGenerator != nil {
+ return userAssignedIdentityDetailsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ userAssignedIdentityDetailsGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentityDetails{}), generators)
+
+ return userAssignedIdentityDetailsGenerator
+}
+
+func Test_UserAssignedIdentity_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 UserAssignedIdentity_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForUserAssignedIdentity_STATUS, UserAssignedIdentity_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForUserAssignedIdentity_STATUS runs a test to see if a specific instance of UserAssignedIdentity_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForUserAssignedIdentity_STATUS(subject UserAssignedIdentity_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual UserAssignedIdentity_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 UserAssignedIdentity_STATUS instances for property testing - lazily instantiated by
+// UserAssignedIdentity_STATUSGenerator()
+var userAssignedIdentity_STATUSGenerator gopter.Gen
+
+// UserAssignedIdentity_STATUSGenerator returns a generator of UserAssignedIdentity_STATUS instances for property testing.
+func UserAssignedIdentity_STATUSGenerator() gopter.Gen {
+ if userAssignedIdentity_STATUSGenerator != nil {
+ return userAssignedIdentity_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS(generators)
+ userAssignedIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity_STATUS{}), generators)
+
+ return userAssignedIdentity_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS(gens map[string]gopter.Gen) {
+ gens["ClientId"] = gen.PtrOf(gen.AlphaString())
+ gens["PrincipalId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Volume_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 Volume via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolume, VolumeGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolume runs a test to see if a specific instance of Volume round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolume(subject Volume) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Volume
+ 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 Volume instances for property testing - lazily instantiated by VolumeGenerator()
+var volumeGenerator gopter.Gen
+
+// VolumeGenerator returns a generator of Volume instances for property testing.
+// We first initialize volumeGenerator 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 VolumeGenerator() gopter.Gen {
+ if volumeGenerator != nil {
+ return volumeGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume(generators)
+ volumeGenerator = gen.Struct(reflect.TypeOf(Volume{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume(generators)
+ AddRelatedPropertyGeneratorsForVolume(generators)
+ volumeGenerator = gen.Struct(reflect.TypeOf(Volume{}), generators)
+
+ return volumeGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolume is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolume(gens map[string]gopter.Gen) {
+ gens["MountOptions"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageName"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageType"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForVolume is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForVolume(gens map[string]gopter.Gen) {
+ gens["Secrets"] = gen.SliceOf(SecretVolumeItemGenerator())
+}
+
+func Test_VolumeMount_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 VolumeMount via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolumeMount, VolumeMountGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolumeMount runs a test to see if a specific instance of VolumeMount round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolumeMount(subject VolumeMount) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VolumeMount
+ 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 VolumeMount instances for property testing - lazily instantiated by VolumeMountGenerator()
+var volumeMountGenerator gopter.Gen
+
+// VolumeMountGenerator returns a generator of VolumeMount instances for property testing.
+func VolumeMountGenerator() gopter.Gen {
+ if volumeMountGenerator != nil {
+ return volumeMountGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolumeMount(generators)
+ volumeMountGenerator = gen.Struct(reflect.TypeOf(VolumeMount{}), generators)
+
+ return volumeMountGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolumeMount is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolumeMount(gens map[string]gopter.Gen) {
+ gens["MountPath"] = gen.PtrOf(gen.AlphaString())
+ gens["SubPath"] = gen.PtrOf(gen.AlphaString())
+ gens["VolumeName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_VolumeMount_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 VolumeMount_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolumeMount_STATUS, VolumeMount_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolumeMount_STATUS runs a test to see if a specific instance of VolumeMount_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolumeMount_STATUS(subject VolumeMount_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VolumeMount_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 VolumeMount_STATUS instances for property testing - lazily instantiated by VolumeMount_STATUSGenerator()
+var volumeMount_STATUSGenerator gopter.Gen
+
+// VolumeMount_STATUSGenerator returns a generator of VolumeMount_STATUS instances for property testing.
+func VolumeMount_STATUSGenerator() gopter.Gen {
+ if volumeMount_STATUSGenerator != nil {
+ return volumeMount_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolumeMount_STATUS(generators)
+ volumeMount_STATUSGenerator = gen.Struct(reflect.TypeOf(VolumeMount_STATUS{}), generators)
+
+ return volumeMount_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolumeMount_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolumeMount_STATUS(gens map[string]gopter.Gen) {
+ gens["MountPath"] = gen.PtrOf(gen.AlphaString())
+ gens["SubPath"] = gen.PtrOf(gen.AlphaString())
+ gens["VolumeName"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_Volume_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 Volume_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVolume_STATUS, Volume_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVolume_STATUS runs a test to see if a specific instance of Volume_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVolume_STATUS(subject Volume_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Volume_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 Volume_STATUS instances for property testing - lazily instantiated by Volume_STATUSGenerator()
+var volume_STATUSGenerator gopter.Gen
+
+// Volume_STATUSGenerator returns a generator of Volume_STATUS instances for property testing.
+// We first initialize volume_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 Volume_STATUSGenerator() gopter.Gen {
+ if volume_STATUSGenerator != nil {
+ return volume_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume_STATUS(generators)
+ volume_STATUSGenerator = gen.Struct(reflect.TypeOf(Volume_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVolume_STATUS(generators)
+ AddRelatedPropertyGeneratorsForVolume_STATUS(generators)
+ volume_STATUSGenerator = gen.Struct(reflect.TypeOf(Volume_STATUS{}), generators)
+
+ return volume_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVolume_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVolume_STATUS(gens map[string]gopter.Gen) {
+ gens["MountOptions"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageName"] = gen.PtrOf(gen.AlphaString())
+ gens["StorageType"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForVolume_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForVolume_STATUS(gens map[string]gopter.Gen) {
+ gens["Secrets"] = gen.SliceOf(SecretVolumeItem_STATUSGenerator())
+}
diff --git a/v2/api/app/v1api20240301/storage/groupversion_info_gen.go b/v2/api/app/v1api20240301/storage/groupversion_info_gen.go
new file mode 100644
index 00000000000..c19f96f8eef
--- /dev/null
+++ b/v2/api/app/v1api20240301/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 app storage API group
+// +kubebuilder:object:generate=true
+// All object properties are optional by default, this will be overridden when needed:
+// +kubebuilder:validation:Optional
+// +groupName=app.azure.com
+// +versionName=v1api20240301storage
+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: "app.azure.com", Version: "v1api20240301storage"}
+
+ // 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/app/v1api20240301/storage/job_types_gen.go b/v2/api/app/v1api20240301/storage/job_types_gen.go
new file mode 100644
index 00000000000..234adf06a01
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/job_types_gen.go
@@ -0,0 +1,397 @@
+// 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/Azure/azure-service-operator/v2/pkg/genruntime/configmaps"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/secrets"
+ "github.com/rotisserie/eris"
+ "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+ "k8s.io/apimachinery/pkg/runtime/schema"
+)
+
+// +kubebuilder:rbac:groups=app.azure.com,resources=jobs,verbs=get;list;watch;create;update;patch;delete
+// +kubebuilder:rbac:groups=app.azure.com,resources={jobs/status,jobs/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 v1api20240301.Job
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/Jobs.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}
+type Job struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty"`
+ Spec Job_Spec `json:"spec,omitempty"`
+ Status Job_STATUS `json:"status,omitempty"`
+}
+
+var _ conditions.Conditioner = &Job{}
+
+// GetConditions returns the conditions of the resource
+func (job *Job) GetConditions() conditions.Conditions {
+ return job.Status.Conditions
+}
+
+// SetConditions sets the conditions on the resource status
+func (job *Job) SetConditions(conditions conditions.Conditions) { job.Status.Conditions = conditions }
+
+var _ configmaps.Exporter = &Job{}
+
+// ConfigMapDestinationExpressions returns the Spec.OperatorSpec.ConfigMapExpressions property
+func (job *Job) ConfigMapDestinationExpressions() []*core.DestinationExpression {
+ if job.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return job.Spec.OperatorSpec.ConfigMapExpressions
+}
+
+var _ secrets.Exporter = &Job{}
+
+// SecretDestinationExpressions returns the Spec.OperatorSpec.SecretExpressions property
+func (job *Job) SecretDestinationExpressions() []*core.DestinationExpression {
+ if job.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return job.Spec.OperatorSpec.SecretExpressions
+}
+
+var _ genruntime.KubernetesResource = &Job{}
+
+// AzureName returns the Azure name of the resource
+func (job *Job) AzureName() string {
+ return job.Spec.AzureName
+}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (job Job) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetResourceScope returns the scope of the resource
+func (job *Job) GetResourceScope() genruntime.ResourceScope {
+ return genruntime.ResourceScopeResourceGroup
+}
+
+// GetSpec returns the specification of this resource
+func (job *Job) GetSpec() genruntime.ConvertibleSpec {
+ return &job.Spec
+}
+
+// GetStatus returns the status of this resource
+func (job *Job) GetStatus() genruntime.ConvertibleStatus {
+ return &job.Status
+}
+
+// GetSupportedOperations returns the operations supported by the resource
+func (job *Job) GetSupportedOperations() []genruntime.ResourceOperation {
+ return []genruntime.ResourceOperation{
+ genruntime.ResourceOperationDelete,
+ genruntime.ResourceOperationGet,
+ genruntime.ResourceOperationPut,
+ }
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/jobs"
+func (job *Job) GetType() string {
+ return "Microsoft.App/jobs"
+}
+
+// NewEmptyStatus returns a new empty (blank) status
+func (job *Job) NewEmptyStatus() genruntime.ConvertibleStatus {
+ return &Job_STATUS{}
+}
+
+// Owner returns the ResourceReference of the owner
+func (job *Job) Owner() *genruntime.ResourceReference {
+ if job.Spec.Owner == nil {
+ return nil
+ }
+
+ group, kind := genruntime.LookupOwnerGroupKind(job.Spec)
+ return job.Spec.Owner.AsResourceReference(group, kind)
+}
+
+// SetStatus sets the status of this resource
+func (job *Job) SetStatus(status genruntime.ConvertibleStatus) error {
+ // If we have exactly the right type of status, assign it
+ if st, ok := status.(*Job_STATUS); ok {
+ job.Status = *st
+ return nil
+ }
+
+ // Convert status to required version
+ var st Job_STATUS
+ err := status.ConvertStatusTo(&st)
+ if err != nil {
+ return eris.Wrap(err, "failed to convert status")
+ }
+
+ job.Status = st
+ return nil
+}
+
+// Hub marks that this Job is the hub type for conversion
+func (job *Job) Hub() {}
+
+// OriginalGVK returns a GroupValueKind for the original API version used to create the resource
+func (job *Job) OriginalGVK() *schema.GroupVersionKind {
+ return &schema.GroupVersionKind{
+ Group: GroupVersion.Group,
+ Version: job.Spec.OriginalVersion,
+ Kind: "Job",
+ }
+}
+
+// +kubebuilder:object:root=true
+// Storage version of v1api20240301.Job
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/Jobs.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/jobs/{jobName}
+type JobList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata,omitempty"`
+ Items []Job `json:"items"`
+}
+
+// Storage version of v1api20240301.Job_Spec
+type Job_Spec struct {
+ // 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"`
+ Configuration *JobConfiguration `json:"configuration,omitempty"`
+
+ // EnvironmentReference: Resource ID of environment.
+ EnvironmentReference *genruntime.ResourceReference `armReference:"EnvironmentId" json:"environmentReference,omitempty"`
+ Identity *ManagedServiceIdentity `json:"identity,omitempty"`
+ Location *string `json:"location,omitempty"`
+ OperatorSpec *JobOperatorSpec `json:"operatorSpec,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"`
+ Tags map[string]string `json:"tags,omitempty"`
+ Template *JobTemplate `json:"template,omitempty"`
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+var _ genruntime.ConvertibleSpec = &Job_Spec{}
+
+// ConvertSpecFrom populates our Job_Spec from the provided source
+func (job *Job_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error {
+ if source == job {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec")
+ }
+
+ return source.ConvertSpecTo(job)
+}
+
+// ConvertSpecTo populates the provided destination from our Job_Spec
+func (job *Job_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error {
+ if destination == job {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec")
+ }
+
+ return destination.ConvertSpecFrom(job)
+}
+
+// Storage version of v1api20240301.Job_STATUS
+// Container App Job
+type Job_STATUS struct {
+ Conditions []conditions.Condition `json:"conditions,omitempty"`
+ Configuration *JobConfiguration_STATUS `json:"configuration,omitempty"`
+ EnvironmentId *string `json:"environmentId,omitempty"`
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+ Id *string `json:"id,omitempty"`
+ Identity *ManagedServiceIdentity_STATUS `json:"identity,omitempty"`
+ Location *string `json:"location,omitempty"`
+ Name *string `json:"name,omitempty"`
+ OutboundIpAddresses []string `json:"outboundIpAddresses,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ProvisioningState *string `json:"provisioningState,omitempty"`
+ SystemData *SystemData_STATUS `json:"systemData,omitempty"`
+ Tags map[string]string `json:"tags,omitempty"`
+ Template *JobTemplate_STATUS `json:"template,omitempty"`
+ Type *string `json:"type,omitempty"`
+ WorkloadProfileName *string `json:"workloadProfileName,omitempty"`
+}
+
+var _ genruntime.ConvertibleStatus = &Job_STATUS{}
+
+// ConvertStatusFrom populates our Job_STATUS from the provided source
+func (job *Job_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error {
+ if source == job {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus")
+ }
+
+ return source.ConvertStatusTo(job)
+}
+
+// ConvertStatusTo populates the provided destination from our Job_STATUS
+func (job *Job_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error {
+ if destination == job {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus")
+ }
+
+ return destination.ConvertStatusFrom(job)
+}
+
+// Storage version of v1api20240301.JobConfiguration
+// Non versioned Container Apps Job configuration properties
+type JobConfiguration struct {
+ EventTriggerConfig *JobConfiguration_EventTriggerConfig `json:"eventTriggerConfig,omitempty"`
+ ManualTriggerConfig *JobConfiguration_ManualTriggerConfig `json:"manualTriggerConfig,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registries []RegistryCredentials `json:"registries,omitempty"`
+ ReplicaRetryLimit *int `json:"replicaRetryLimit,omitempty"`
+ ReplicaTimeout *int `json:"replicaTimeout,omitempty"`
+ ScheduleTriggerConfig *JobConfiguration_ScheduleTriggerConfig `json:"scheduleTriggerConfig,omitempty"`
+ Secrets []Secret `json:"secrets,omitempty"`
+ TriggerType *string `json:"triggerType,omitempty"`
+}
+
+// Storage version of v1api20240301.JobConfiguration_STATUS
+// Non versioned Container Apps Job configuration properties
+type JobConfiguration_STATUS struct {
+ EventTriggerConfig *JobConfiguration_EventTriggerConfig_STATUS `json:"eventTriggerConfig,omitempty"`
+ ManualTriggerConfig *JobConfiguration_ManualTriggerConfig_STATUS `json:"manualTriggerConfig,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Registries []RegistryCredentials_STATUS `json:"registries,omitempty"`
+ ReplicaRetryLimit *int `json:"replicaRetryLimit,omitempty"`
+ ReplicaTimeout *int `json:"replicaTimeout,omitempty"`
+ ScheduleTriggerConfig *JobConfiguration_ScheduleTriggerConfig_STATUS `json:"scheduleTriggerConfig,omitempty"`
+ Secrets []Secret_STATUS `json:"secrets,omitempty"`
+ TriggerType *string `json:"triggerType,omitempty"`
+}
+
+// Storage version of v1api20240301.JobOperatorSpec
+// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure
+type JobOperatorSpec struct {
+ ConfigMapExpressions []*core.DestinationExpression `json:"configMapExpressions,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretExpressions []*core.DestinationExpression `json:"secretExpressions,omitempty"`
+}
+
+// Storage version of v1api20240301.JobTemplate
+// Container Apps Job versioned application definition. Defines the desired state of an immutable revision. Any changes to
+// this section Will result in a new revision being created
+type JobTemplate struct {
+ Containers []Container `json:"containers,omitempty"`
+ InitContainers []BaseContainer `json:"initContainers,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Volumes []Volume `json:"volumes,omitempty"`
+}
+
+// Storage version of v1api20240301.JobTemplate_STATUS
+// Container Apps Job versioned application definition. Defines the desired state of an immutable revision. Any changes to
+// this section Will result in a new revision being created
+type JobTemplate_STATUS struct {
+ Containers []Container_STATUS `json:"containers,omitempty"`
+ InitContainers []BaseContainer_STATUS `json:"initContainers,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Volumes []Volume_STATUS `json:"volumes,omitempty"`
+}
+
+// Storage version of v1api20240301.JobConfiguration_EventTriggerConfig
+type JobConfiguration_EventTriggerConfig struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+ Scale *JobScale `json:"scale,omitempty"`
+}
+
+// Storage version of v1api20240301.JobConfiguration_EventTriggerConfig_STATUS
+type JobConfiguration_EventTriggerConfig_STATUS struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+ Scale *JobScale_STATUS `json:"scale,omitempty"`
+}
+
+// Storage version of v1api20240301.JobConfiguration_ManualTriggerConfig
+type JobConfiguration_ManualTriggerConfig struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+// Storage version of v1api20240301.JobConfiguration_ManualTriggerConfig_STATUS
+type JobConfiguration_ManualTriggerConfig_STATUS struct {
+ Parallelism *int `json:"parallelism,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+// Storage version of v1api20240301.JobConfiguration_ScheduleTriggerConfig
+type JobConfiguration_ScheduleTriggerConfig struct {
+ CronExpression *string `json:"cronExpression,omitempty"`
+ Parallelism *int `json:"parallelism,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+// Storage version of v1api20240301.JobConfiguration_ScheduleTriggerConfig_STATUS
+type JobConfiguration_ScheduleTriggerConfig_STATUS struct {
+ CronExpression *string `json:"cronExpression,omitempty"`
+ Parallelism *int `json:"parallelism,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ReplicaCompletionCount *int `json:"replicaCompletionCount,omitempty"`
+}
+
+// Storage version of v1api20240301.JobScale
+// Scaling configurations for event driven jobs.
+type JobScale struct {
+ MaxExecutions *int `json:"maxExecutions,omitempty"`
+ MinExecutions *int `json:"minExecutions,omitempty"`
+ PollingInterval *int `json:"pollingInterval,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Rules []JobScaleRule `json:"rules,omitempty"`
+}
+
+// Storage version of v1api20240301.JobScale_STATUS
+// Scaling configurations for event driven jobs.
+type JobScale_STATUS struct {
+ MaxExecutions *int `json:"maxExecutions,omitempty"`
+ MinExecutions *int `json:"minExecutions,omitempty"`
+ PollingInterval *int `json:"pollingInterval,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Rules []JobScaleRule_STATUS `json:"rules,omitempty"`
+}
+
+// Storage version of v1api20240301.JobScaleRule
+// Scaling rule.
+type JobScaleRule struct {
+ Auth []ScaleRuleAuth `json:"auth,omitempty"`
+ Metadata map[string]v1.JSON `json:"metadata,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+// Storage version of v1api20240301.JobScaleRule_STATUS
+// Scaling rule.
+type JobScaleRule_STATUS struct {
+ Auth []ScaleRuleAuth_STATUS `json:"auth,omitempty"`
+ Metadata map[string]v1.JSON `json:"metadata,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Type *string `json:"type,omitempty"`
+}
+
+func init() {
+ SchemeBuilder.Register(&Job{}, &JobList{})
+}
diff --git a/v2/api/app/v1api20240301/storage/job_types_gen_test.go b/v2/api/app/v1api20240301/storage/job_types_gen_test.go
new file mode 100644
index 00000000000..19954af1b8a
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/job_types_gen_test.go
@@ -0,0 +1,1294 @@
+// 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_Job_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 Job via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob, JobGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob runs a test to see if a specific instance of Job round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob(subject Job) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job
+ 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 Job instances for property testing - lazily instantiated by JobGenerator()
+var jobGenerator gopter.Gen
+
+// JobGenerator returns a generator of Job instances for property testing.
+func JobGenerator() gopter.Gen {
+ if jobGenerator != nil {
+ return jobGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForJob(generators)
+ jobGenerator = gen.Struct(reflect.TypeOf(Job{}), generators)
+
+ return jobGenerator
+}
+
+// AddRelatedPropertyGeneratorsForJob is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob(gens map[string]gopter.Gen) {
+ gens["Spec"] = Job_SpecGenerator()
+ gens["Status"] = Job_STATUSGenerator()
+}
+
+func Test_JobConfiguration_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 JobConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration, JobConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration runs a test to see if a specific instance of JobConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration(subject JobConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration
+ 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 JobConfiguration instances for property testing - lazily instantiated by JobConfigurationGenerator()
+var jobConfigurationGenerator gopter.Gen
+
+// JobConfigurationGenerator returns a generator of JobConfiguration instances for property testing.
+// We first initialize jobConfigurationGenerator 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 JobConfigurationGenerator() gopter.Gen {
+ if jobConfigurationGenerator != nil {
+ return jobConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration(generators)
+ jobConfigurationGenerator = gen.Struct(reflect.TypeOf(JobConfiguration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration(generators)
+ jobConfigurationGenerator = gen.Struct(reflect.TypeOf(JobConfiguration{}), generators)
+
+ return jobConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration(gens map[string]gopter.Gen) {
+ gens["ReplicaRetryLimit"] = gen.PtrOf(gen.Int())
+ gens["ReplicaTimeout"] = gen.PtrOf(gen.Int())
+ gens["TriggerType"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration(gens map[string]gopter.Gen) {
+ gens["EventTriggerConfig"] = gen.PtrOf(JobConfiguration_EventTriggerConfigGenerator())
+ gens["ManualTriggerConfig"] = gen.PtrOf(JobConfiguration_ManualTriggerConfigGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentialsGenerator())
+ gens["ScheduleTriggerConfig"] = gen.PtrOf(JobConfiguration_ScheduleTriggerConfigGenerator())
+ gens["Secrets"] = gen.SliceOf(SecretGenerator())
+}
+
+func Test_JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_EventTriggerConfig, JobConfiguration_EventTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_EventTriggerConfig runs a test to see if a specific instance of JobConfiguration_EventTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_EventTriggerConfig(subject JobConfiguration_EventTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_EventTriggerConfig
+ 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 JobConfiguration_EventTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_EventTriggerConfigGenerator()
+var jobConfiguration_EventTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_EventTriggerConfigGenerator returns a generator of JobConfiguration_EventTriggerConfig instances for property testing.
+// We first initialize jobConfiguration_EventTriggerConfigGenerator 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 JobConfiguration_EventTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_EventTriggerConfigGenerator != nil {
+ return jobConfiguration_EventTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ jobConfiguration_EventTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig(generators)
+ jobConfiguration_EventTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig{}), generators)
+
+ return jobConfiguration_EventTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Scale"] = gen.PtrOf(JobScaleGenerator())
+}
+
+func Test_JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS, JobConfiguration_EventTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_EventTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_EventTriggerConfig_STATUS(subject JobConfiguration_EventTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_EventTriggerConfig_STATUSGenerator()
+var jobConfiguration_EventTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_EventTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_EventTriggerConfig_STATUS instances for property testing.
+// We first initialize jobConfiguration_EventTriggerConfig_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 JobConfiguration_EventTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_EventTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_EventTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ jobConfiguration_EventTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(generators)
+ jobConfiguration_EventTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_EventTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_EventTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_EventTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Scale"] = gen.PtrOf(JobScale_STATUSGenerator())
+}
+
+func Test_JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig, JobConfiguration_ManualTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig runs a test to see if a specific instance of JobConfiguration_ManualTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig(subject JobConfiguration_ManualTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ManualTriggerConfig
+ 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 JobConfiguration_ManualTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_ManualTriggerConfigGenerator()
+var jobConfiguration_ManualTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_ManualTriggerConfigGenerator returns a generator of JobConfiguration_ManualTriggerConfig instances for property testing.
+func JobConfiguration_ManualTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_ManualTriggerConfigGenerator != nil {
+ return jobConfiguration_ManualTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig(generators)
+ jobConfiguration_ManualTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ManualTriggerConfig{}), generators)
+
+ return jobConfiguration_ManualTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS, JobConfiguration_ManualTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_ManualTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ManualTriggerConfig_STATUS(subject JobConfiguration_ManualTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ManualTriggerConfig_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 JobConfiguration_ManualTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_ManualTriggerConfig_STATUSGenerator()
+var jobConfiguration_ManualTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_ManualTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_ManualTriggerConfig_STATUS instances for property testing.
+func JobConfiguration_ManualTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_ManualTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_ManualTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS(generators)
+ jobConfiguration_ManualTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ManualTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_ManualTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ManualTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobConfiguration_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 JobConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_STATUS, JobConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_STATUS runs a test to see if a specific instance of JobConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_STATUS(subject JobConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_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 JobConfiguration_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_STATUSGenerator()
+var jobConfiguration_STATUSGenerator gopter.Gen
+
+// JobConfiguration_STATUSGenerator returns a generator of JobConfiguration_STATUS instances for property testing.
+// We first initialize jobConfiguration_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 JobConfiguration_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_STATUSGenerator != nil {
+ return jobConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ jobConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobConfiguration_STATUS(generators)
+ jobConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_STATUS{}), generators)
+
+ return jobConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["ReplicaRetryLimit"] = gen.PtrOf(gen.Int())
+ gens["ReplicaTimeout"] = gen.PtrOf(gen.Int())
+ gens["TriggerType"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJobConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["EventTriggerConfig"] = gen.PtrOf(JobConfiguration_EventTriggerConfig_STATUSGenerator())
+ gens["ManualTriggerConfig"] = gen.PtrOf(JobConfiguration_ManualTriggerConfig_STATUSGenerator())
+ gens["Registries"] = gen.SliceOf(RegistryCredentials_STATUSGenerator())
+ gens["ScheduleTriggerConfig"] = gen.PtrOf(JobConfiguration_ScheduleTriggerConfig_STATUSGenerator())
+ gens["Secrets"] = gen.SliceOf(Secret_STATUSGenerator())
+}
+
+func Test_JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig, JobConfiguration_ScheduleTriggerConfigGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig runs a test to see if a specific instance of JobConfiguration_ScheduleTriggerConfig round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig(subject JobConfiguration_ScheduleTriggerConfig) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ScheduleTriggerConfig
+ 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 JobConfiguration_ScheduleTriggerConfig instances for property testing - lazily instantiated by
+// JobConfiguration_ScheduleTriggerConfigGenerator()
+var jobConfiguration_ScheduleTriggerConfigGenerator gopter.Gen
+
+// JobConfiguration_ScheduleTriggerConfigGenerator returns a generator of JobConfiguration_ScheduleTriggerConfig instances for property testing.
+func JobConfiguration_ScheduleTriggerConfigGenerator() gopter.Gen {
+ if jobConfiguration_ScheduleTriggerConfigGenerator != nil {
+ return jobConfiguration_ScheduleTriggerConfigGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig(generators)
+ jobConfiguration_ScheduleTriggerConfigGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ScheduleTriggerConfig{}), generators)
+
+ return jobConfiguration_ScheduleTriggerConfigGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig(gens map[string]gopter.Gen) {
+ gens["CronExpression"] = gen.PtrOf(gen.AlphaString())
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS, JobConfiguration_ScheduleTriggerConfig_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS runs a test to see if a specific instance of JobConfiguration_ScheduleTriggerConfig_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobConfiguration_ScheduleTriggerConfig_STATUS(subject JobConfiguration_ScheduleTriggerConfig_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobConfiguration_ScheduleTriggerConfig_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 JobConfiguration_ScheduleTriggerConfig_STATUS instances for property testing - lazily instantiated by
+// JobConfiguration_ScheduleTriggerConfig_STATUSGenerator()
+var jobConfiguration_ScheduleTriggerConfig_STATUSGenerator gopter.Gen
+
+// JobConfiguration_ScheduleTriggerConfig_STATUSGenerator returns a generator of JobConfiguration_ScheduleTriggerConfig_STATUS instances for property testing.
+func JobConfiguration_ScheduleTriggerConfig_STATUSGenerator() gopter.Gen {
+ if jobConfiguration_ScheduleTriggerConfig_STATUSGenerator != nil {
+ return jobConfiguration_ScheduleTriggerConfig_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS(generators)
+ jobConfiguration_ScheduleTriggerConfig_STATUSGenerator = gen.Struct(reflect.TypeOf(JobConfiguration_ScheduleTriggerConfig_STATUS{}), generators)
+
+ return jobConfiguration_ScheduleTriggerConfig_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobConfiguration_ScheduleTriggerConfig_STATUS(gens map[string]gopter.Gen) {
+ gens["CronExpression"] = gen.PtrOf(gen.AlphaString())
+ gens["Parallelism"] = gen.PtrOf(gen.Int())
+ gens["ReplicaCompletionCount"] = gen.PtrOf(gen.Int())
+}
+
+func Test_JobOperatorSpec_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 JobOperatorSpec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobOperatorSpec, JobOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobOperatorSpec runs a test to see if a specific instance of JobOperatorSpec round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobOperatorSpec(subject JobOperatorSpec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobOperatorSpec
+ 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 JobOperatorSpec instances for property testing - lazily instantiated by JobOperatorSpecGenerator()
+var jobOperatorSpecGenerator gopter.Gen
+
+// JobOperatorSpecGenerator returns a generator of JobOperatorSpec instances for property testing.
+func JobOperatorSpecGenerator() gopter.Gen {
+ if jobOperatorSpecGenerator != nil {
+ return jobOperatorSpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ jobOperatorSpecGenerator = gen.Struct(reflect.TypeOf(JobOperatorSpec{}), generators)
+
+ return jobOperatorSpecGenerator
+}
+
+func Test_JobScale_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 JobScale via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScale, JobScaleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScale runs a test to see if a specific instance of JobScale round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScale(subject JobScale) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScale
+ 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 JobScale instances for property testing - lazily instantiated by JobScaleGenerator()
+var jobScaleGenerator gopter.Gen
+
+// JobScaleGenerator returns a generator of JobScale instances for property testing.
+// We first initialize jobScaleGenerator 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 JobScaleGenerator() gopter.Gen {
+ if jobScaleGenerator != nil {
+ return jobScaleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale(generators)
+ jobScaleGenerator = gen.Struct(reflect.TypeOf(JobScale{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale(generators)
+ AddRelatedPropertyGeneratorsForJobScale(generators)
+ jobScaleGenerator = gen.Struct(reflect.TypeOf(JobScale{}), generators)
+
+ return jobScaleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScale is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScale(gens map[string]gopter.Gen) {
+ gens["MaxExecutions"] = gen.PtrOf(gen.Int())
+ gens["MinExecutions"] = gen.PtrOf(gen.Int())
+ gens["PollingInterval"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobScale is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScale(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(JobScaleRuleGenerator())
+}
+
+func Test_JobScaleRule_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 JobScaleRule via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScaleRule, JobScaleRuleGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScaleRule runs a test to see if a specific instance of JobScaleRule round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScaleRule(subject JobScaleRule) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScaleRule
+ 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 JobScaleRule instances for property testing - lazily instantiated by JobScaleRuleGenerator()
+var jobScaleRuleGenerator gopter.Gen
+
+// JobScaleRuleGenerator returns a generator of JobScaleRule instances for property testing.
+// We first initialize jobScaleRuleGenerator 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 JobScaleRuleGenerator() gopter.Gen {
+ if jobScaleRuleGenerator != nil {
+ return jobScaleRuleGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule(generators)
+ jobScaleRuleGenerator = gen.Struct(reflect.TypeOf(JobScaleRule{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule(generators)
+ AddRelatedPropertyGeneratorsForJobScaleRule(generators)
+ jobScaleRuleGenerator = gen.Struct(reflect.TypeOf(JobScaleRule{}), generators)
+
+ return jobScaleRuleGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScaleRule is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScaleRule(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJobScaleRule is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScaleRule(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuthGenerator())
+}
+
+func Test_JobScaleRule_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 JobScaleRule_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScaleRule_STATUS, JobScaleRule_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScaleRule_STATUS runs a test to see if a specific instance of JobScaleRule_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScaleRule_STATUS(subject JobScaleRule_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScaleRule_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 JobScaleRule_STATUS instances for property testing - lazily instantiated by
+// JobScaleRule_STATUSGenerator()
+var jobScaleRule_STATUSGenerator gopter.Gen
+
+// JobScaleRule_STATUSGenerator returns a generator of JobScaleRule_STATUS instances for property testing.
+// We first initialize jobScaleRule_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 JobScaleRule_STATUSGenerator() gopter.Gen {
+ if jobScaleRule_STATUSGenerator != nil {
+ return jobScaleRule_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ jobScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScaleRule_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobScaleRule_STATUS(generators)
+ jobScaleRule_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScaleRule_STATUS{}), generators)
+
+ return jobScaleRule_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScaleRule_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJobScaleRule_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScaleRule_STATUS(gens map[string]gopter.Gen) {
+ gens["Auth"] = gen.SliceOf(ScaleRuleAuth_STATUSGenerator())
+}
+
+func Test_JobScale_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 JobScale_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobScale_STATUS, JobScale_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobScale_STATUS runs a test to see if a specific instance of JobScale_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobScale_STATUS(subject JobScale_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobScale_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 JobScale_STATUS instances for property testing - lazily instantiated by JobScale_STATUSGenerator()
+var jobScale_STATUSGenerator gopter.Gen
+
+// JobScale_STATUSGenerator returns a generator of JobScale_STATUS instances for property testing.
+// We first initialize jobScale_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 JobScale_STATUSGenerator() gopter.Gen {
+ if jobScale_STATUSGenerator != nil {
+ return jobScale_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale_STATUS(generators)
+ jobScale_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScale_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJobScale_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJobScale_STATUS(generators)
+ jobScale_STATUSGenerator = gen.Struct(reflect.TypeOf(JobScale_STATUS{}), generators)
+
+ return jobScale_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJobScale_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJobScale_STATUS(gens map[string]gopter.Gen) {
+ gens["MaxExecutions"] = gen.PtrOf(gen.Int())
+ gens["MinExecutions"] = gen.PtrOf(gen.Int())
+ gens["PollingInterval"] = gen.PtrOf(gen.Int())
+}
+
+// AddRelatedPropertyGeneratorsForJobScale_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobScale_STATUS(gens map[string]gopter.Gen) {
+ gens["Rules"] = gen.SliceOf(JobScaleRule_STATUSGenerator())
+}
+
+func Test_JobTemplate_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 JobTemplate via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobTemplate, JobTemplateGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobTemplate runs a test to see if a specific instance of JobTemplate round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobTemplate(subject JobTemplate) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobTemplate
+ 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 JobTemplate instances for property testing - lazily instantiated by JobTemplateGenerator()
+var jobTemplateGenerator gopter.Gen
+
+// JobTemplateGenerator returns a generator of JobTemplate instances for property testing.
+func JobTemplateGenerator() gopter.Gen {
+ if jobTemplateGenerator != nil {
+ return jobTemplateGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForJobTemplate(generators)
+ jobTemplateGenerator = gen.Struct(reflect.TypeOf(JobTemplate{}), generators)
+
+ return jobTemplateGenerator
+}
+
+// AddRelatedPropertyGeneratorsForJobTemplate is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobTemplate(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(ContainerGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainerGenerator())
+ gens["Volumes"] = gen.SliceOf(VolumeGenerator())
+}
+
+func Test_JobTemplate_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 JobTemplate_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJobTemplate_STATUS, JobTemplate_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJobTemplate_STATUS runs a test to see if a specific instance of JobTemplate_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJobTemplate_STATUS(subject JobTemplate_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual JobTemplate_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 JobTemplate_STATUS instances for property testing - lazily instantiated by JobTemplate_STATUSGenerator()
+var jobTemplate_STATUSGenerator gopter.Gen
+
+// JobTemplate_STATUSGenerator returns a generator of JobTemplate_STATUS instances for property testing.
+func JobTemplate_STATUSGenerator() gopter.Gen {
+ if jobTemplate_STATUSGenerator != nil {
+ return jobTemplate_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForJobTemplate_STATUS(generators)
+ jobTemplate_STATUSGenerator = gen.Struct(reflect.TypeOf(JobTemplate_STATUS{}), generators)
+
+ return jobTemplate_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForJobTemplate_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJobTemplate_STATUS(gens map[string]gopter.Gen) {
+ gens["Containers"] = gen.SliceOf(Container_STATUSGenerator())
+ gens["InitContainers"] = gen.SliceOf(BaseContainer_STATUSGenerator())
+ gens["Volumes"] = gen.SliceOf(Volume_STATUSGenerator())
+}
+
+func Test_Job_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 Job_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob_STATUS, Job_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob_STATUS runs a test to see if a specific instance of Job_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob_STATUS(subject Job_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job_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 Job_STATUS instances for property testing - lazily instantiated by Job_STATUSGenerator()
+var job_STATUSGenerator gopter.Gen
+
+// Job_STATUSGenerator returns a generator of Job_STATUS instances for property testing.
+// We first initialize job_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 Job_STATUSGenerator() gopter.Gen {
+ if job_STATUSGenerator != nil {
+ return job_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_STATUS(generators)
+ job_STATUSGenerator = gen.Struct(reflect.TypeOf(Job_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_STATUS(generators)
+ AddRelatedPropertyGeneratorsForJob_STATUS(generators)
+ job_STATUSGenerator = gen.Struct(reflect.TypeOf(Job_STATUS{}), generators)
+
+ return job_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJob_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJob_STATUS(gens map[string]gopter.Gen) {
+ gens["EnvironmentId"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["OutboundIpAddresses"] = gen.SliceOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.AlphaString())
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJob_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob_STATUS(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(JobConfiguration_STATUSGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentity_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+ gens["Template"] = gen.PtrOf(JobTemplate_STATUSGenerator())
+}
+
+func Test_Job_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 Job_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForJob_Spec, Job_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForJob_Spec runs a test to see if a specific instance of Job_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForJob_Spec(subject Job_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Job_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 Job_Spec instances for property testing - lazily instantiated by Job_SpecGenerator()
+var job_SpecGenerator gopter.Gen
+
+// Job_SpecGenerator returns a generator of Job_Spec instances for property testing.
+// We first initialize job_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 Job_SpecGenerator() gopter.Gen {
+ if job_SpecGenerator != nil {
+ return job_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Spec(generators)
+ job_SpecGenerator = gen.Struct(reflect.TypeOf(Job_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForJob_Spec(generators)
+ AddRelatedPropertyGeneratorsForJob_Spec(generators)
+ job_SpecGenerator = gen.Struct(reflect.TypeOf(Job_Spec{}), generators)
+
+ return job_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForJob_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForJob_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())
+ gens["WorkloadProfileName"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForJob_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForJob_Spec(gens map[string]gopter.Gen) {
+ gens["Configuration"] = gen.PtrOf(JobConfigurationGenerator())
+ gens["Identity"] = gen.PtrOf(ManagedServiceIdentityGenerator())
+ gens["OperatorSpec"] = gen.PtrOf(JobOperatorSpecGenerator())
+ gens["Template"] = gen.PtrOf(JobTemplateGenerator())
+}
diff --git a/v2/api/app/v1api20240301/storage/managed_environment_types_gen.go b/v2/api/app/v1api20240301/storage/managed_environment_types_gen.go
new file mode 100644
index 00000000000..45c9b851a25
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/managed_environment_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/Azure/azure-service-operator/v2/pkg/genruntime/configmaps"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/secrets"
+ "github.com/rotisserie/eris"
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+ "k8s.io/apimachinery/pkg/runtime/schema"
+)
+
+// +kubebuilder:rbac:groups=app.azure.com,resources=managedenvironments,verbs=get;list;watch;create;update;patch;delete
+// +kubebuilder:rbac:groups=app.azure.com,resources={managedenvironments/status,managedenvironments/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 v1api20240301.ManagedEnvironment
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/ManagedEnvironments.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}
+type ManagedEnvironment struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ObjectMeta `json:"metadata,omitempty"`
+ Spec ManagedEnvironment_Spec `json:"spec,omitempty"`
+ Status ManagedEnvironment_STATUS `json:"status,omitempty"`
+}
+
+var _ conditions.Conditioner = &ManagedEnvironment{}
+
+// GetConditions returns the conditions of the resource
+func (environment *ManagedEnvironment) GetConditions() conditions.Conditions {
+ return environment.Status.Conditions
+}
+
+// SetConditions sets the conditions on the resource status
+func (environment *ManagedEnvironment) SetConditions(conditions conditions.Conditions) {
+ environment.Status.Conditions = conditions
+}
+
+var _ configmaps.Exporter = &ManagedEnvironment{}
+
+// ConfigMapDestinationExpressions returns the Spec.OperatorSpec.ConfigMapExpressions property
+func (environment *ManagedEnvironment) ConfigMapDestinationExpressions() []*core.DestinationExpression {
+ if environment.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return environment.Spec.OperatorSpec.ConfigMapExpressions
+}
+
+var _ secrets.Exporter = &ManagedEnvironment{}
+
+// SecretDestinationExpressions returns the Spec.OperatorSpec.SecretExpressions property
+func (environment *ManagedEnvironment) SecretDestinationExpressions() []*core.DestinationExpression {
+ if environment.Spec.OperatorSpec == nil {
+ return nil
+ }
+ return environment.Spec.OperatorSpec.SecretExpressions
+}
+
+var _ genruntime.KubernetesResource = &ManagedEnvironment{}
+
+// AzureName returns the Azure name of the resource
+func (environment *ManagedEnvironment) AzureName() string {
+ return environment.Spec.AzureName
+}
+
+// GetAPIVersion returns the ARM API version of the resource. This is always "2024-03-01"
+func (environment ManagedEnvironment) GetAPIVersion() string {
+ return "2024-03-01"
+}
+
+// GetResourceScope returns the scope of the resource
+func (environment *ManagedEnvironment) GetResourceScope() genruntime.ResourceScope {
+ return genruntime.ResourceScopeResourceGroup
+}
+
+// GetSpec returns the specification of this resource
+func (environment *ManagedEnvironment) GetSpec() genruntime.ConvertibleSpec {
+ return &environment.Spec
+}
+
+// GetStatus returns the status of this resource
+func (environment *ManagedEnvironment) GetStatus() genruntime.ConvertibleStatus {
+ return &environment.Status
+}
+
+// GetSupportedOperations returns the operations supported by the resource
+func (environment *ManagedEnvironment) GetSupportedOperations() []genruntime.ResourceOperation {
+ return []genruntime.ResourceOperation{
+ genruntime.ResourceOperationDelete,
+ genruntime.ResourceOperationGet,
+ genruntime.ResourceOperationPut,
+ }
+}
+
+// GetType returns the ARM Type of the resource. This is always "Microsoft.App/managedEnvironments"
+func (environment *ManagedEnvironment) GetType() string {
+ return "Microsoft.App/managedEnvironments"
+}
+
+// NewEmptyStatus returns a new empty (blank) status
+func (environment *ManagedEnvironment) NewEmptyStatus() genruntime.ConvertibleStatus {
+ return &ManagedEnvironment_STATUS{}
+}
+
+// Owner returns the ResourceReference of the owner
+func (environment *ManagedEnvironment) Owner() *genruntime.ResourceReference {
+ if environment.Spec.Owner == nil {
+ return nil
+ }
+
+ group, kind := genruntime.LookupOwnerGroupKind(environment.Spec)
+ return environment.Spec.Owner.AsResourceReference(group, kind)
+}
+
+// SetStatus sets the status of this resource
+func (environment *ManagedEnvironment) SetStatus(status genruntime.ConvertibleStatus) error {
+ // If we have exactly the right type of status, assign it
+ if st, ok := status.(*ManagedEnvironment_STATUS); ok {
+ environment.Status = *st
+ return nil
+ }
+
+ // Convert status to required version
+ var st ManagedEnvironment_STATUS
+ err := status.ConvertStatusTo(&st)
+ if err != nil {
+ return eris.Wrap(err, "failed to convert status")
+ }
+
+ environment.Status = st
+ return nil
+}
+
+// Hub marks that this ManagedEnvironment is the hub type for conversion
+func (environment *ManagedEnvironment) Hub() {}
+
+// OriginalGVK returns a GroupValueKind for the original API version used to create the resource
+func (environment *ManagedEnvironment) OriginalGVK() *schema.GroupVersionKind {
+ return &schema.GroupVersionKind{
+ Group: GroupVersion.Group,
+ Version: environment.Spec.OriginalVersion,
+ Kind: "ManagedEnvironment",
+ }
+}
+
+// +kubebuilder:object:root=true
+// Storage version of v1api20240301.ManagedEnvironment
+// Generator information:
+// - Generated from: /app/resource-manager/Microsoft.App/stable/2024-03-01/ManagedEnvironments.json
+// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{environmentName}
+type ManagedEnvironmentList struct {
+ metav1.TypeMeta `json:",inline"`
+ metav1.ListMeta `json:"metadata,omitempty"`
+ Items []ManagedEnvironment `json:"items"`
+}
+
+// Storage version of v1api20240301.ManagedEnvironment_Spec
+type ManagedEnvironment_Spec struct {
+ AppLogsConfiguration *AppLogsConfiguration `json:"appLogsConfiguration,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"`
+ CustomDomainConfiguration *CustomDomainConfiguration `json:"customDomainConfiguration,omitempty"`
+ DaprAIConnectionString *genruntime.SecretReference `json:"daprAIConnectionString,omitempty"`
+ DaprAIInstrumentationKey *genruntime.SecretReference `json:"daprAIInstrumentationKey,omitempty"`
+ InfrastructureResourceGroup *string `json:"infrastructureResourceGroup,omitempty"`
+ Kind *string `json:"kind,omitempty"`
+ Location *string `json:"location,omitempty"`
+ OperatorSpec *ManagedEnvironmentOperatorSpec `json:"operatorSpec,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"`
+ PeerAuthentication *ManagedEnvironment_Properties_PeerAuthentication_Spec `json:"peerAuthentication,omitempty"`
+ PeerTrafficConfiguration *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec `json:"peerTrafficConfiguration,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Tags map[string]string `json:"tags,omitempty"`
+ VnetConfiguration *VnetConfiguration `json:"vnetConfiguration,omitempty"`
+ WorkloadProfiles []WorkloadProfile `json:"workloadProfiles,omitempty"`
+ ZoneRedundant *bool `json:"zoneRedundant,omitempty"`
+}
+
+var _ genruntime.ConvertibleSpec = &ManagedEnvironment_Spec{}
+
+// ConvertSpecFrom populates our ManagedEnvironment_Spec from the provided source
+func (environment *ManagedEnvironment_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error {
+ if source == environment {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec")
+ }
+
+ return source.ConvertSpecTo(environment)
+}
+
+// ConvertSpecTo populates the provided destination from our ManagedEnvironment_Spec
+func (environment *ManagedEnvironment_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error {
+ if destination == environment {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleSpec")
+ }
+
+ return destination.ConvertSpecFrom(environment)
+}
+
+// Storage version of v1api20240301.ManagedEnvironment_STATUS
+// An environment for hosting container apps
+type ManagedEnvironment_STATUS struct {
+ AppLogsConfiguration *AppLogsConfiguration_STATUS `json:"appLogsConfiguration,omitempty"`
+ Conditions []conditions.Condition `json:"conditions,omitempty"`
+ CustomDomainConfiguration *CustomDomainConfiguration_STATUS `json:"customDomainConfiguration,omitempty"`
+ DaprConfiguration *DaprConfiguration_STATUS `json:"daprConfiguration,omitempty"`
+ DefaultDomain *string `json:"defaultDomain,omitempty"`
+ DeploymentErrors *string `json:"deploymentErrors,omitempty"`
+ EventStreamEndpoint *string `json:"eventStreamEndpoint,omitempty"`
+ Id *string `json:"id,omitempty"`
+ InfrastructureResourceGroup *string `json:"infrastructureResourceGroup,omitempty"`
+ KedaConfiguration *KedaConfiguration_STATUS `json:"kedaConfiguration,omitempty"`
+ Kind *string `json:"kind,omitempty"`
+ Location *string `json:"location,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PeerAuthentication *ManagedEnvironment_Properties_PeerAuthentication_STATUS `json:"peerAuthentication,omitempty"`
+ PeerTrafficConfiguration *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS `json:"peerTrafficConfiguration,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ ProvisioningState *string `json:"provisioningState,omitempty"`
+ StaticIp *string `json:"staticIp,omitempty"`
+ SystemData *SystemData_STATUS `json:"systemData,omitempty"`
+ Tags map[string]string `json:"tags,omitempty"`
+ Type *string `json:"type,omitempty"`
+ VnetConfiguration *VnetConfiguration_STATUS `json:"vnetConfiguration,omitempty"`
+ WorkloadProfiles []WorkloadProfile_STATUS `json:"workloadProfiles,omitempty"`
+ ZoneRedundant *bool `json:"zoneRedundant,omitempty"`
+}
+
+var _ genruntime.ConvertibleStatus = &ManagedEnvironment_STATUS{}
+
+// ConvertStatusFrom populates our ManagedEnvironment_STATUS from the provided source
+func (environment *ManagedEnvironment_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error {
+ if source == environment {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus")
+ }
+
+ return source.ConvertStatusTo(environment)
+}
+
+// ConvertStatusTo populates the provided destination from our ManagedEnvironment_STATUS
+func (environment *ManagedEnvironment_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error {
+ if destination == environment {
+ return eris.New("attempted conversion between unrelated implementations of github.com/Azure/azure-service-operator/v2/pkg/genruntime/ConvertibleStatus")
+ }
+
+ return destination.ConvertStatusFrom(environment)
+}
+
+// Storage version of v1api20240301.AppLogsConfiguration
+// Configuration of application logs
+type AppLogsConfiguration struct {
+ Destination *string `json:"destination,omitempty"`
+ LogAnalyticsConfiguration *LogAnalyticsConfiguration `json:"logAnalyticsConfiguration,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.AppLogsConfiguration_STATUS
+// Configuration of application logs
+type AppLogsConfiguration_STATUS struct {
+ Destination *string `json:"destination,omitempty"`
+ LogAnalyticsConfiguration *LogAnalyticsConfiguration_STATUS `json:"logAnalyticsConfiguration,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.CustomDomainConfiguration
+// Configuration properties for apps environment custom domain
+type CustomDomainConfiguration struct {
+ CertificatePassword *genruntime.SecretReference `json:"certificatePassword,omitempty"`
+ CertificateValue *genruntime.SecretReference `json:"certificateValue,omitempty"`
+ DnsSuffix *string `json:"dnsSuffix,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.CustomDomainConfiguration_STATUS
+// Configuration properties for apps environment custom domain
+type CustomDomainConfiguration_STATUS struct {
+ CustomDomainVerificationId *string `json:"customDomainVerificationId,omitempty"`
+ DnsSuffix *string `json:"dnsSuffix,omitempty"`
+ ExpirationDate *string `json:"expirationDate,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SubjectName *string `json:"subjectName,omitempty"`
+ Thumbprint *string `json:"thumbprint,omitempty"`
+}
+
+// Storage version of v1api20240301.DaprConfiguration_STATUS
+// Configuration properties Dapr component
+type DaprConfiguration_STATUS struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Version *string `json:"version,omitempty"`
+}
+
+// Storage version of v1api20240301.KedaConfiguration_STATUS
+// Configuration properties Keda component
+type KedaConfiguration_STATUS struct {
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ Version *string `json:"version,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedEnvironment_Properties_PeerAuthentication_Spec
+type ManagedEnvironment_Properties_PeerAuthentication_Spec struct {
+ Mtls *Mtls `json:"mtls,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedEnvironment_Properties_PeerAuthentication_STATUS
+type ManagedEnvironment_Properties_PeerAuthentication_STATUS struct {
+ Mtls *Mtls_STATUS `json:"mtls,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec struct {
+ Encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec `json:"encryption,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS struct {
+ Encryption *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS `json:"encryption,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedEnvironmentOperatorSpec
+// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure
+type ManagedEnvironmentOperatorSpec struct {
+ ConfigMapExpressions []*core.DestinationExpression `json:"configMapExpressions,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SecretExpressions []*core.DestinationExpression `json:"secretExpressions,omitempty"`
+}
+
+// Storage version of v1api20240301.VnetConfiguration
+// Configuration properties for apps environment to join a Virtual Network
+type VnetConfiguration struct {
+ DockerBridgeCidr *string `json:"dockerBridgeCidr,omitempty"`
+
+ // InfrastructureSubnetReference: Resource ID of a subnet for infrastructure components. Must not overlap with any other
+ // provided IP ranges.
+ InfrastructureSubnetReference *genruntime.ResourceReference `armReference:"InfrastructureSubnetId" json:"infrastructureSubnetReference,omitempty"`
+ Internal *bool `json:"internal,omitempty"`
+ PlatformReservedCidr *string `json:"platformReservedCidr,omitempty"`
+ PlatformReservedDnsIP *string `json:"platformReservedDnsIP,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.VnetConfiguration_STATUS
+// Configuration properties for apps environment to join a Virtual Network
+type VnetConfiguration_STATUS struct {
+ DockerBridgeCidr *string `json:"dockerBridgeCidr,omitempty"`
+ InfrastructureSubnetId *string `json:"infrastructureSubnetId,omitempty"`
+ Internal *bool `json:"internal,omitempty"`
+ PlatformReservedCidr *string `json:"platformReservedCidr,omitempty"`
+ PlatformReservedDnsIP *string `json:"platformReservedDnsIP,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.WorkloadProfile
+// Workload profile to scope container app execution.
+type WorkloadProfile struct {
+ MaximumCount *int `json:"maximumCount,omitempty"`
+ MinimumCount *int `json:"minimumCount,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ WorkloadProfileType *string `json:"workloadProfileType,omitempty"`
+}
+
+// Storage version of v1api20240301.WorkloadProfile_STATUS
+// Workload profile to scope container app execution.
+type WorkloadProfile_STATUS struct {
+ MaximumCount *int `json:"maximumCount,omitempty"`
+ MinimumCount *int `json:"minimumCount,omitempty"`
+ Name *string `json:"name,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ WorkloadProfileType *string `json:"workloadProfileType,omitempty"`
+}
+
+// Storage version of v1api20240301.LogAnalyticsConfiguration
+// Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'
+type LogAnalyticsConfiguration struct {
+ CustomerId *string `json:"customerId,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+ SharedKey *genruntime.SecretReference `json:"sharedKey,omitempty"`
+}
+
+// Storage version of v1api20240301.LogAnalyticsConfiguration_STATUS
+// Log Analytics configuration, must only be provided when destination is configured as 'log-analytics'
+type LogAnalyticsConfiguration_STATUS struct {
+ CustomerId *string `json:"customerId,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS
+type ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.Mtls
+// Configuration properties for mutual TLS authentication
+type Mtls struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+// Storage version of v1api20240301.Mtls_STATUS
+// Configuration properties for mutual TLS authentication
+type Mtls_STATUS struct {
+ Enabled *bool `json:"enabled,omitempty"`
+ PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"`
+}
+
+func init() {
+ SchemeBuilder.Register(&ManagedEnvironment{}, &ManagedEnvironmentList{})
+}
diff --git a/v2/api/app/v1api20240301/storage/managed_environment_types_gen_test.go b/v2/api/app/v1api20240301/storage/managed_environment_types_gen_test.go
new file mode 100644
index 00000000000..6fa34ca5ab0
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/managed_environment_types_gen_test.go
@@ -0,0 +1,1581 @@
+// 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_AppLogsConfiguration_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 AppLogsConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppLogsConfiguration, AppLogsConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppLogsConfiguration runs a test to see if a specific instance of AppLogsConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppLogsConfiguration(subject AppLogsConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppLogsConfiguration
+ 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 AppLogsConfiguration instances for property testing - lazily instantiated by
+// AppLogsConfigurationGenerator()
+var appLogsConfigurationGenerator gopter.Gen
+
+// AppLogsConfigurationGenerator returns a generator of AppLogsConfiguration instances for property testing.
+// We first initialize appLogsConfigurationGenerator 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 AppLogsConfigurationGenerator() gopter.Gen {
+ if appLogsConfigurationGenerator != nil {
+ return appLogsConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration(generators)
+ appLogsConfigurationGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration(generators)
+ AddRelatedPropertyGeneratorsForAppLogsConfiguration(generators)
+ appLogsConfigurationGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration{}), generators)
+
+ return appLogsConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppLogsConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppLogsConfiguration(gens map[string]gopter.Gen) {
+ gens["Destination"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAppLogsConfiguration is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAppLogsConfiguration(gens map[string]gopter.Gen) {
+ gens["LogAnalyticsConfiguration"] = gen.PtrOf(LogAnalyticsConfigurationGenerator())
+}
+
+func Test_AppLogsConfiguration_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 AppLogsConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForAppLogsConfiguration_STATUS, AppLogsConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForAppLogsConfiguration_STATUS runs a test to see if a specific instance of AppLogsConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForAppLogsConfiguration_STATUS(subject AppLogsConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual AppLogsConfiguration_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 AppLogsConfiguration_STATUS instances for property testing - lazily instantiated by
+// AppLogsConfiguration_STATUSGenerator()
+var appLogsConfiguration_STATUSGenerator gopter.Gen
+
+// AppLogsConfiguration_STATUSGenerator returns a generator of AppLogsConfiguration_STATUS instances for property testing.
+// We first initialize appLogsConfiguration_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 AppLogsConfiguration_STATUSGenerator() gopter.Gen {
+ if appLogsConfiguration_STATUSGenerator != nil {
+ return appLogsConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ appLogsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS(generators)
+ appLogsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(AppLogsConfiguration_STATUS{}), generators)
+
+ return appLogsConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForAppLogsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Destination"] = gen.PtrOf(gen.AlphaString())
+}
+
+// AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForAppLogsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["LogAnalyticsConfiguration"] = gen.PtrOf(LogAnalyticsConfiguration_STATUSGenerator())
+}
+
+func Test_CustomDomainConfiguration_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 CustomDomainConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomainConfiguration, CustomDomainConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomainConfiguration runs a test to see if a specific instance of CustomDomainConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomainConfiguration(subject CustomDomainConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomainConfiguration
+ 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 CustomDomainConfiguration instances for property testing - lazily instantiated by
+// CustomDomainConfigurationGenerator()
+var customDomainConfigurationGenerator gopter.Gen
+
+// CustomDomainConfigurationGenerator returns a generator of CustomDomainConfiguration instances for property testing.
+func CustomDomainConfigurationGenerator() gopter.Gen {
+ if customDomainConfigurationGenerator != nil {
+ return customDomainConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomainConfiguration(generators)
+ customDomainConfigurationGenerator = gen.Struct(reflect.TypeOf(CustomDomainConfiguration{}), generators)
+
+ return customDomainConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomainConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomainConfiguration(gens map[string]gopter.Gen) {
+ gens["DnsSuffix"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_CustomDomainConfiguration_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 CustomDomainConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForCustomDomainConfiguration_STATUS, CustomDomainConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForCustomDomainConfiguration_STATUS runs a test to see if a specific instance of CustomDomainConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForCustomDomainConfiguration_STATUS(subject CustomDomainConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual CustomDomainConfiguration_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 CustomDomainConfiguration_STATUS instances for property testing - lazily instantiated by
+// CustomDomainConfiguration_STATUSGenerator()
+var customDomainConfiguration_STATUSGenerator gopter.Gen
+
+// CustomDomainConfiguration_STATUSGenerator returns a generator of CustomDomainConfiguration_STATUS instances for property testing.
+func CustomDomainConfiguration_STATUSGenerator() gopter.Gen {
+ if customDomainConfiguration_STATUSGenerator != nil {
+ return customDomainConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS(generators)
+ customDomainConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(CustomDomainConfiguration_STATUS{}), generators)
+
+ return customDomainConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForCustomDomainConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomDomainVerificationId"] = gen.PtrOf(gen.AlphaString())
+ gens["DnsSuffix"] = gen.PtrOf(gen.AlphaString())
+ gens["ExpirationDate"] = gen.PtrOf(gen.AlphaString())
+ gens["SubjectName"] = gen.PtrOf(gen.AlphaString())
+ gens["Thumbprint"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_DaprConfiguration_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 DaprConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForDaprConfiguration_STATUS, DaprConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForDaprConfiguration_STATUS runs a test to see if a specific instance of DaprConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForDaprConfiguration_STATUS(subject DaprConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual DaprConfiguration_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 DaprConfiguration_STATUS instances for property testing - lazily instantiated by
+// DaprConfiguration_STATUSGenerator()
+var daprConfiguration_STATUSGenerator gopter.Gen
+
+// DaprConfiguration_STATUSGenerator returns a generator of DaprConfiguration_STATUS instances for property testing.
+func DaprConfiguration_STATUSGenerator() gopter.Gen {
+ if daprConfiguration_STATUSGenerator != nil {
+ return daprConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS(generators)
+ daprConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(DaprConfiguration_STATUS{}), generators)
+
+ return daprConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForDaprConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Version"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_KedaConfiguration_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 KedaConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForKedaConfiguration_STATUS, KedaConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForKedaConfiguration_STATUS runs a test to see if a specific instance of KedaConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForKedaConfiguration_STATUS(subject KedaConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual KedaConfiguration_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 KedaConfiguration_STATUS instances for property testing - lazily instantiated by
+// KedaConfiguration_STATUSGenerator()
+var kedaConfiguration_STATUSGenerator gopter.Gen
+
+// KedaConfiguration_STATUSGenerator returns a generator of KedaConfiguration_STATUS instances for property testing.
+func KedaConfiguration_STATUSGenerator() gopter.Gen {
+ if kedaConfiguration_STATUSGenerator != nil {
+ return kedaConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS(generators)
+ kedaConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(KedaConfiguration_STATUS{}), generators)
+
+ return kedaConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForKedaConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Version"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LogAnalyticsConfiguration_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 LogAnalyticsConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogAnalyticsConfiguration, LogAnalyticsConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogAnalyticsConfiguration runs a test to see if a specific instance of LogAnalyticsConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogAnalyticsConfiguration(subject LogAnalyticsConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LogAnalyticsConfiguration
+ 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 LogAnalyticsConfiguration instances for property testing - lazily instantiated by
+// LogAnalyticsConfigurationGenerator()
+var logAnalyticsConfigurationGenerator gopter.Gen
+
+// LogAnalyticsConfigurationGenerator returns a generator of LogAnalyticsConfiguration instances for property testing.
+func LogAnalyticsConfigurationGenerator() gopter.Gen {
+ if logAnalyticsConfigurationGenerator != nil {
+ return logAnalyticsConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration(generators)
+ logAnalyticsConfigurationGenerator = gen.Struct(reflect.TypeOf(LogAnalyticsConfiguration{}), generators)
+
+ return logAnalyticsConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration(gens map[string]gopter.Gen) {
+ gens["CustomerId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_LogAnalyticsConfiguration_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 LogAnalyticsConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS, LogAnalyticsConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS runs a test to see if a specific instance of LogAnalyticsConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForLogAnalyticsConfiguration_STATUS(subject LogAnalyticsConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual LogAnalyticsConfiguration_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 LogAnalyticsConfiguration_STATUS instances for property testing - lazily instantiated by
+// LogAnalyticsConfiguration_STATUSGenerator()
+var logAnalyticsConfiguration_STATUSGenerator gopter.Gen
+
+// LogAnalyticsConfiguration_STATUSGenerator returns a generator of LogAnalyticsConfiguration_STATUS instances for property testing.
+func LogAnalyticsConfiguration_STATUSGenerator() gopter.Gen {
+ if logAnalyticsConfiguration_STATUSGenerator != nil {
+ return logAnalyticsConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS(generators)
+ logAnalyticsConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(LogAnalyticsConfiguration_STATUS{}), generators)
+
+ return logAnalyticsConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForLogAnalyticsConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["CustomerId"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_ManagedEnvironment_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 ManagedEnvironment via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment, ManagedEnvironmentGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment runs a test to see if a specific instance of ManagedEnvironment round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment(subject ManagedEnvironment) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment
+ 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 ManagedEnvironment instances for property testing - lazily instantiated by ManagedEnvironmentGenerator()
+var managedEnvironmentGenerator gopter.Gen
+
+// ManagedEnvironmentGenerator returns a generator of ManagedEnvironment instances for property testing.
+func ManagedEnvironmentGenerator() gopter.Gen {
+ if managedEnvironmentGenerator != nil {
+ return managedEnvironmentGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment(generators)
+ managedEnvironmentGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment{}), generators)
+
+ return managedEnvironmentGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment(gens map[string]gopter.Gen) {
+ gens["Spec"] = ManagedEnvironment_SpecGenerator()
+ gens["Status"] = ManagedEnvironment_STATUSGenerator()
+}
+
+func Test_ManagedEnvironmentOperatorSpec_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 ManagedEnvironmentOperatorSpec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironmentOperatorSpec, ManagedEnvironmentOperatorSpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironmentOperatorSpec runs a test to see if a specific instance of ManagedEnvironmentOperatorSpec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironmentOperatorSpec(subject ManagedEnvironmentOperatorSpec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironmentOperatorSpec
+ 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 ManagedEnvironmentOperatorSpec instances for property testing - lazily instantiated by
+// ManagedEnvironmentOperatorSpecGenerator()
+var managedEnvironmentOperatorSpecGenerator gopter.Gen
+
+// ManagedEnvironmentOperatorSpecGenerator returns a generator of ManagedEnvironmentOperatorSpec instances for property testing.
+func ManagedEnvironmentOperatorSpecGenerator() gopter.Gen {
+ if managedEnvironmentOperatorSpecGenerator != nil {
+ return managedEnvironmentOperatorSpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ managedEnvironmentOperatorSpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironmentOperatorSpec{}), generators)
+
+ return managedEnvironmentOperatorSpecGenerator
+}
+
+func Test_ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS, ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerAuthentication_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_STATUS(subject ManagedEnvironment_Properties_PeerAuthentication_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_STATUS instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator()
+var managedEnvironment_Properties_PeerAuthentication_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerAuthentication_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerAuthentication_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerAuthentication_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS(generators)
+ managedEnvironment_Properties_PeerAuthentication_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerAuthentication_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerAuthentication_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_STATUS(gens map[string]gopter.Gen) {
+ gens["Mtls"] = gen.PtrOf(Mtls_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec, ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerAuthentication_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerAuthentication_Spec(subject ManagedEnvironment_Properties_PeerAuthentication_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerAuthentication_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 ManagedEnvironment_Properties_PeerAuthentication_Spec instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator()
+var managedEnvironment_Properties_PeerAuthentication_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerAuthentication_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerAuthentication_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerAuthentication_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec(generators)
+ managedEnvironment_Properties_PeerAuthentication_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerAuthentication_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerAuthentication_SpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerAuthentication_Spec(gens map[string]gopter.Gen) {
+ gens["Mtls"] = gen.PtrOf(MtlsGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS, ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS instances for property testing
+// - lazily instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec, ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec instances for property testing -
+// lazily instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS, ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["Encryption"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec, ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec runs a test to see if a specific instance of ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(subject ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_Properties_PeerTrafficConfiguration_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec instances for property testing - lazily
+// instantiated by ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator()
+var managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator returns a generator of ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec instances for property testing.
+func ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator() gopter.Gen {
+ if managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator != nil {
+ return managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(generators)
+ managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec{}), generators)
+
+ return managedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Properties_PeerTrafficConfiguration_Spec(gens map[string]gopter.Gen) {
+ gens["Encryption"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_SpecGenerator())
+}
+
+func Test_ManagedEnvironment_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 ManagedEnvironment_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_STATUS, ManagedEnvironment_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_STATUS runs a test to see if a specific instance of ManagedEnvironment_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_STATUS(subject ManagedEnvironment_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_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 ManagedEnvironment_STATUS instances for property testing - lazily instantiated by
+// ManagedEnvironment_STATUSGenerator()
+var managedEnvironment_STATUSGenerator gopter.Gen
+
+// ManagedEnvironment_STATUSGenerator returns a generator of ManagedEnvironment_STATUS instances for property testing.
+// We first initialize managedEnvironment_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 ManagedEnvironment_STATUSGenerator() gopter.Gen {
+ if managedEnvironment_STATUSGenerator != nil {
+ return managedEnvironment_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ managedEnvironment_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_STATUS{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS(generators)
+ managedEnvironment_STATUSGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_STATUS{}), generators)
+
+ return managedEnvironment_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_STATUS(gens map[string]gopter.Gen) {
+ gens["DefaultDomain"] = gen.PtrOf(gen.AlphaString())
+ gens["DeploymentErrors"] = gen.PtrOf(gen.AlphaString())
+ gens["EventStreamEndpoint"] = gen.PtrOf(gen.AlphaString())
+ gens["Id"] = gen.PtrOf(gen.AlphaString())
+ gens["InfrastructureResourceGroup"] = gen.PtrOf(gen.AlphaString())
+ gens["Kind"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["ProvisioningState"] = gen.PtrOf(gen.AlphaString())
+ gens["StaticIp"] = gen.PtrOf(gen.AlphaString())
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["Type"] = gen.PtrOf(gen.AlphaString())
+ gens["ZoneRedundant"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_STATUS(gens map[string]gopter.Gen) {
+ gens["AppLogsConfiguration"] = gen.PtrOf(AppLogsConfiguration_STATUSGenerator())
+ gens["CustomDomainConfiguration"] = gen.PtrOf(CustomDomainConfiguration_STATUSGenerator())
+ gens["DaprConfiguration"] = gen.PtrOf(DaprConfiguration_STATUSGenerator())
+ gens["KedaConfiguration"] = gen.PtrOf(KedaConfiguration_STATUSGenerator())
+ gens["PeerAuthentication"] = gen.PtrOf(ManagedEnvironment_Properties_PeerAuthentication_STATUSGenerator())
+ gens["PeerTrafficConfiguration"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUSGenerator())
+ gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator())
+ gens["VnetConfiguration"] = gen.PtrOf(VnetConfiguration_STATUSGenerator())
+ gens["WorkloadProfiles"] = gen.SliceOf(WorkloadProfile_STATUSGenerator())
+}
+
+func Test_ManagedEnvironment_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 ManagedEnvironment_Spec via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForManagedEnvironment_Spec, ManagedEnvironment_SpecGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForManagedEnvironment_Spec runs a test to see if a specific instance of ManagedEnvironment_Spec round trips to JSON and back losslessly
+func RunJSONSerializationTestForManagedEnvironment_Spec(subject ManagedEnvironment_Spec) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual ManagedEnvironment_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 ManagedEnvironment_Spec instances for property testing - lazily instantiated by
+// ManagedEnvironment_SpecGenerator()
+var managedEnvironment_SpecGenerator gopter.Gen
+
+// ManagedEnvironment_SpecGenerator returns a generator of ManagedEnvironment_Spec instances for property testing.
+// We first initialize managedEnvironment_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 ManagedEnvironment_SpecGenerator() gopter.Gen {
+ if managedEnvironment_SpecGenerator != nil {
+ return managedEnvironment_SpecGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ managedEnvironment_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Spec{}), generators)
+
+ // The above call to gen.Struct() captures the map, so create a new one
+ generators = make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ AddRelatedPropertyGeneratorsForManagedEnvironment_Spec(generators)
+ managedEnvironment_SpecGenerator = gen.Struct(reflect.TypeOf(ManagedEnvironment_Spec{}), generators)
+
+ return managedEnvironment_SpecGenerator
+}
+
+// AddIndependentPropertyGeneratorsForManagedEnvironment_Spec is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForManagedEnvironment_Spec(gens map[string]gopter.Gen) {
+ gens["AzureName"] = gen.AlphaString()
+ gens["InfrastructureResourceGroup"] = gen.PtrOf(gen.AlphaString())
+ gens["Kind"] = gen.PtrOf(gen.AlphaString())
+ gens["Location"] = gen.PtrOf(gen.AlphaString())
+ gens["OriginalVersion"] = gen.AlphaString()
+ gens["Tags"] = gen.MapOf(
+ gen.AlphaString(),
+ gen.AlphaString())
+ gens["ZoneRedundant"] = gen.PtrOf(gen.Bool())
+}
+
+// AddRelatedPropertyGeneratorsForManagedEnvironment_Spec is a factory method for creating gopter generators
+func AddRelatedPropertyGeneratorsForManagedEnvironment_Spec(gens map[string]gopter.Gen) {
+ gens["AppLogsConfiguration"] = gen.PtrOf(AppLogsConfigurationGenerator())
+ gens["CustomDomainConfiguration"] = gen.PtrOf(CustomDomainConfigurationGenerator())
+ gens["OperatorSpec"] = gen.PtrOf(ManagedEnvironmentOperatorSpecGenerator())
+ gens["PeerAuthentication"] = gen.PtrOf(ManagedEnvironment_Properties_PeerAuthentication_SpecGenerator())
+ gens["PeerTrafficConfiguration"] = gen.PtrOf(ManagedEnvironment_Properties_PeerTrafficConfiguration_SpecGenerator())
+ gens["VnetConfiguration"] = gen.PtrOf(VnetConfigurationGenerator())
+ gens["WorkloadProfiles"] = gen.SliceOf(WorkloadProfileGenerator())
+}
+
+func Test_Mtls_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 Mtls via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForMtls, MtlsGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForMtls runs a test to see if a specific instance of Mtls round trips to JSON and back losslessly
+func RunJSONSerializationTestForMtls(subject Mtls) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Mtls
+ 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 Mtls instances for property testing - lazily instantiated by MtlsGenerator()
+var mtlsGenerator gopter.Gen
+
+// MtlsGenerator returns a generator of Mtls instances for property testing.
+func MtlsGenerator() gopter.Gen {
+ if mtlsGenerator != nil {
+ return mtlsGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForMtls(generators)
+ mtlsGenerator = gen.Struct(reflect.TypeOf(Mtls{}), generators)
+
+ return mtlsGenerator
+}
+
+// AddIndependentPropertyGeneratorsForMtls is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForMtls(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_Mtls_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 Mtls_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForMtls_STATUS, Mtls_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForMtls_STATUS runs a test to see if a specific instance of Mtls_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForMtls_STATUS(subject Mtls_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual Mtls_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 Mtls_STATUS instances for property testing - lazily instantiated by Mtls_STATUSGenerator()
+var mtls_STATUSGenerator gopter.Gen
+
+// Mtls_STATUSGenerator returns a generator of Mtls_STATUS instances for property testing.
+func Mtls_STATUSGenerator() gopter.Gen {
+ if mtls_STATUSGenerator != nil {
+ return mtls_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForMtls_STATUS(generators)
+ mtls_STATUSGenerator = gen.Struct(reflect.TypeOf(Mtls_STATUS{}), generators)
+
+ return mtls_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForMtls_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForMtls_STATUS(gens map[string]gopter.Gen) {
+ gens["Enabled"] = gen.PtrOf(gen.Bool())
+}
+
+func Test_VnetConfiguration_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 VnetConfiguration via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVnetConfiguration, VnetConfigurationGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVnetConfiguration runs a test to see if a specific instance of VnetConfiguration round trips to JSON and back losslessly
+func RunJSONSerializationTestForVnetConfiguration(subject VnetConfiguration) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VnetConfiguration
+ 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 VnetConfiguration instances for property testing - lazily instantiated by VnetConfigurationGenerator()
+var vnetConfigurationGenerator gopter.Gen
+
+// VnetConfigurationGenerator returns a generator of VnetConfiguration instances for property testing.
+func VnetConfigurationGenerator() gopter.Gen {
+ if vnetConfigurationGenerator != nil {
+ return vnetConfigurationGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVnetConfiguration(generators)
+ vnetConfigurationGenerator = gen.Struct(reflect.TypeOf(VnetConfiguration{}), generators)
+
+ return vnetConfigurationGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVnetConfiguration is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVnetConfiguration(gens map[string]gopter.Gen) {
+ gens["DockerBridgeCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["Internal"] = gen.PtrOf(gen.Bool())
+ gens["PlatformReservedCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["PlatformReservedDnsIP"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_VnetConfiguration_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 VnetConfiguration_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForVnetConfiguration_STATUS, VnetConfiguration_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForVnetConfiguration_STATUS runs a test to see if a specific instance of VnetConfiguration_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForVnetConfiguration_STATUS(subject VnetConfiguration_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual VnetConfiguration_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 VnetConfiguration_STATUS instances for property testing - lazily instantiated by
+// VnetConfiguration_STATUSGenerator()
+var vnetConfiguration_STATUSGenerator gopter.Gen
+
+// VnetConfiguration_STATUSGenerator returns a generator of VnetConfiguration_STATUS instances for property testing.
+func VnetConfiguration_STATUSGenerator() gopter.Gen {
+ if vnetConfiguration_STATUSGenerator != nil {
+ return vnetConfiguration_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS(generators)
+ vnetConfiguration_STATUSGenerator = gen.Struct(reflect.TypeOf(VnetConfiguration_STATUS{}), generators)
+
+ return vnetConfiguration_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForVnetConfiguration_STATUS(gens map[string]gopter.Gen) {
+ gens["DockerBridgeCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["InfrastructureSubnetId"] = gen.PtrOf(gen.AlphaString())
+ gens["Internal"] = gen.PtrOf(gen.Bool())
+ gens["PlatformReservedCidr"] = gen.PtrOf(gen.AlphaString())
+ gens["PlatformReservedDnsIP"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_WorkloadProfile_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 WorkloadProfile via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForWorkloadProfile, WorkloadProfileGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForWorkloadProfile runs a test to see if a specific instance of WorkloadProfile round trips to JSON and back losslessly
+func RunJSONSerializationTestForWorkloadProfile(subject WorkloadProfile) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual WorkloadProfile
+ 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 WorkloadProfile instances for property testing - lazily instantiated by WorkloadProfileGenerator()
+var workloadProfileGenerator gopter.Gen
+
+// WorkloadProfileGenerator returns a generator of WorkloadProfile instances for property testing.
+func WorkloadProfileGenerator() gopter.Gen {
+ if workloadProfileGenerator != nil {
+ return workloadProfileGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForWorkloadProfile(generators)
+ workloadProfileGenerator = gen.Struct(reflect.TypeOf(WorkloadProfile{}), generators)
+
+ return workloadProfileGenerator
+}
+
+// AddIndependentPropertyGeneratorsForWorkloadProfile is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForWorkloadProfile(gens map[string]gopter.Gen) {
+ gens["MaximumCount"] = gen.PtrOf(gen.Int())
+ gens["MinimumCount"] = gen.PtrOf(gen.Int())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileType"] = gen.PtrOf(gen.AlphaString())
+}
+
+func Test_WorkloadProfile_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 WorkloadProfile_STATUS via JSON returns original",
+ prop.ForAll(RunJSONSerializationTestForWorkloadProfile_STATUS, WorkloadProfile_STATUSGenerator()))
+ properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout))
+}
+
+// RunJSONSerializationTestForWorkloadProfile_STATUS runs a test to see if a specific instance of WorkloadProfile_STATUS round trips to JSON and back losslessly
+func RunJSONSerializationTestForWorkloadProfile_STATUS(subject WorkloadProfile_STATUS) string {
+ // Serialize to JSON
+ bin, err := json.Marshal(subject)
+ if err != nil {
+ return err.Error()
+ }
+
+ // Deserialize back into memory
+ var actual WorkloadProfile_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 WorkloadProfile_STATUS instances for property testing - lazily instantiated by
+// WorkloadProfile_STATUSGenerator()
+var workloadProfile_STATUSGenerator gopter.Gen
+
+// WorkloadProfile_STATUSGenerator returns a generator of WorkloadProfile_STATUS instances for property testing.
+func WorkloadProfile_STATUSGenerator() gopter.Gen {
+ if workloadProfile_STATUSGenerator != nil {
+ return workloadProfile_STATUSGenerator
+ }
+
+ generators := make(map[string]gopter.Gen)
+ AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS(generators)
+ workloadProfile_STATUSGenerator = gen.Struct(reflect.TypeOf(WorkloadProfile_STATUS{}), generators)
+
+ return workloadProfile_STATUSGenerator
+}
+
+// AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS is a factory method for creating gopter generators
+func AddIndependentPropertyGeneratorsForWorkloadProfile_STATUS(gens map[string]gopter.Gen) {
+ gens["MaximumCount"] = gen.PtrOf(gen.Int())
+ gens["MinimumCount"] = gen.PtrOf(gen.Int())
+ gens["Name"] = gen.PtrOf(gen.AlphaString())
+ gens["WorkloadProfileType"] = gen.PtrOf(gen.AlphaString())
+}
diff --git a/v2/api/app/v1api20240301/storage/structure.txt b/v2/api/app/v1api20240301/storage/structure.txt
new file mode 100644
index 00000000000..658fc2c371a
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/structure.txt
@@ -0,0 +1,1200 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/storage
+------------------------------------------------------------------------
+APIVersion: Enum (1 value)
+└── "2024-03-01"
+AuthConfig: Resource
+├── Owner: app/v1api20240301.ContainerApp
+├── Spec: Object (11 properties)
+│ ├── AzureName: string
+│ ├── EncryptionSettings: *Object (3 properties)
+│ │ ├── ContainerAppAuthEncryptionSecretName: *string
+│ │ ├── ContainerAppAuthSigningSecretName: *string
+│ │ └── PropertyBag: genruntime.PropertyBag
+│ ├── GlobalValidation: *Object (4 properties)
+│ │ ├── ExcludedPaths: string[]
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── RedirectToProvider: *string
+│ │ └── UnauthenticatedClientAction: *string
+│ ├── HttpSettings: *Object (4 properties)
+│ │ ├── ForwardProxy: *Object (4 properties)
+│ │ │ ├── Convention: *string
+│ │ │ ├── CustomHostHeaderName: *string
+│ │ │ ├── CustomProtoHeaderName: *string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── RequireHttps: *bool
+│ │ └── Routes: *Object (2 properties)
+│ │ ├── ApiPrefix: *string
+│ │ └── PropertyBag: genruntime.PropertyBag
+│ ├── IdentityProviders: *Object (9 properties)
+│ │ ├── Apple: *Object (4 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (2 properties)
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ └── Scopes: string[]
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Registration: *Object (3 properties)
+│ │ │ ├── ClientId: *string
+│ │ │ ├── ClientSecretSettingName: *string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── AzureActiveDirectory: *Object (6 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── IsAutoProvisioned: *bool
+│ │ │ ├── Login: *Object (3 properties)
+│ │ │ │ ├── DisableWWWAuthenticate: *bool
+│ │ │ │ ├── LoginParameters: string[]
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Registration: *Object (7 properties)
+│ │ │ │ ├── ClientId: *string
+│ │ │ │ ├── ClientSecretCertificateIssuer: *string
+│ │ │ │ ├── ClientSecretCertificateSubjectAlternativeName: *string
+│ │ │ │ ├── ClientSecretCertificateThumbprint: *string
+│ │ │ │ ├── ClientSecretSettingName: *string
+│ │ │ │ ├── OpenIdIssuer: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Validation: *Object (4 properties)
+│ │ │ ├── AllowedAudiences: string[]
+│ │ │ ├── DefaultAuthorizationPolicy: *Object (3 properties)
+│ │ │ │ ├── AllowedApplications: string[]
+│ │ │ │ ├── AllowedPrincipals: *Object (3 properties)
+│ │ │ │ │ ├── Groups: string[]
+│ │ │ │ │ ├── Identities: string[]
+│ │ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── JwtClaimChecks: *Object (3 properties)
+│ │ │ │ ├── AllowedClientApplications: string[]
+│ │ │ │ ├── AllowedGroups: string[]
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── AzureStaticWebApps: *Object (3 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Registration: *Object (2 properties)
+│ │ │ ├── ClientId: *string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── CustomOpenIdConnectProviders: map[string]Object (4 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (3 properties)
+│ │ │ │ ├── NameClaimType: *string
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ └── Scopes: string[]
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Registration: *Object (4 properties)
+│ │ │ ├── ClientCredential: *Object (3 properties)
+│ │ │ │ ├── ClientSecretSettingName: *string
+│ │ │ │ ├── Method: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── ClientId: *string
+│ │ │ ├── OpenIdConnectConfiguration: *Object (6 properties)
+│ │ │ │ ├── AuthorizationEndpoint: *string
+│ │ │ │ ├── CertificationUri: *string
+│ │ │ │ ├── Issuer: *string
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── TokenEndpoint: *string
+│ │ │ │ └── WellKnownOpenIdConfiguration: *string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── Facebook: *Object (5 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── GraphApiVersion: *string
+│ │ │ ├── Login: *Object (2 properties)
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ └── Scopes: string[]
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Registration: *Object (3 properties)
+│ │ │ ├── AppId: *string
+│ │ │ ├── AppSecretSettingName: *string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── GitHub: *Object (4 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (2 properties)
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ └── Scopes: string[]
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Registration: *Object (3 properties)
+│ │ │ ├── ClientId: *string
+│ │ │ ├── ClientSecretSettingName: *string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── Google: *Object (5 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (2 properties)
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ └── Scopes: string[]
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Registration: *Object (3 properties)
+│ │ │ │ ├── ClientId: *string
+│ │ │ │ ├── ClientSecretSettingName: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Validation: *Object (2 properties)
+│ │ │ ├── AllowedAudiences: string[]
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── Twitter: *Object (3 properties)
+│ │ ├── Enabled: *bool
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── Registration: *Object (3 properties)
+│ │ ├── ConsumerKey: *string
+│ │ ├── ConsumerSecretSettingName: *string
+│ │ └── PropertyBag: genruntime.PropertyBag
+│ ├── Login: *Object (7 properties)
+│ │ ├── AllowedExternalRedirectUrls: string[]
+│ │ ├── CookieExpiration: *Object (3 properties)
+│ │ │ ├── Convention: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── TimeToExpiration: *string
+│ │ ├── Nonce: *Object (3 properties)
+│ │ │ ├── NonceExpirationInterval: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── ValidateNonce: *bool
+│ │ ├── PreserveUrlFragmentsForLogins: *bool
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── Routes: *Object (2 properties)
+│ │ │ ├── LogoutEndpoint: *string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ └── TokenStore: *Object (4 properties)
+│ │ ├── AzureBlobStorage: *Object (2 properties)
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── SasUrlSettingName: *string
+│ │ ├── Enabled: *bool
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── TokenRefreshExtensionHours: *float64
+│ ├── OperatorSpec: *Object (3 properties)
+│ │ ├── ConfigMapExpressions: *core.DestinationExpression[]
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── SecretExpressions: *core.DestinationExpression[]
+│ ├── OriginalVersion: string
+│ ├── Owner: *genruntime.KnownResourceReference
+│ ├── Platform: *Object (3 properties)
+│ │ ├── Enabled: *bool
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── RuntimeVersion: *string
+│ └── PropertyBag: genruntime.PropertyBag
+└── Status: Object (12 properties)
+ ├── Conditions: conditions.Condition[]
+ ├── EncryptionSettings: *Object (3 properties)
+ │ ├── ContainerAppAuthEncryptionSecretName: *string
+ │ ├── ContainerAppAuthSigningSecretName: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── GlobalValidation: *Object (4 properties)
+ │ ├── ExcludedPaths: string[]
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── RedirectToProvider: *string
+ │ └── UnauthenticatedClientAction: *string
+ ├── HttpSettings: *Object (4 properties)
+ │ ├── ForwardProxy: *Object (4 properties)
+ │ │ ├── Convention: *string
+ │ │ ├── CustomHostHeaderName: *string
+ │ │ ├── CustomProtoHeaderName: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── RequireHttps: *bool
+ │ └── Routes: *Object (2 properties)
+ │ ├── ApiPrefix: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── Id: *string
+ ├── IdentityProviders: *Object (9 properties)
+ │ ├── Apple: *Object (4 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (2 properties)
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ └── Scopes: string[]
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Registration: *Object (3 properties)
+ │ │ ├── ClientId: *string
+ │ │ ├── ClientSecretSettingName: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── AzureActiveDirectory: *Object (6 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── IsAutoProvisioned: *bool
+ │ │ ├── Login: *Object (3 properties)
+ │ │ │ ├── DisableWWWAuthenticate: *bool
+ │ │ │ ├── LoginParameters: string[]
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Registration: *Object (7 properties)
+ │ │ │ ├── ClientId: *string
+ │ │ │ ├── ClientSecretCertificateIssuer: *string
+ │ │ │ ├── ClientSecretCertificateSubjectAlternativeName: *string
+ │ │ │ ├── ClientSecretCertificateThumbprint: *string
+ │ │ │ ├── ClientSecretSettingName: *string
+ │ │ │ ├── OpenIdIssuer: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ └── Validation: *Object (4 properties)
+ │ │ ├── AllowedAudiences: string[]
+ │ │ ├── DefaultAuthorizationPolicy: *Object (3 properties)
+ │ │ │ ├── AllowedApplications: string[]
+ │ │ │ ├── AllowedPrincipals: *Object (3 properties)
+ │ │ │ │ ├── Groups: string[]
+ │ │ │ │ ├── Identities: string[]
+ │ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ ├── JwtClaimChecks: *Object (3 properties)
+ │ │ │ ├── AllowedClientApplications: string[]
+ │ │ │ ├── AllowedGroups: string[]
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── AzureStaticWebApps: *Object (3 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Registration: *Object (2 properties)
+ │ │ ├── ClientId: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── CustomOpenIdConnectProviders: map[string]Object (4 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (3 properties)
+ │ │ │ ├── NameClaimType: *string
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ └── Scopes: string[]
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Registration: *Object (4 properties)
+ │ │ ├── ClientCredential: *Object (3 properties)
+ │ │ │ ├── ClientSecretSettingName: *string
+ │ │ │ ├── Method: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ ├── ClientId: *string
+ │ │ ├── OpenIdConnectConfiguration: *Object (6 properties)
+ │ │ │ ├── AuthorizationEndpoint: *string
+ │ │ │ ├── CertificationUri: *string
+ │ │ │ ├── Issuer: *string
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── TokenEndpoint: *string
+ │ │ │ └── WellKnownOpenIdConfiguration: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── Facebook: *Object (5 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── GraphApiVersion: *string
+ │ │ ├── Login: *Object (2 properties)
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ └── Scopes: string[]
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Registration: *Object (3 properties)
+ │ │ ├── AppId: *string
+ │ │ ├── AppSecretSettingName: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── GitHub: *Object (4 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (2 properties)
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ └── Scopes: string[]
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Registration: *Object (3 properties)
+ │ │ ├── ClientId: *string
+ │ │ ├── ClientSecretSettingName: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── Google: *Object (5 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (2 properties)
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ └── Scopes: string[]
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Registration: *Object (3 properties)
+ │ │ │ ├── ClientId: *string
+ │ │ │ ├── ClientSecretSettingName: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ └── Validation: *Object (2 properties)
+ │ │ ├── AllowedAudiences: string[]
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── Twitter: *Object (3 properties)
+ │ ├── Enabled: *bool
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── Registration: *Object (3 properties)
+ │ ├── ConsumerKey: *string
+ │ ├── ConsumerSecretSettingName: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── Login: *Object (7 properties)
+ │ ├── AllowedExternalRedirectUrls: string[]
+ │ ├── CookieExpiration: *Object (3 properties)
+ │ │ ├── Convention: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── TimeToExpiration: *string
+ │ ├── Nonce: *Object (3 properties)
+ │ │ ├── NonceExpirationInterval: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── ValidateNonce: *bool
+ │ ├── PreserveUrlFragmentsForLogins: *bool
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── Routes: *Object (2 properties)
+ │ │ ├── LogoutEndpoint: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ └── TokenStore: *Object (4 properties)
+ │ ├── AzureBlobStorage: *Object (2 properties)
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── SasUrlSettingName: *string
+ │ ├── Enabled: *bool
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── TokenRefreshExtensionHours: *float64
+ ├── Name: *string
+ ├── Platform: *Object (3 properties)
+ │ ├── Enabled: *bool
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── RuntimeVersion: *string
+ ├── PropertyBag: genruntime.PropertyBag
+ ├── SystemData: *Object (7 properties)
+ │ ├── CreatedAt: *string
+ │ ├── CreatedBy: *string
+ │ ├── CreatedByType: *string
+ │ ├── LastModifiedAt: *string
+ │ ├── LastModifiedBy: *string
+ │ ├── LastModifiedByType: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ └── Type: *string
+ContainerApp: Resource
+├── Owner: resources/v1apiv20191001.ResourceGroup
+├── Spec: Object (15 properties)
+│ ├── AzureName: string
+│ ├── Configuration: *Object (8 properties)
+│ │ ├── ActiveRevisionsMode: *string
+│ │ ├── Dapr: *Object (9 properties)
+│ │ │ ├── AppId: *string
+│ │ │ ├── AppPort: *int
+│ │ │ ├── AppProtocol: *string
+│ │ │ ├── EnableApiLogging: *bool
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── HttpMaxRequestSize: *int
+│ │ │ ├── HttpReadBufferSize: *int
+│ │ │ ├── LogLevel: *string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── Ingress: *Object (13 properties)
+│ │ │ ├── AdditionalPortMappings: Object (4 properties)[]
+│ │ │ │ ├── ExposedPort: *int
+│ │ │ │ ├── External: *bool
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ └── TargetPort: *int
+│ │ │ ├── AllowInsecure: *bool
+│ │ │ ├── ClientCertificateMode: *string
+│ │ │ ├── CorsPolicy: *Object (7 properties)
+│ │ │ │ ├── AllowCredentials: *bool
+│ │ │ │ ├── AllowedHeaders: string[]
+│ │ │ │ ├── AllowedMethods: string[]
+│ │ │ │ ├── AllowedOrigins: string[]
+│ │ │ │ ├── ExposeHeaders: string[]
+│ │ │ │ ├── MaxAge: *int
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── CustomDomains: Object (4 properties)[]
+│ │ │ │ ├── BindingType: *string
+│ │ │ │ ├── CertificateReference: *genruntime.ResourceReference
+│ │ │ │ ├── Name: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── ExposedPort: *int
+│ │ │ ├── External: *bool
+│ │ │ ├── IpSecurityRestrictions: Object (5 properties)[]
+│ │ │ │ ├── Action: *string
+│ │ │ │ ├── Description: *string
+│ │ │ │ ├── IpAddressRange: *string
+│ │ │ │ ├── Name: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── StickySessions: *Object (2 properties)
+│ │ │ │ ├── Affinity: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── TargetPort: *int
+│ │ │ ├── Traffic: Object (5 properties)[]
+│ │ │ │ ├── Label: *string
+│ │ │ │ ├── LatestRevision: *bool
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── RevisionName: *string
+│ │ │ │ └── Weight: *int
+│ │ │ └── Transport: *string
+│ │ ├── MaxInactiveRevisions: *int
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── Registries: Object (5 properties)[]
+│ │ │ ├── IdentityReference: *genruntime.ResourceReference
+│ │ │ ├── PasswordSecretRef: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Server: *string
+│ │ │ └── Username: *string
+│ │ ├── Secrets: Object (5 properties)[]
+│ │ │ ├── IdentityReference: *genruntime.ResourceReference
+│ │ │ ├── KeyVaultUrl: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Value: *genruntime.SecretReference
+│ │ └── Service: *Object (2 properties)
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── Type: *string
+│ ├── EnvironmentReference: *genruntime.ResourceReference
+│ ├── ExtendedLocation: *Object (3 properties)
+│ │ ├── Name: *string
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── Type: *string
+│ ├── Identity: *Object (3 properties)
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── Type: *string
+│ │ └── UserAssignedIdentities: Object (2 properties)[]
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── Reference: genruntime.ResourceReference
+│ ├── Location: *string
+│ ├── ManagedByReference: *genruntime.ResourceReference
+│ ├── ManagedEnvironmentReference: *genruntime.ResourceReference
+│ ├── OperatorSpec: *Object (4 properties)
+│ │ ├── ConfigMapExpressions: *core.DestinationExpression[]
+│ │ ├── ConfigMaps: *Object (3 properties)
+│ │ │ ├── EventStreamEndpoint: *genruntime.ConfigMapDestination
+│ │ │ ├── Fqdn: *genruntime.ConfigMapDestination
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── SecretExpressions: *core.DestinationExpression[]
+│ ├── OriginalVersion: string
+│ ├── Owner: *genruntime.KnownResourceReference
+│ ├── PropertyBag: genruntime.PropertyBag
+│ ├── Tags: map[string]string
+│ ├── Template: *Object (8 properties)
+│ │ ├── Containers: Object (9 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (4 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Probes: Object (10 properties)[]
+│ │ │ │ ├── FailureThreshold: *int
+│ │ │ │ ├── HttpGet: *Object (6 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── HttpHeaders: Object (3 properties)[]
+│ │ │ │ │ │ ├── Name: *string
+│ │ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ │ │ └── Value: *string
+│ │ │ │ │ ├── Path: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ │ └── Scheme: *string
+│ │ │ │ ├── InitialDelaySeconds: *int
+│ │ │ │ ├── PeriodSeconds: *int
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── SuccessThreshold: *int
+│ │ │ │ ├── TcpSocket: *Object (3 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── TerminationGracePeriodSeconds: *int
+│ │ │ │ ├── TimeoutSeconds: *int
+│ │ │ │ └── Type: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Resources: *Object (3 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ ├── Memory: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ └── VolumeMounts: Object (4 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── InitContainers: Object (8 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (4 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Resources: *Object (3 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ ├── Memory: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ └── VolumeMounts: Object (4 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── RevisionSuffix: *string
+│ │ ├── Scale: *Object (4 properties)
+│ │ │ ├── MaxReplicas: *int
+│ │ │ ├── MinReplicas: *int
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Rules: Object (6 properties)[]
+│ │ │ ├── AzureQueue: *Object (4 properties)
+│ │ │ │ ├── Auth: Object (3 properties)[]
+│ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── QueueLength: *int
+│ │ │ │ └── QueueName: *string
+│ │ │ ├── Custom: *Object (4 properties)
+│ │ │ │ ├── Auth: Object (3 properties)[]
+│ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── Metadata: map[string]string
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ └── Type: *string
+│ │ │ ├── Http: *Object (3 properties)
+│ │ │ │ ├── Auth: Object (3 properties)[]
+│ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── Metadata: map[string]string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Name: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Tcp: *Object (3 properties)
+│ │ │ ├── Auth: Object (3 properties)[]
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── TriggerParameter: *string
+│ │ │ ├── Metadata: map[string]string
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ ├── ServiceBinds: Object (3 properties)[]
+│ │ │ ├── Name: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── ServiceReference: *genruntime.ResourceReference
+│ │ ├── TerminationGracePeriodSeconds: *int
+│ │ └── Volumes: Object (6 properties)[]
+│ │ ├── MountOptions: *string
+│ │ ├── Name: *string
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── Secrets: Object (3 properties)[]
+│ │ │ ├── Path: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── SecretRef: *string
+│ │ ├── StorageName: *string
+│ │ └── StorageType: *string
+│ └── WorkloadProfileName: *string
+└── Status: Object (23 properties)
+ ├── Conditions: conditions.Condition[]
+ ├── Configuration: *Object (8 properties)
+ │ ├── ActiveRevisionsMode: *string
+ │ ├── Dapr: *Object (9 properties)
+ │ │ ├── AppId: *string
+ │ │ ├── AppPort: *int
+ │ │ ├── AppProtocol: *string
+ │ │ ├── EnableApiLogging: *bool
+ │ │ ├── Enabled: *bool
+ │ │ ├── HttpMaxRequestSize: *int
+ │ │ ├── HttpReadBufferSize: *int
+ │ │ ├── LogLevel: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── Ingress: *Object (14 properties)
+ │ │ ├── AdditionalPortMappings: Object (4 properties)[]
+ │ │ │ ├── ExposedPort: *int
+ │ │ │ ├── External: *bool
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ └── TargetPort: *int
+ │ │ ├── AllowInsecure: *bool
+ │ │ ├── ClientCertificateMode: *string
+ │ │ ├── CorsPolicy: *Object (7 properties)
+ │ │ │ ├── AllowCredentials: *bool
+ │ │ │ ├── AllowedHeaders: string[]
+ │ │ │ ├── AllowedMethods: string[]
+ │ │ │ ├── AllowedOrigins: string[]
+ │ │ │ ├── ExposeHeaders: string[]
+ │ │ │ ├── MaxAge: *int
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ ├── CustomDomains: Object (4 properties)[]
+ │ │ │ ├── BindingType: *string
+ │ │ │ ├── CertificateId: *string
+ │ │ │ ├── Name: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ ├── ExposedPort: *int
+ │ │ ├── External: *bool
+ │ │ ├── Fqdn: *string
+ │ │ ├── IpSecurityRestrictions: Object (5 properties)[]
+ │ │ │ ├── Action: *string
+ │ │ │ ├── Description: *string
+ │ │ │ ├── IpAddressRange: *string
+ │ │ │ ├── Name: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── StickySessions: *Object (2 properties)
+ │ │ │ ├── Affinity: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ ├── TargetPort: *int
+ │ │ ├── Traffic: Object (5 properties)[]
+ │ │ │ ├── Label: *string
+ │ │ │ ├── LatestRevision: *bool
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── RevisionName: *string
+ │ │ │ └── Weight: *int
+ │ │ └── Transport: *string
+ │ ├── MaxInactiveRevisions: *int
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── Registries: Object (5 properties)[]
+ │ │ ├── Identity: *string
+ │ │ ├── PasswordSecretRef: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Server: *string
+ │ │ └── Username: *string
+ │ ├── Secrets: Object (4 properties)[]
+ │ │ ├── Identity: *string
+ │ │ ├── KeyVaultUrl: *string
+ │ │ ├── Name: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ └── Service: *Object (2 properties)
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── Type: *string
+ ├── CustomDomainVerificationId: *string
+ ├── EnvironmentId: *string
+ ├── EventStreamEndpoint: *string
+ ├── ExtendedLocation: *Object (3 properties)
+ │ ├── Name: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── Type: *string
+ ├── Id: *string
+ ├── Identity: *Object (5 properties)
+ │ ├── PrincipalId: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── TenantId: *string
+ │ ├── Type: *string
+ │ └── UserAssignedIdentities: map[string]Object (3 properties)
+ │ ├── ClientId: *string
+ │ ├── PrincipalId: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── LatestReadyRevisionName: *string
+ ├── LatestRevisionFqdn: *string
+ ├── LatestRevisionName: *string
+ ├── Location: *string
+ ├── ManagedBy: *string
+ ├── ManagedEnvironmentId: *string
+ ├── Name: *string
+ ├── OutboundIpAddresses: string[]
+ ├── PropertyBag: genruntime.PropertyBag
+ ├── ProvisioningState: *string
+ ├── SystemData: *Object (7 properties)
+ │ ├── CreatedAt: *string
+ │ ├── CreatedBy: *string
+ │ ├── CreatedByType: *string
+ │ ├── LastModifiedAt: *string
+ │ ├── LastModifiedBy: *string
+ │ ├── LastModifiedByType: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── Tags: map[string]string
+ ├── Template: *Object (8 properties)
+ │ ├── Containers: Object (9 properties)[]
+ │ │ ├── Args: string[]
+ │ │ ├── Command: string[]
+ │ │ ├── Env: Object (4 properties)[]
+ │ │ │ ├── Name: *string
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── Value: *string
+ │ │ ├── Image: *string
+ │ │ ├── Name: *string
+ │ │ ├── Probes: Object (10 properties)[]
+ │ │ │ ├── FailureThreshold: *int
+ │ │ │ ├── HttpGet: *Object (6 properties)
+ │ │ │ │ ├── Host: *string
+ │ │ │ │ ├── HttpHeaders: Object (3 properties)[]
+ │ │ │ │ │ ├── Name: *string
+ │ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ │ │ └── Value: *string
+ │ │ │ │ ├── Path: *string
+ │ │ │ │ ├── Port: *int
+ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ │ └── Scheme: *string
+ │ │ │ ├── InitialDelaySeconds: *int
+ │ │ │ ├── PeriodSeconds: *int
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── SuccessThreshold: *int
+ │ │ │ ├── TcpSocket: *Object (3 properties)
+ │ │ │ │ ├── Host: *string
+ │ │ │ │ ├── Port: *int
+ │ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── TerminationGracePeriodSeconds: *int
+ │ │ │ ├── TimeoutSeconds: *int
+ │ │ │ └── Type: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Resources: *Object (4 properties)
+ │ │ │ ├── Cpu: *float64
+ │ │ │ ├── EphemeralStorage: *string
+ │ │ │ ├── Memory: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ └── VolumeMounts: Object (4 properties)[]
+ │ │ ├── MountPath: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── SubPath: *string
+ │ │ └── VolumeName: *string
+ │ ├── InitContainers: Object (8 properties)[]
+ │ │ ├── Args: string[]
+ │ │ ├── Command: string[]
+ │ │ ├── Env: Object (4 properties)[]
+ │ │ │ ├── Name: *string
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── Value: *string
+ │ │ ├── Image: *string
+ │ │ ├── Name: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Resources: *Object (4 properties)
+ │ │ │ ├── Cpu: *float64
+ │ │ │ ├── EphemeralStorage: *string
+ │ │ │ ├── Memory: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ └── VolumeMounts: Object (4 properties)[]
+ │ │ ├── MountPath: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── SubPath: *string
+ │ │ └── VolumeName: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── RevisionSuffix: *string
+ │ ├── Scale: *Object (4 properties)
+ │ │ ├── MaxReplicas: *int
+ │ │ ├── MinReplicas: *int
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Rules: Object (6 properties)[]
+ │ │ ├── AzureQueue: *Object (4 properties)
+ │ │ │ ├── Auth: Object (3 properties)[]
+ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ │ ├── SecretRef: *string
+ │ │ │ │ └── TriggerParameter: *string
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── QueueLength: *int
+ │ │ │ └── QueueName: *string
+ │ │ ├── Custom: *Object (4 properties)
+ │ │ │ ├── Auth: Object (3 properties)[]
+ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ │ ├── SecretRef: *string
+ │ │ │ │ └── TriggerParameter: *string
+ │ │ │ ├── Metadata: map[string]string
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ └── Type: *string
+ │ │ ├── Http: *Object (3 properties)
+ │ │ │ ├── Auth: Object (3 properties)[]
+ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ │ ├── SecretRef: *string
+ │ │ │ │ └── TriggerParameter: *string
+ │ │ │ ├── Metadata: map[string]string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Name: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Tcp: *Object (3 properties)
+ │ │ ├── Auth: Object (3 properties)[]
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── TriggerParameter: *string
+ │ │ ├── Metadata: map[string]string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ ├── ServiceBinds: Object (3 properties)[]
+ │ │ ├── Name: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── ServiceId: *string
+ │ ├── TerminationGracePeriodSeconds: *int
+ │ └── Volumes: Object (6 properties)[]
+ │ ├── MountOptions: *string
+ │ ├── Name: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── Secrets: Object (3 properties)[]
+ │ │ ├── Path: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── SecretRef: *string
+ │ ├── StorageName: *string
+ │ └── StorageType: *string
+ ├── Type: *string
+ └── WorkloadProfileName: *string
+Job: Resource
+├── Owner: resources/v1apiv20191001.ResourceGroup
+├── Spec: Object (12 properties)
+│ ├── AzureName: string
+│ ├── Configuration: *Object (9 properties)
+│ │ ├── EventTriggerConfig: *Object (4 properties)
+│ │ │ ├── Parallelism: *int
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── ReplicaCompletionCount: *int
+│ │ │ └── Scale: *Object (5 properties)
+│ │ │ ├── MaxExecutions: *int
+│ │ │ ├── MinExecutions: *int
+│ │ │ ├── PollingInterval: *int
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Rules: Object (5 properties)[]
+│ │ │ ├── Auth: Object (3 properties)[]
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── TriggerParameter: *string
+│ │ │ ├── Metadata: map[string]v1.JSON
+│ │ │ ├── Name: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Type: *string
+│ │ ├── ManualTriggerConfig: *Object (3 properties)
+│ │ │ ├── Parallelism: *int
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── ReplicaCompletionCount: *int
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── Registries: Object (5 properties)[]
+│ │ │ ├── IdentityReference: *genruntime.ResourceReference
+│ │ │ ├── PasswordSecretRef: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Server: *string
+│ │ │ └── Username: *string
+│ │ ├── ReplicaRetryLimit: *int
+│ │ ├── ReplicaTimeout: *int
+│ │ ├── ScheduleTriggerConfig: *Object (4 properties)
+│ │ │ ├── CronExpression: *string
+│ │ │ ├── Parallelism: *int
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── ReplicaCompletionCount: *int
+│ │ ├── Secrets: Object (5 properties)[]
+│ │ │ ├── IdentityReference: *genruntime.ResourceReference
+│ │ │ ├── KeyVaultUrl: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── Value: *genruntime.SecretReference
+│ │ └── TriggerType: *string
+│ ├── EnvironmentReference: *genruntime.ResourceReference
+│ ├── Identity: *Object (3 properties)
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── Type: *string
+│ │ └── UserAssignedIdentities: Object (2 properties)[]
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── Reference: genruntime.ResourceReference
+│ ├── Location: *string
+│ ├── OperatorSpec: *Object (3 properties)
+│ │ ├── ConfigMapExpressions: *core.DestinationExpression[]
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── SecretExpressions: *core.DestinationExpression[]
+│ ├── OriginalVersion: string
+│ ├── Owner: *genruntime.KnownResourceReference
+│ ├── PropertyBag: genruntime.PropertyBag
+│ ├── Tags: map[string]string
+│ ├── Template: *Object (4 properties)
+│ │ ├── Containers: Object (9 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (4 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Probes: Object (10 properties)[]
+│ │ │ │ ├── FailureThreshold: *int
+│ │ │ │ ├── HttpGet: *Object (6 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── HttpHeaders: Object (3 properties)[]
+│ │ │ │ │ │ ├── Name: *string
+│ │ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ │ │ └── Value: *string
+│ │ │ │ │ ├── Path: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ │ └── Scheme: *string
+│ │ │ │ ├── InitialDelaySeconds: *int
+│ │ │ │ ├── PeriodSeconds: *int
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── SuccessThreshold: *int
+│ │ │ │ ├── TcpSocket: *Object (3 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── TerminationGracePeriodSeconds: *int
+│ │ │ │ ├── TimeoutSeconds: *int
+│ │ │ │ └── Type: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Resources: *Object (3 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ ├── Memory: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ └── VolumeMounts: Object (4 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── InitContainers: Object (8 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (4 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── Resources: *Object (3 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ ├── Memory: *string
+│ │ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ │ └── VolumeMounts: Object (4 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── Volumes: Object (6 properties)[]
+│ │ ├── MountOptions: *string
+│ │ ├── Name: *string
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ ├── Secrets: Object (3 properties)[]
+│ │ │ ├── Path: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── SecretRef: *string
+│ │ ├── StorageName: *string
+│ │ └── StorageType: *string
+│ └── WorkloadProfileName: *string
+└── Status: Object (16 properties)
+ ├── Conditions: conditions.Condition[]
+ ├── Configuration: *Object (9 properties)
+ │ ├── EventTriggerConfig: *Object (4 properties)
+ │ │ ├── Parallelism: *int
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── ReplicaCompletionCount: *int
+ │ │ └── Scale: *Object (5 properties)
+ │ │ ├── MaxExecutions: *int
+ │ │ ├── MinExecutions: *int
+ │ │ ├── PollingInterval: *int
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Rules: Object (5 properties)[]
+ │ │ ├── Auth: Object (3 properties)[]
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── TriggerParameter: *string
+ │ │ ├── Metadata: map[string]v1.JSON
+ │ │ ├── Name: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── Type: *string
+ │ ├── ManualTriggerConfig: *Object (3 properties)
+ │ │ ├── Parallelism: *int
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── ReplicaCompletionCount: *int
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── Registries: Object (5 properties)[]
+ │ │ ├── Identity: *string
+ │ │ ├── PasswordSecretRef: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Server: *string
+ │ │ └── Username: *string
+ │ ├── ReplicaRetryLimit: *int
+ │ ├── ReplicaTimeout: *int
+ │ ├── ScheduleTriggerConfig: *Object (4 properties)
+ │ │ ├── CronExpression: *string
+ │ │ ├── Parallelism: *int
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── ReplicaCompletionCount: *int
+ │ ├── Secrets: Object (4 properties)[]
+ │ │ ├── Identity: *string
+ │ │ ├── KeyVaultUrl: *string
+ │ │ ├── Name: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ └── TriggerType: *string
+ ├── EnvironmentId: *string
+ ├── EventStreamEndpoint: *string
+ ├── Id: *string
+ ├── Identity: *Object (5 properties)
+ │ ├── PrincipalId: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── TenantId: *string
+ │ ├── Type: *string
+ │ └── UserAssignedIdentities: map[string]Object (3 properties)
+ │ ├── ClientId: *string
+ │ ├── PrincipalId: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── Location: *string
+ ├── Name: *string
+ ├── OutboundIpAddresses: string[]
+ ├── PropertyBag: genruntime.PropertyBag
+ ├── ProvisioningState: *string
+ ├── SystemData: *Object (7 properties)
+ │ ├── CreatedAt: *string
+ │ ├── CreatedBy: *string
+ │ ├── CreatedByType: *string
+ │ ├── LastModifiedAt: *string
+ │ ├── LastModifiedBy: *string
+ │ ├── LastModifiedByType: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── Tags: map[string]string
+ ├── Template: *Object (4 properties)
+ │ ├── Containers: Object (9 properties)[]
+ │ │ ├── Args: string[]
+ │ │ ├── Command: string[]
+ │ │ ├── Env: Object (4 properties)[]
+ │ │ │ ├── Name: *string
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── Value: *string
+ │ │ ├── Image: *string
+ │ │ ├── Name: *string
+ │ │ ├── Probes: Object (10 properties)[]
+ │ │ │ ├── FailureThreshold: *int
+ │ │ │ ├── HttpGet: *Object (6 properties)
+ │ │ │ │ ├── Host: *string
+ │ │ │ │ ├── HttpHeaders: Object (3 properties)[]
+ │ │ │ │ │ ├── Name: *string
+ │ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ │ │ └── Value: *string
+ │ │ │ │ ├── Path: *string
+ │ │ │ │ ├── Port: *int
+ │ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ │ └── Scheme: *string
+ │ │ │ ├── InitialDelaySeconds: *int
+ │ │ │ ├── PeriodSeconds: *int
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── SuccessThreshold: *int
+ │ │ │ ├── TcpSocket: *Object (3 properties)
+ │ │ │ │ ├── Host: *string
+ │ │ │ │ ├── Port: *int
+ │ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── TerminationGracePeriodSeconds: *int
+ │ │ │ ├── TimeoutSeconds: *int
+ │ │ │ └── Type: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Resources: *Object (4 properties)
+ │ │ │ ├── Cpu: *float64
+ │ │ │ ├── EphemeralStorage: *string
+ │ │ │ ├── Memory: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ └── VolumeMounts: Object (4 properties)[]
+ │ │ ├── MountPath: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── SubPath: *string
+ │ │ └── VolumeName: *string
+ │ ├── InitContainers: Object (8 properties)[]
+ │ │ ├── Args: string[]
+ │ │ ├── Command: string[]
+ │ │ ├── Env: Object (4 properties)[]
+ │ │ │ ├── Name: *string
+ │ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── Value: *string
+ │ │ ├── Image: *string
+ │ │ ├── Name: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── Resources: *Object (4 properties)
+ │ │ │ ├── Cpu: *float64
+ │ │ │ ├── EphemeralStorage: *string
+ │ │ │ ├── Memory: *string
+ │ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ │ └── VolumeMounts: Object (4 properties)[]
+ │ │ ├── MountPath: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ ├── SubPath: *string
+ │ │ └── VolumeName: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── Volumes: Object (6 properties)[]
+ │ ├── MountOptions: *string
+ │ ├── Name: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── Secrets: Object (3 properties)[]
+ │ │ ├── Path: *string
+ │ │ ├── PropertyBag: genruntime.PropertyBag
+ │ │ └── SecretRef: *string
+ │ ├── StorageName: *string
+ │ └── StorageType: *string
+ ├── Type: *string
+ └── WorkloadProfileName: *string
+ManagedEnvironment: Resource
+├── Owner: resources/v1apiv20191001.ResourceGroup
+├── Spec: Object (18 properties)
+│ ├── AppLogsConfiguration: *Object (3 properties)
+│ │ ├── Destination: *string
+│ │ ├── LogAnalyticsConfiguration: *Object (3 properties)
+│ │ │ ├── CustomerId: *string
+│ │ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ │ └── SharedKey: *genruntime.SecretReference
+│ │ └── PropertyBag: genruntime.PropertyBag
+│ ├── AzureName: string
+│ ├── CustomDomainConfiguration: *Object (4 properties)
+│ │ ├── CertificatePassword: *genruntime.SecretReference
+│ │ ├── CertificateValue: *genruntime.SecretReference
+│ │ ├── DnsSuffix: *string
+│ │ └── PropertyBag: genruntime.PropertyBag
+│ ├── DaprAIConnectionString: *genruntime.SecretReference
+│ ├── DaprAIInstrumentationKey: *genruntime.SecretReference
+│ ├── InfrastructureResourceGroup: *string
+│ ├── Kind: *string
+│ ├── Location: *string
+│ ├── OperatorSpec: *Object (3 properties)
+│ │ ├── ConfigMapExpressions: *core.DestinationExpression[]
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── SecretExpressions: *core.DestinationExpression[]
+│ ├── OriginalVersion: string
+│ ├── Owner: *genruntime.KnownResourceReference
+│ ├── PeerAuthentication: *Object (2 properties)
+│ │ ├── Mtls: *Object (2 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ └── PropertyBag: genruntime.PropertyBag
+│ ├── PeerTrafficConfiguration: *Object (2 properties)
+│ │ ├── Encryption: *Object (2 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ └── PropertyBag: genruntime.PropertyBag
+│ │ └── PropertyBag: genruntime.PropertyBag
+│ ├── PropertyBag: genruntime.PropertyBag
+│ ├── Tags: map[string]string
+│ ├── VnetConfiguration: *Object (6 properties)
+│ │ ├── DockerBridgeCidr: *string
+│ │ ├── InfrastructureSubnetReference: *genruntime.ResourceReference
+│ │ ├── Internal: *bool
+│ │ ├── PlatformReservedCidr: *string
+│ │ ├── PlatformReservedDnsIP: *string
+│ │ └── PropertyBag: genruntime.PropertyBag
+│ ├── WorkloadProfiles: Object (5 properties)[]
+│ │ ├── MaximumCount: *int
+│ │ ├── MinimumCount: *int
+│ │ ├── Name: *string
+│ │ ├── PropertyBag: genruntime.PropertyBag
+│ │ └── WorkloadProfileType: *string
+│ └── ZoneRedundant: *bool
+└── Status: Object (24 properties)
+ ├── AppLogsConfiguration: *Object (3 properties)
+ │ ├── Destination: *string
+ │ ├── LogAnalyticsConfiguration: *Object (2 properties)
+ │ │ ├── CustomerId: *string
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── Conditions: conditions.Condition[]
+ ├── CustomDomainConfiguration: *Object (6 properties)
+ │ ├── CustomDomainVerificationId: *string
+ │ ├── DnsSuffix: *string
+ │ ├── ExpirationDate: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ ├── SubjectName: *string
+ │ └── Thumbprint: *string
+ ├── DaprConfiguration: *Object (2 properties)
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── Version: *string
+ ├── DefaultDomain: *string
+ ├── DeploymentErrors: *string
+ ├── EventStreamEndpoint: *string
+ ├── Id: *string
+ ├── InfrastructureResourceGroup: *string
+ ├── KedaConfiguration: *Object (2 properties)
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── Version: *string
+ ├── Kind: *string
+ ├── Location: *string
+ ├── Name: *string
+ ├── PeerAuthentication: *Object (2 properties)
+ │ ├── Mtls: *Object (2 properties)
+ │ │ ├── Enabled: *bool
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── PeerTrafficConfiguration: *Object (2 properties)
+ │ ├── Encryption: *Object (2 properties)
+ │ │ ├── Enabled: *bool
+ │ │ └── PropertyBag: genruntime.PropertyBag
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── PropertyBag: genruntime.PropertyBag
+ ├── ProvisioningState: *string
+ ├── StaticIp: *string
+ ├── 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
+ ├── VnetConfiguration: *Object (6 properties)
+ │ ├── DockerBridgeCidr: *string
+ │ ├── InfrastructureSubnetId: *string
+ │ ├── Internal: *bool
+ │ ├── PlatformReservedCidr: *string
+ │ ├── PlatformReservedDnsIP: *string
+ │ └── PropertyBag: genruntime.PropertyBag
+ ├── WorkloadProfiles: Object (5 properties)[]
+ │ ├── MaximumCount: *int
+ │ ├── MinimumCount: *int
+ │ ├── Name: *string
+ │ ├── PropertyBag: genruntime.PropertyBag
+ │ └── WorkloadProfileType: *string
+ └── ZoneRedundant: *bool
diff --git a/v2/api/app/v1api20240301/storage/zz_generated.deepcopy.go b/v2/api/app/v1api20240301/storage/zz_generated.deepcopy.go
new file mode 100644
index 00000000000..63afcd61874
--- /dev/null
+++ b/v2/api/app/v1api20240301/storage/zz_generated.deepcopy.go
@@ -0,0 +1,8315 @@
+//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"
+ "github.com/Azure/azure-service-operator/v2/pkg/genruntime/core"
+ "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
+ 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 *AllowedAudiencesValidation) DeepCopyInto(out *AllowedAudiencesValidation) {
+ *out = *in
+ if in.AllowedAudiences != nil {
+ in, out := &in.AllowedAudiences, &out.AllowedAudiences
+ *out = make([]string, len(*in))
+ copy(*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 AllowedAudiencesValidation.
+func (in *AllowedAudiencesValidation) DeepCopy() *AllowedAudiencesValidation {
+ if in == nil {
+ return nil
+ }
+ out := new(AllowedAudiencesValidation)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AllowedAudiencesValidation_STATUS) DeepCopyInto(out *AllowedAudiencesValidation_STATUS) {
+ *out = *in
+ if in.AllowedAudiences != nil {
+ in, out := &in.AllowedAudiences, &out.AllowedAudiences
+ *out = make([]string, len(*in))
+ copy(*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 AllowedAudiencesValidation_STATUS.
+func (in *AllowedAudiencesValidation_STATUS) DeepCopy() *AllowedAudiencesValidation_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AllowedAudiencesValidation_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 *AllowedPrincipals) DeepCopyInto(out *AllowedPrincipals) {
+ *out = *in
+ if in.Groups != nil {
+ in, out := &in.Groups, &out.Groups
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Identities != nil {
+ in, out := &in.Identities, &out.Identities
+ *out = make([]string, len(*in))
+ copy(*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 AllowedPrincipals.
+func (in *AllowedPrincipals) DeepCopy() *AllowedPrincipals {
+ if in == nil {
+ return nil
+ }
+ out := new(AllowedPrincipals)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AllowedPrincipals_STATUS) DeepCopyInto(out *AllowedPrincipals_STATUS) {
+ *out = *in
+ if in.Groups != nil {
+ in, out := &in.Groups, &out.Groups
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Identities != nil {
+ in, out := &in.Identities, &out.Identities
+ *out = make([]string, len(*in))
+ copy(*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 AllowedPrincipals_STATUS.
+func (in *AllowedPrincipals_STATUS) DeepCopy() *AllowedPrincipals_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AllowedPrincipals_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 *AppLogsConfiguration) DeepCopyInto(out *AppLogsConfiguration) {
+ *out = *in
+ if in.Destination != nil {
+ in, out := &in.Destination, &out.Destination
+ *out = new(string)
+ **out = **in
+ }
+ if in.LogAnalyticsConfiguration != nil {
+ in, out := &in.LogAnalyticsConfiguration, &out.LogAnalyticsConfiguration
+ *out = new(LogAnalyticsConfiguration)
+ (*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 AppLogsConfiguration.
+func (in *AppLogsConfiguration) DeepCopy() *AppLogsConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(AppLogsConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AppLogsConfiguration_STATUS) DeepCopyInto(out *AppLogsConfiguration_STATUS) {
+ *out = *in
+ if in.Destination != nil {
+ in, out := &in.Destination, &out.Destination
+ *out = new(string)
+ **out = **in
+ }
+ if in.LogAnalyticsConfiguration != nil {
+ in, out := &in.LogAnalyticsConfiguration, &out.LogAnalyticsConfiguration
+ *out = new(LogAnalyticsConfiguration_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 AppLogsConfiguration_STATUS.
+func (in *AppLogsConfiguration_STATUS) DeepCopy() *AppLogsConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AppLogsConfiguration_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 *AppRegistration) DeepCopyInto(out *AppRegistration) {
+ *out = *in
+ if in.AppId != nil {
+ in, out := &in.AppId, &out.AppId
+ *out = new(string)
+ **out = **in
+ }
+ if in.AppSecretSettingName != nil {
+ in, out := &in.AppSecretSettingName, &out.AppSecretSettingName
+ *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 AppRegistration.
+func (in *AppRegistration) DeepCopy() *AppRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(AppRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AppRegistration_STATUS) DeepCopyInto(out *AppRegistration_STATUS) {
+ *out = *in
+ if in.AppId != nil {
+ in, out := &in.AppId, &out.AppId
+ *out = new(string)
+ **out = **in
+ }
+ if in.AppSecretSettingName != nil {
+ in, out := &in.AppSecretSettingName, &out.AppSecretSettingName
+ *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 AppRegistration_STATUS.
+func (in *AppRegistration_STATUS) DeepCopy() *AppRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AppRegistration_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 *Apple) DeepCopyInto(out *Apple) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes)
+ (*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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AppleRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Apple.
+func (in *Apple) DeepCopy() *Apple {
+ if in == nil {
+ return nil
+ }
+ out := new(Apple)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AppleRegistration) DeepCopyInto(out *AppleRegistration) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *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 AppleRegistration.
+func (in *AppleRegistration) DeepCopy() *AppleRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(AppleRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AppleRegistration_STATUS) DeepCopyInto(out *AppleRegistration_STATUS) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *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 AppleRegistration_STATUS.
+func (in *AppleRegistration_STATUS) DeepCopy() *AppleRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AppleRegistration_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 *Apple_STATUS) DeepCopyInto(out *Apple_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes_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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AppleRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Apple_STATUS.
+func (in *Apple_STATUS) DeepCopy() *Apple_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Apple_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 *AuthConfig) DeepCopyInto(out *AuthConfig) {
+ *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 AuthConfig.
+func (in *AuthConfig) DeepCopy() *AuthConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *AuthConfig) 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 *AuthConfigList) DeepCopyInto(out *AuthConfigList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]AuthConfig, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfigList.
+func (in *AuthConfigList) DeepCopy() *AuthConfigList {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfigList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *AuthConfigList) 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 *AuthConfigOperatorSpec) DeepCopyInto(out *AuthConfigOperatorSpec) {
+ *out = *in
+ if in.ConfigMapExpressions != nil {
+ in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **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.SecretExpressions != nil {
+ in, out := &in.SecretExpressions, &out.SecretExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfigOperatorSpec.
+func (in *AuthConfigOperatorSpec) DeepCopy() *AuthConfigOperatorSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfigOperatorSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AuthConfig_STATUS) DeepCopyInto(out *AuthConfig_STATUS) {
+ *out = *in
+ if in.Conditions != nil {
+ in, out := &in.Conditions, &out.Conditions
+ *out = make([]conditions.Condition, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.EncryptionSettings != nil {
+ in, out := &in.EncryptionSettings, &out.EncryptionSettings
+ *out = new(EncryptionSettings_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.GlobalValidation != nil {
+ in, out := &in.GlobalValidation, &out.GlobalValidation
+ *out = new(GlobalValidation_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.HttpSettings != nil {
+ in, out := &in.HttpSettings, &out.HttpSettings
+ *out = new(HttpSettings_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Id != nil {
+ in, out := &in.Id, &out.Id
+ *out = new(string)
+ **out = **in
+ }
+ if in.IdentityProviders != nil {
+ in, out := &in.IdentityProviders, &out.IdentityProviders
+ *out = new(IdentityProviders_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(Login_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Platform != nil {
+ in, out := &in.Platform, &out.Platform
+ *out = new(AuthPlatform_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.SystemData != nil {
+ in, out := &in.SystemData, &out.SystemData
+ *out = new(SystemData_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfig_STATUS.
+func (in *AuthConfig_STATUS) DeepCopy() *AuthConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfig_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 *AuthConfig_Spec) DeepCopyInto(out *AuthConfig_Spec) {
+ *out = *in
+ if in.EncryptionSettings != nil {
+ in, out := &in.EncryptionSettings, &out.EncryptionSettings
+ *out = new(EncryptionSettings)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.GlobalValidation != nil {
+ in, out := &in.GlobalValidation, &out.GlobalValidation
+ *out = new(GlobalValidation)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.HttpSettings != nil {
+ in, out := &in.HttpSettings, &out.HttpSettings
+ *out = new(HttpSettings)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.IdentityProviders != nil {
+ in, out := &in.IdentityProviders, &out.IdentityProviders
+ *out = new(IdentityProviders)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(Login)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.OperatorSpec != nil {
+ in, out := &in.OperatorSpec, &out.OperatorSpec
+ *out = new(AuthConfigOperatorSpec)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Owner != nil {
+ in, out := &in.Owner, &out.Owner
+ *out = new(genruntime.KnownResourceReference)
+ **out = **in
+ }
+ if in.Platform != nil {
+ in, out := &in.Platform, &out.Platform
+ *out = new(AuthPlatform)
+ (*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 AuthConfig_Spec.
+func (in *AuthConfig_Spec) DeepCopy() *AuthConfig_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfig_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 *AuthPlatform) DeepCopyInto(out *AuthPlatform) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.RuntimeVersion != nil {
+ in, out := &in.RuntimeVersion, &out.RuntimeVersion
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthPlatform.
+func (in *AuthPlatform) DeepCopy() *AuthPlatform {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthPlatform)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AuthPlatform_STATUS) DeepCopyInto(out *AuthPlatform_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.RuntimeVersion != nil {
+ in, out := &in.RuntimeVersion, &out.RuntimeVersion
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthPlatform_STATUS.
+func (in *AuthPlatform_STATUS) DeepCopy() *AuthPlatform_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthPlatform_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 *AzureActiveDirectory) DeepCopyInto(out *AzureActiveDirectory) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.IsAutoProvisioned != nil {
+ in, out := &in.IsAutoProvisioned, &out.IsAutoProvisioned
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(AzureActiveDirectoryLogin)
+ (*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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AzureActiveDirectoryRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Validation != nil {
+ in, out := &in.Validation, &out.Validation
+ *out = new(AzureActiveDirectoryValidation)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectory.
+func (in *AzureActiveDirectory) DeepCopy() *AzureActiveDirectory {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectory)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureActiveDirectoryLogin) DeepCopyInto(out *AzureActiveDirectoryLogin) {
+ *out = *in
+ if in.DisableWWWAuthenticate != nil {
+ in, out := &in.DisableWWWAuthenticate, &out.DisableWWWAuthenticate
+ *out = new(bool)
+ **out = **in
+ }
+ if in.LoginParameters != nil {
+ in, out := &in.LoginParameters, &out.LoginParameters
+ *out = make([]string, len(*in))
+ copy(*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 AzureActiveDirectoryLogin.
+func (in *AzureActiveDirectoryLogin) DeepCopy() *AzureActiveDirectoryLogin {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryLogin)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureActiveDirectoryLogin_STATUS) DeepCopyInto(out *AzureActiveDirectoryLogin_STATUS) {
+ *out = *in
+ if in.DisableWWWAuthenticate != nil {
+ in, out := &in.DisableWWWAuthenticate, &out.DisableWWWAuthenticate
+ *out = new(bool)
+ **out = **in
+ }
+ if in.LoginParameters != nil {
+ in, out := &in.LoginParameters, &out.LoginParameters
+ *out = make([]string, len(*in))
+ copy(*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 AzureActiveDirectoryLogin_STATUS.
+func (in *AzureActiveDirectoryLogin_STATUS) DeepCopy() *AzureActiveDirectoryLogin_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryLogin_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 *AzureActiveDirectoryRegistration) DeepCopyInto(out *AzureActiveDirectoryRegistration) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateIssuer != nil {
+ in, out := &in.ClientSecretCertificateIssuer, &out.ClientSecretCertificateIssuer
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateSubjectAlternativeName != nil {
+ in, out := &in.ClientSecretCertificateSubjectAlternativeName, &out.ClientSecretCertificateSubjectAlternativeName
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateThumbprint != nil {
+ in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+ if in.OpenIdIssuer != nil {
+ in, out := &in.OpenIdIssuer, &out.OpenIdIssuer
+ *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 AzureActiveDirectoryRegistration.
+func (in *AzureActiveDirectoryRegistration) DeepCopy() *AzureActiveDirectoryRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureActiveDirectoryRegistration_STATUS) DeepCopyInto(out *AzureActiveDirectoryRegistration_STATUS) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateIssuer != nil {
+ in, out := &in.ClientSecretCertificateIssuer, &out.ClientSecretCertificateIssuer
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateSubjectAlternativeName != nil {
+ in, out := &in.ClientSecretCertificateSubjectAlternativeName, &out.ClientSecretCertificateSubjectAlternativeName
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateThumbprint != nil {
+ in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+ if in.OpenIdIssuer != nil {
+ in, out := &in.OpenIdIssuer, &out.OpenIdIssuer
+ *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 AzureActiveDirectoryRegistration_STATUS.
+func (in *AzureActiveDirectoryRegistration_STATUS) DeepCopy() *AzureActiveDirectoryRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryRegistration_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 *AzureActiveDirectoryValidation) DeepCopyInto(out *AzureActiveDirectoryValidation) {
+ *out = *in
+ if in.AllowedAudiences != nil {
+ in, out := &in.AllowedAudiences, &out.AllowedAudiences
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.DefaultAuthorizationPolicy != nil {
+ in, out := &in.DefaultAuthorizationPolicy, &out.DefaultAuthorizationPolicy
+ *out = new(DefaultAuthorizationPolicy)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.JwtClaimChecks != nil {
+ in, out := &in.JwtClaimChecks, &out.JwtClaimChecks
+ *out = new(JwtClaimChecks)
+ (*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 AzureActiveDirectoryValidation.
+func (in *AzureActiveDirectoryValidation) DeepCopy() *AzureActiveDirectoryValidation {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryValidation)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureActiveDirectoryValidation_STATUS) DeepCopyInto(out *AzureActiveDirectoryValidation_STATUS) {
+ *out = *in
+ if in.AllowedAudiences != nil {
+ in, out := &in.AllowedAudiences, &out.AllowedAudiences
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.DefaultAuthorizationPolicy != nil {
+ in, out := &in.DefaultAuthorizationPolicy, &out.DefaultAuthorizationPolicy
+ *out = new(DefaultAuthorizationPolicy_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.JwtClaimChecks != nil {
+ in, out := &in.JwtClaimChecks, &out.JwtClaimChecks
+ *out = new(JwtClaimChecks_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 AzureActiveDirectoryValidation_STATUS.
+func (in *AzureActiveDirectoryValidation_STATUS) DeepCopy() *AzureActiveDirectoryValidation_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryValidation_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 *AzureActiveDirectory_STATUS) DeepCopyInto(out *AzureActiveDirectory_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.IsAutoProvisioned != nil {
+ in, out := &in.IsAutoProvisioned, &out.IsAutoProvisioned
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(AzureActiveDirectoryLogin_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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AzureActiveDirectoryRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Validation != nil {
+ in, out := &in.Validation, &out.Validation
+ *out = new(AzureActiveDirectoryValidation_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectory_STATUS.
+func (in *AzureActiveDirectory_STATUS) DeepCopy() *AzureActiveDirectory_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectory_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 *AzureStaticWebApps) DeepCopyInto(out *AzureStaticWebApps) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AzureStaticWebAppsRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureStaticWebApps.
+func (in *AzureStaticWebApps) DeepCopy() *AzureStaticWebApps {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureStaticWebApps)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureStaticWebAppsRegistration) DeepCopyInto(out *AzureStaticWebAppsRegistration) {
+ *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 AzureStaticWebAppsRegistration.
+func (in *AzureStaticWebAppsRegistration) DeepCopy() *AzureStaticWebAppsRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureStaticWebAppsRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureStaticWebAppsRegistration_STATUS) DeepCopyInto(out *AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration_STATUS.
+func (in *AzureStaticWebAppsRegistration_STATUS) DeepCopy() *AzureStaticWebAppsRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureStaticWebAppsRegistration_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 *AzureStaticWebApps_STATUS) DeepCopyInto(out *AzureStaticWebApps_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AzureStaticWebAppsRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureStaticWebApps_STATUS.
+func (in *AzureStaticWebApps_STATUS) DeepCopy() *AzureStaticWebApps_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureStaticWebApps_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 *BaseContainer) DeepCopyInto(out *BaseContainer) {
+ *out = *in
+ if in.Args != nil {
+ in, out := &in.Args, &out.Args
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Command != nil {
+ in, out := &in.Command, &out.Command
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Env != nil {
+ in, out := &in.Env, &out.Env
+ *out = make([]EnvironmentVar, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Image != nil {
+ in, out := &in.Image, &out.Image
+ *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.Resources != nil {
+ in, out := &in.Resources, &out.Resources
+ *out = new(ContainerResources)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.VolumeMounts != nil {
+ in, out := &in.VolumeMounts, &out.VolumeMounts
+ *out = make([]VolumeMount, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaseContainer.
+func (in *BaseContainer) DeepCopy() *BaseContainer {
+ if in == nil {
+ return nil
+ }
+ out := new(BaseContainer)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *BaseContainer_STATUS) DeepCopyInto(out *BaseContainer_STATUS) {
+ *out = *in
+ if in.Args != nil {
+ in, out := &in.Args, &out.Args
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Command != nil {
+ in, out := &in.Command, &out.Command
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Env != nil {
+ in, out := &in.Env, &out.Env
+ *out = make([]EnvironmentVar_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Image != nil {
+ in, out := &in.Image, &out.Image
+ *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.Resources != nil {
+ in, out := &in.Resources, &out.Resources
+ *out = new(ContainerResources_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.VolumeMounts != nil {
+ in, out := &in.VolumeMounts, &out.VolumeMounts
+ *out = make([]VolumeMount_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaseContainer_STATUS.
+func (in *BaseContainer_STATUS) DeepCopy() *BaseContainer_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(BaseContainer_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 *BlobStorageTokenStore) DeepCopyInto(out *BlobStorageTokenStore) {
+ *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.SasUrlSettingName != nil {
+ in, out := &in.SasUrlSettingName, &out.SasUrlSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobStorageTokenStore.
+func (in *BlobStorageTokenStore) DeepCopy() *BlobStorageTokenStore {
+ if in == nil {
+ return nil
+ }
+ out := new(BlobStorageTokenStore)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *BlobStorageTokenStore_STATUS) DeepCopyInto(out *BlobStorageTokenStore_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.SasUrlSettingName != nil {
+ in, out := &in.SasUrlSettingName, &out.SasUrlSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobStorageTokenStore_STATUS.
+func (in *BlobStorageTokenStore_STATUS) DeepCopy() *BlobStorageTokenStore_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(BlobStorageTokenStore_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 *ClientRegistration) DeepCopyInto(out *ClientRegistration) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *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 ClientRegistration.
+func (in *ClientRegistration) DeepCopy() *ClientRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(ClientRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ClientRegistration_STATUS) DeepCopyInto(out *ClientRegistration_STATUS) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *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 ClientRegistration_STATUS.
+func (in *ClientRegistration_STATUS) DeepCopy() *ClientRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ClientRegistration_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 *Configuration) DeepCopyInto(out *Configuration) {
+ *out = *in
+ if in.ActiveRevisionsMode != nil {
+ in, out := &in.ActiveRevisionsMode, &out.ActiveRevisionsMode
+ *out = new(string)
+ **out = **in
+ }
+ if in.Dapr != nil {
+ in, out := &in.Dapr, &out.Dapr
+ *out = new(Dapr)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Ingress != nil {
+ in, out := &in.Ingress, &out.Ingress
+ *out = new(Ingress)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.MaxInactiveRevisions != nil {
+ in, out := &in.MaxInactiveRevisions, &out.MaxInactiveRevisions
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Registries != nil {
+ in, out := &in.Registries, &out.Registries
+ *out = make([]RegistryCredentials, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]Secret, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Service != nil {
+ in, out := &in.Service, &out.Service
+ *out = new(Service)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Configuration.
+func (in *Configuration) DeepCopy() *Configuration {
+ if in == nil {
+ return nil
+ }
+ out := new(Configuration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Configuration_STATUS) DeepCopyInto(out *Configuration_STATUS) {
+ *out = *in
+ if in.ActiveRevisionsMode != nil {
+ in, out := &in.ActiveRevisionsMode, &out.ActiveRevisionsMode
+ *out = new(string)
+ **out = **in
+ }
+ if in.Dapr != nil {
+ in, out := &in.Dapr, &out.Dapr
+ *out = new(Dapr_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Ingress != nil {
+ in, out := &in.Ingress, &out.Ingress
+ *out = new(Ingress_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.MaxInactiveRevisions != nil {
+ in, out := &in.MaxInactiveRevisions, &out.MaxInactiveRevisions
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Registries != nil {
+ in, out := &in.Registries, &out.Registries
+ *out = make([]RegistryCredentials_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]Secret_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Service != nil {
+ in, out := &in.Service, &out.Service
+ *out = new(Service_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Configuration_STATUS.
+func (in *Configuration_STATUS) DeepCopy() *Configuration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Configuration_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 *Container) DeepCopyInto(out *Container) {
+ *out = *in
+ if in.Args != nil {
+ in, out := &in.Args, &out.Args
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Command != nil {
+ in, out := &in.Command, &out.Command
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Env != nil {
+ in, out := &in.Env, &out.Env
+ *out = make([]EnvironmentVar, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Image != nil {
+ in, out := &in.Image, &out.Image
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Probes != nil {
+ in, out := &in.Probes, &out.Probes
+ *out = make([]ContainerAppProbe, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.Resources != nil {
+ in, out := &in.Resources, &out.Resources
+ *out = new(ContainerResources)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.VolumeMounts != nil {
+ in, out := &in.VolumeMounts, &out.VolumeMounts
+ *out = make([]VolumeMount, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Container.
+func (in *Container) DeepCopy() *Container {
+ if in == nil {
+ return nil
+ }
+ out := new(Container)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerApp) DeepCopyInto(out *ContainerApp) {
+ *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 ContainerApp.
+func (in *ContainerApp) DeepCopy() *ContainerApp {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerApp)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ContainerApp) 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 *ContainerAppList) DeepCopyInto(out *ContainerAppList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]ContainerApp, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppList.
+func (in *ContainerAppList) DeepCopy() *ContainerAppList {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ContainerAppList) 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 *ContainerAppOperatorConfigMaps) DeepCopyInto(out *ContainerAppOperatorConfigMaps) {
+ *out = *in
+ if in.EventStreamEndpoint != nil {
+ in, out := &in.EventStreamEndpoint, &out.EventStreamEndpoint
+ *out = new(genruntime.ConfigMapDestination)
+ **out = **in
+ }
+ if in.Fqdn != nil {
+ in, out := &in.Fqdn, &out.Fqdn
+ *out = new(genruntime.ConfigMapDestination)
+ **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 ContainerAppOperatorConfigMaps.
+func (in *ContainerAppOperatorConfigMaps) DeepCopy() *ContainerAppOperatorConfigMaps {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppOperatorConfigMaps)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppOperatorSpec) DeepCopyInto(out *ContainerAppOperatorSpec) {
+ *out = *in
+ if in.ConfigMapExpressions != nil {
+ in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+ if in.ConfigMaps != nil {
+ in, out := &in.ConfigMaps, &out.ConfigMaps
+ *out = new(ContainerAppOperatorConfigMaps)
+ (*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.SecretExpressions != nil {
+ in, out := &in.SecretExpressions, &out.SecretExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppOperatorSpec.
+func (in *ContainerAppOperatorSpec) DeepCopy() *ContainerAppOperatorSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppOperatorSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe) DeepCopyInto(out *ContainerAppProbe) {
+ *out = *in
+ if in.FailureThreshold != nil {
+ in, out := &in.FailureThreshold, &out.FailureThreshold
+ *out = new(int)
+ **out = **in
+ }
+ if in.HttpGet != nil {
+ in, out := &in.HttpGet, &out.HttpGet
+ *out = new(ContainerAppProbe_HttpGet)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.InitialDelaySeconds != nil {
+ in, out := &in.InitialDelaySeconds, &out.InitialDelaySeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.PeriodSeconds != nil {
+ in, out := &in.PeriodSeconds, &out.PeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.SuccessThreshold != nil {
+ in, out := &in.SuccessThreshold, &out.SuccessThreshold
+ *out = new(int)
+ **out = **in
+ }
+ if in.TcpSocket != nil {
+ in, out := &in.TcpSocket, &out.TcpSocket
+ *out = new(ContainerAppProbe_TcpSocket)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TerminationGracePeriodSeconds != nil {
+ in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.TimeoutSeconds != nil {
+ in, out := &in.TimeoutSeconds, &out.TimeoutSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe.
+func (in *ContainerAppProbe) DeepCopy() *ContainerAppProbe {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe_HttpGet) DeepCopyInto(out *ContainerAppProbe_HttpGet) {
+ *out = *in
+ if in.Host != nil {
+ in, out := &in.Host, &out.Host
+ *out = new(string)
+ **out = **in
+ }
+ if in.HttpHeaders != nil {
+ in, out := &in.HttpHeaders, &out.HttpHeaders
+ *out = make([]ContainerAppProbe_HttpGet_HttpHeaders, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Path != nil {
+ in, out := &in.Path, &out.Path
+ *out = new(string)
+ **out = **in
+ }
+ if in.Port != nil {
+ in, out := &in.Port, &out.Port
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Scheme != nil {
+ in, out := &in.Scheme, &out.Scheme
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_HttpGet.
+func (in *ContainerAppProbe_HttpGet) DeepCopy() *ContainerAppProbe_HttpGet {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_HttpGet)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe_HttpGet_HttpHeaders) DeepCopyInto(out *ContainerAppProbe_HttpGet_HttpHeaders) {
+ *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.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_HttpGet_HttpHeaders.
+func (in *ContainerAppProbe_HttpGet_HttpHeaders) DeepCopy() *ContainerAppProbe_HttpGet_HttpHeaders {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_HttpGet_HttpHeaders)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) DeepCopyInto(out *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) {
+ *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.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_HttpGet_HttpHeaders_STATUS.
+func (in *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) DeepCopy() *ContainerAppProbe_HttpGet_HttpHeaders_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_HttpGet_HttpHeaders_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 *ContainerAppProbe_HttpGet_STATUS) DeepCopyInto(out *ContainerAppProbe_HttpGet_STATUS) {
+ *out = *in
+ if in.Host != nil {
+ in, out := &in.Host, &out.Host
+ *out = new(string)
+ **out = **in
+ }
+ if in.HttpHeaders != nil {
+ in, out := &in.HttpHeaders, &out.HttpHeaders
+ *out = make([]ContainerAppProbe_HttpGet_HttpHeaders_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Path != nil {
+ in, out := &in.Path, &out.Path
+ *out = new(string)
+ **out = **in
+ }
+ if in.Port != nil {
+ in, out := &in.Port, &out.Port
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Scheme != nil {
+ in, out := &in.Scheme, &out.Scheme
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_HttpGet_STATUS.
+func (in *ContainerAppProbe_HttpGet_STATUS) DeepCopy() *ContainerAppProbe_HttpGet_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_HttpGet_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 *ContainerAppProbe_STATUS) DeepCopyInto(out *ContainerAppProbe_STATUS) {
+ *out = *in
+ if in.FailureThreshold != nil {
+ in, out := &in.FailureThreshold, &out.FailureThreshold
+ *out = new(int)
+ **out = **in
+ }
+ if in.HttpGet != nil {
+ in, out := &in.HttpGet, &out.HttpGet
+ *out = new(ContainerAppProbe_HttpGet_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.InitialDelaySeconds != nil {
+ in, out := &in.InitialDelaySeconds, &out.InitialDelaySeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.PeriodSeconds != nil {
+ in, out := &in.PeriodSeconds, &out.PeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.SuccessThreshold != nil {
+ in, out := &in.SuccessThreshold, &out.SuccessThreshold
+ *out = new(int)
+ **out = **in
+ }
+ if in.TcpSocket != nil {
+ in, out := &in.TcpSocket, &out.TcpSocket
+ *out = new(ContainerAppProbe_TcpSocket_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TerminationGracePeriodSeconds != nil {
+ in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.TimeoutSeconds != nil {
+ in, out := &in.TimeoutSeconds, &out.TimeoutSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_STATUS.
+func (in *ContainerAppProbe_STATUS) DeepCopy() *ContainerAppProbe_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_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 *ContainerAppProbe_TcpSocket) DeepCopyInto(out *ContainerAppProbe_TcpSocket) {
+ *out = *in
+ if in.Host != nil {
+ in, out := &in.Host, &out.Host
+ *out = new(string)
+ **out = **in
+ }
+ if in.Port != nil {
+ in, out := &in.Port, &out.Port
+ *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 ContainerAppProbe_TcpSocket.
+func (in *ContainerAppProbe_TcpSocket) DeepCopy() *ContainerAppProbe_TcpSocket {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_TcpSocket)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe_TcpSocket_STATUS) DeepCopyInto(out *ContainerAppProbe_TcpSocket_STATUS) {
+ *out = *in
+ if in.Host != nil {
+ in, out := &in.Host, &out.Host
+ *out = new(string)
+ **out = **in
+ }
+ if in.Port != nil {
+ in, out := &in.Port, &out.Port
+ *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 ContainerAppProbe_TcpSocket_STATUS.
+func (in *ContainerAppProbe_TcpSocket_STATUS) DeepCopy() *ContainerAppProbe_TcpSocket_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_TcpSocket_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 *ContainerApp_STATUS) DeepCopyInto(out *ContainerApp_STATUS) {
+ *out = *in
+ if in.Conditions != nil {
+ in, out := &in.Conditions, &out.Conditions
+ *out = make([]conditions.Condition, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Configuration != nil {
+ in, out := &in.Configuration, &out.Configuration
+ *out = new(Configuration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomDomainVerificationId != nil {
+ in, out := &in.CustomDomainVerificationId, &out.CustomDomainVerificationId
+ *out = new(string)
+ **out = **in
+ }
+ if in.EnvironmentId != nil {
+ in, out := &in.EnvironmentId, &out.EnvironmentId
+ *out = new(string)
+ **out = **in
+ }
+ if in.EventStreamEndpoint != nil {
+ in, out := &in.EventStreamEndpoint, &out.EventStreamEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.ExtendedLocation != nil {
+ in, out := &in.ExtendedLocation, &out.ExtendedLocation
+ *out = new(ExtendedLocation_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Id != nil {
+ in, out := &in.Id, &out.Id
+ *out = new(string)
+ **out = **in
+ }
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(ManagedServiceIdentity_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.LatestReadyRevisionName != nil {
+ in, out := &in.LatestReadyRevisionName, &out.LatestReadyRevisionName
+ *out = new(string)
+ **out = **in
+ }
+ if in.LatestRevisionFqdn != nil {
+ in, out := &in.LatestRevisionFqdn, &out.LatestRevisionFqdn
+ *out = new(string)
+ **out = **in
+ }
+ if in.LatestRevisionName != nil {
+ in, out := &in.LatestRevisionName, &out.LatestRevisionName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.ManagedBy != nil {
+ in, out := &in.ManagedBy, &out.ManagedBy
+ *out = new(string)
+ **out = **in
+ }
+ if in.ManagedEnvironmentId != nil {
+ in, out := &in.ManagedEnvironmentId, &out.ManagedEnvironmentId
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.OutboundIpAddresses != nil {
+ in, out := &in.OutboundIpAddresses, &out.OutboundIpAddresses
+ *out = make([]string, len(*in))
+ copy(*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.ProvisioningState != nil {
+ in, out := &in.ProvisioningState, &out.ProvisioningState
+ *out = new(string)
+ **out = **in
+ }
+ 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.Template != nil {
+ in, out := &in.Template, &out.Template
+ *out = new(Template_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+ if in.WorkloadProfileName != nil {
+ in, out := &in.WorkloadProfileName, &out.WorkloadProfileName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerApp_STATUS.
+func (in *ContainerApp_STATUS) DeepCopy() *ContainerApp_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerApp_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 *ContainerApp_Spec) DeepCopyInto(out *ContainerApp_Spec) {
+ *out = *in
+ if in.Configuration != nil {
+ in, out := &in.Configuration, &out.Configuration
+ *out = new(Configuration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.EnvironmentReference != nil {
+ in, out := &in.EnvironmentReference, &out.EnvironmentReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.ExtendedLocation != nil {
+ in, out := &in.ExtendedLocation, &out.ExtendedLocation
+ *out = new(ExtendedLocation)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(ManagedServiceIdentity)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.ManagedByReference != nil {
+ in, out := &in.ManagedByReference, &out.ManagedByReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.ManagedEnvironmentReference != nil {
+ in, out := &in.ManagedEnvironmentReference, &out.ManagedEnvironmentReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.OperatorSpec != nil {
+ in, out := &in.OperatorSpec, &out.OperatorSpec
+ *out = new(ContainerAppOperatorSpec)
+ (*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.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.Template != nil {
+ in, out := &in.Template, &out.Template
+ *out = new(Template)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.WorkloadProfileName != nil {
+ in, out := &in.WorkloadProfileName, &out.WorkloadProfileName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerApp_Spec.
+func (in *ContainerApp_Spec) DeepCopy() *ContainerApp_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerApp_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 *ContainerResources) DeepCopyInto(out *ContainerResources) {
+ *out = *in
+ if in.Cpu != nil {
+ in, out := &in.Cpu, &out.Cpu
+ *out = new(float64)
+ **out = **in
+ }
+ if in.Memory != nil {
+ in, out := &in.Memory, &out.Memory
+ *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 ContainerResources.
+func (in *ContainerResources) DeepCopy() *ContainerResources {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerResources)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerResources_STATUS) DeepCopyInto(out *ContainerResources_STATUS) {
+ *out = *in
+ if in.Cpu != nil {
+ in, out := &in.Cpu, &out.Cpu
+ *out = new(float64)
+ **out = **in
+ }
+ if in.EphemeralStorage != nil {
+ in, out := &in.EphemeralStorage, &out.EphemeralStorage
+ *out = new(string)
+ **out = **in
+ }
+ if in.Memory != nil {
+ in, out := &in.Memory, &out.Memory
+ *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 ContainerResources_STATUS.
+func (in *ContainerResources_STATUS) DeepCopy() *ContainerResources_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerResources_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 *Container_STATUS) DeepCopyInto(out *Container_STATUS) {
+ *out = *in
+ if in.Args != nil {
+ in, out := &in.Args, &out.Args
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Command != nil {
+ in, out := &in.Command, &out.Command
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Env != nil {
+ in, out := &in.Env, &out.Env
+ *out = make([]EnvironmentVar_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Image != nil {
+ in, out := &in.Image, &out.Image
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Probes != nil {
+ in, out := &in.Probes, &out.Probes
+ *out = make([]ContainerAppProbe_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.Resources != nil {
+ in, out := &in.Resources, &out.Resources
+ *out = new(ContainerResources_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.VolumeMounts != nil {
+ in, out := &in.VolumeMounts, &out.VolumeMounts
+ *out = make([]VolumeMount_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Container_STATUS.
+func (in *Container_STATUS) DeepCopy() *Container_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Container_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 *CookieExpiration) DeepCopyInto(out *CookieExpiration) {
+ *out = *in
+ if in.Convention != nil {
+ in, out := &in.Convention, &out.Convention
+ *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.TimeToExpiration != nil {
+ in, out := &in.TimeToExpiration, &out.TimeToExpiration
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookieExpiration.
+func (in *CookieExpiration) DeepCopy() *CookieExpiration {
+ if in == nil {
+ return nil
+ }
+ out := new(CookieExpiration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CookieExpiration_STATUS) DeepCopyInto(out *CookieExpiration_STATUS) {
+ *out = *in
+ if in.Convention != nil {
+ in, out := &in.Convention, &out.Convention
+ *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.TimeToExpiration != nil {
+ in, out := &in.TimeToExpiration, &out.TimeToExpiration
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookieExpiration_STATUS.
+func (in *CookieExpiration_STATUS) DeepCopy() *CookieExpiration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CookieExpiration_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 *CorsPolicy) DeepCopyInto(out *CorsPolicy) {
+ *out = *in
+ if in.AllowCredentials != nil {
+ in, out := &in.AllowCredentials, &out.AllowCredentials
+ *out = new(bool)
+ **out = **in
+ }
+ if in.AllowedHeaders != nil {
+ in, out := &in.AllowedHeaders, &out.AllowedHeaders
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedMethods != nil {
+ in, out := &in.AllowedMethods, &out.AllowedMethods
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedOrigins != nil {
+ in, out := &in.AllowedOrigins, &out.AllowedOrigins
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.ExposeHeaders != nil {
+ in, out := &in.ExposeHeaders, &out.ExposeHeaders
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.MaxAge != nil {
+ in, out := &in.MaxAge, &out.MaxAge
+ *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 CorsPolicy.
+func (in *CorsPolicy) DeepCopy() *CorsPolicy {
+ if in == nil {
+ return nil
+ }
+ out := new(CorsPolicy)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CorsPolicy_STATUS) DeepCopyInto(out *CorsPolicy_STATUS) {
+ *out = *in
+ if in.AllowCredentials != nil {
+ in, out := &in.AllowCredentials, &out.AllowCredentials
+ *out = new(bool)
+ **out = **in
+ }
+ if in.AllowedHeaders != nil {
+ in, out := &in.AllowedHeaders, &out.AllowedHeaders
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedMethods != nil {
+ in, out := &in.AllowedMethods, &out.AllowedMethods
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedOrigins != nil {
+ in, out := &in.AllowedOrigins, &out.AllowedOrigins
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.ExposeHeaders != nil {
+ in, out := &in.ExposeHeaders, &out.ExposeHeaders
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.MaxAge != nil {
+ in, out := &in.MaxAge, &out.MaxAge
+ *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 CorsPolicy_STATUS.
+func (in *CorsPolicy_STATUS) DeepCopy() *CorsPolicy_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CorsPolicy_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 *CustomDomain) DeepCopyInto(out *CustomDomain) {
+ *out = *in
+ if in.BindingType != nil {
+ in, out := &in.BindingType, &out.BindingType
+ *out = new(string)
+ **out = **in
+ }
+ if in.CertificateReference != nil {
+ in, out := &in.CertificateReference, &out.CertificateReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDomain.
+func (in *CustomDomain) DeepCopy() *CustomDomain {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomDomain)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CustomDomainConfiguration) DeepCopyInto(out *CustomDomainConfiguration) {
+ *out = *in
+ if in.CertificatePassword != nil {
+ in, out := &in.CertificatePassword, &out.CertificatePassword
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+ if in.CertificateValue != nil {
+ in, out := &in.CertificateValue, &out.CertificateValue
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+ if in.DnsSuffix != nil {
+ in, out := &in.DnsSuffix, &out.DnsSuffix
+ *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 CustomDomainConfiguration.
+func (in *CustomDomainConfiguration) DeepCopy() *CustomDomainConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomDomainConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CustomDomainConfiguration_STATUS) DeepCopyInto(out *CustomDomainConfiguration_STATUS) {
+ *out = *in
+ if in.CustomDomainVerificationId != nil {
+ in, out := &in.CustomDomainVerificationId, &out.CustomDomainVerificationId
+ *out = new(string)
+ **out = **in
+ }
+ if in.DnsSuffix != nil {
+ in, out := &in.DnsSuffix, &out.DnsSuffix
+ *out = new(string)
+ **out = **in
+ }
+ if in.ExpirationDate != nil {
+ in, out := &in.ExpirationDate, &out.ExpirationDate
+ *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.SubjectName != nil {
+ in, out := &in.SubjectName, &out.SubjectName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Thumbprint != nil {
+ in, out := &in.Thumbprint, &out.Thumbprint
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDomainConfiguration_STATUS.
+func (in *CustomDomainConfiguration_STATUS) DeepCopy() *CustomDomainConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomDomainConfiguration_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 *CustomDomain_STATUS) DeepCopyInto(out *CustomDomain_STATUS) {
+ *out = *in
+ if in.BindingType != nil {
+ in, out := &in.BindingType, &out.BindingType
+ *out = new(string)
+ **out = **in
+ }
+ if in.CertificateId != nil {
+ in, out := &in.CertificateId, &out.CertificateId
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDomain_STATUS.
+func (in *CustomDomain_STATUS) DeepCopy() *CustomDomain_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomDomain_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 *CustomOpenIdConnectProvider) DeepCopyInto(out *CustomOpenIdConnectProvider) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(OpenIdConnectLogin)
+ (*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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(OpenIdConnectRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomOpenIdConnectProvider.
+func (in *CustomOpenIdConnectProvider) DeepCopy() *CustomOpenIdConnectProvider {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomOpenIdConnectProvider)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CustomOpenIdConnectProvider_STATUS) DeepCopyInto(out *CustomOpenIdConnectProvider_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(OpenIdConnectLogin_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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(OpenIdConnectRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomOpenIdConnectProvider_STATUS.
+func (in *CustomOpenIdConnectProvider_STATUS) DeepCopy() *CustomOpenIdConnectProvider_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomOpenIdConnectProvider_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 *CustomScaleRule) DeepCopyInto(out *CustomScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomScaleRule.
+func (in *CustomScaleRule) DeepCopy() *CustomScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CustomScaleRule_STATUS) DeepCopyInto(out *CustomScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomScaleRule_STATUS.
+func (in *CustomScaleRule_STATUS) DeepCopy() *CustomScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomScaleRule_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 *Dapr) DeepCopyInto(out *Dapr) {
+ *out = *in
+ if in.AppId != nil {
+ in, out := &in.AppId, &out.AppId
+ *out = new(string)
+ **out = **in
+ }
+ if in.AppPort != nil {
+ in, out := &in.AppPort, &out.AppPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.AppProtocol != nil {
+ in, out := &in.AppProtocol, &out.AppProtocol
+ *out = new(string)
+ **out = **in
+ }
+ if in.EnableApiLogging != nil {
+ in, out := &in.EnableApiLogging, &out.EnableApiLogging
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.HttpMaxRequestSize != nil {
+ in, out := &in.HttpMaxRequestSize, &out.HttpMaxRequestSize
+ *out = new(int)
+ **out = **in
+ }
+ if in.HttpReadBufferSize != nil {
+ in, out := &in.HttpReadBufferSize, &out.HttpReadBufferSize
+ *out = new(int)
+ **out = **in
+ }
+ if in.LogLevel != nil {
+ in, out := &in.LogLevel, &out.LogLevel
+ *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 Dapr.
+func (in *Dapr) DeepCopy() *Dapr {
+ if in == nil {
+ return nil
+ }
+ out := new(Dapr)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *DaprConfiguration_STATUS) DeepCopyInto(out *DaprConfiguration_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.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 DaprConfiguration_STATUS.
+func (in *DaprConfiguration_STATUS) DeepCopy() *DaprConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(DaprConfiguration_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 *Dapr_STATUS) DeepCopyInto(out *Dapr_STATUS) {
+ *out = *in
+ if in.AppId != nil {
+ in, out := &in.AppId, &out.AppId
+ *out = new(string)
+ **out = **in
+ }
+ if in.AppPort != nil {
+ in, out := &in.AppPort, &out.AppPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.AppProtocol != nil {
+ in, out := &in.AppProtocol, &out.AppProtocol
+ *out = new(string)
+ **out = **in
+ }
+ if in.EnableApiLogging != nil {
+ in, out := &in.EnableApiLogging, &out.EnableApiLogging
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.HttpMaxRequestSize != nil {
+ in, out := &in.HttpMaxRequestSize, &out.HttpMaxRequestSize
+ *out = new(int)
+ **out = **in
+ }
+ if in.HttpReadBufferSize != nil {
+ in, out := &in.HttpReadBufferSize, &out.HttpReadBufferSize
+ *out = new(int)
+ **out = **in
+ }
+ if in.LogLevel != nil {
+ in, out := &in.LogLevel, &out.LogLevel
+ *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 Dapr_STATUS.
+func (in *Dapr_STATUS) DeepCopy() *Dapr_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Dapr_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 *DefaultAuthorizationPolicy) DeepCopyInto(out *DefaultAuthorizationPolicy) {
+ *out = *in
+ if in.AllowedApplications != nil {
+ in, out := &in.AllowedApplications, &out.AllowedApplications
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedPrincipals != nil {
+ in, out := &in.AllowedPrincipals, &out.AllowedPrincipals
+ *out = new(AllowedPrincipals)
+ (*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 DefaultAuthorizationPolicy.
+func (in *DefaultAuthorizationPolicy) DeepCopy() *DefaultAuthorizationPolicy {
+ if in == nil {
+ return nil
+ }
+ out := new(DefaultAuthorizationPolicy)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *DefaultAuthorizationPolicy_STATUS) DeepCopyInto(out *DefaultAuthorizationPolicy_STATUS) {
+ *out = *in
+ if in.AllowedApplications != nil {
+ in, out := &in.AllowedApplications, &out.AllowedApplications
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedPrincipals != nil {
+ in, out := &in.AllowedPrincipals, &out.AllowedPrincipals
+ *out = new(AllowedPrincipals_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 DefaultAuthorizationPolicy_STATUS.
+func (in *DefaultAuthorizationPolicy_STATUS) DeepCopy() *DefaultAuthorizationPolicy_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(DefaultAuthorizationPolicy_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 *EncryptionSettings) DeepCopyInto(out *EncryptionSettings) {
+ *out = *in
+ if in.ContainerAppAuthEncryptionSecretName != nil {
+ in, out := &in.ContainerAppAuthEncryptionSecretName, &out.ContainerAppAuthEncryptionSecretName
+ *out = new(string)
+ **out = **in
+ }
+ if in.ContainerAppAuthSigningSecretName != nil {
+ in, out := &in.ContainerAppAuthSigningSecretName, &out.ContainerAppAuthSigningSecretName
+ *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 EncryptionSettings.
+func (in *EncryptionSettings) DeepCopy() *EncryptionSettings {
+ if in == nil {
+ return nil
+ }
+ out := new(EncryptionSettings)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *EncryptionSettings_STATUS) DeepCopyInto(out *EncryptionSettings_STATUS) {
+ *out = *in
+ if in.ContainerAppAuthEncryptionSecretName != nil {
+ in, out := &in.ContainerAppAuthEncryptionSecretName, &out.ContainerAppAuthEncryptionSecretName
+ *out = new(string)
+ **out = **in
+ }
+ if in.ContainerAppAuthSigningSecretName != nil {
+ in, out := &in.ContainerAppAuthSigningSecretName, &out.ContainerAppAuthSigningSecretName
+ *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 EncryptionSettings_STATUS.
+func (in *EncryptionSettings_STATUS) DeepCopy() *EncryptionSettings_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(EncryptionSettings_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 *EnvironmentVar) DeepCopyInto(out *EnvironmentVar) {
+ *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.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentVar.
+func (in *EnvironmentVar) DeepCopy() *EnvironmentVar {
+ if in == nil {
+ return nil
+ }
+ out := new(EnvironmentVar)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *EnvironmentVar_STATUS) DeepCopyInto(out *EnvironmentVar_STATUS) {
+ *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.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentVar_STATUS.
+func (in *EnvironmentVar_STATUS) DeepCopy() *EnvironmentVar_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(EnvironmentVar_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 *ExtendedLocation) DeepCopyInto(out *ExtendedLocation) {
+ *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.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 ExtendedLocation.
+func (in *ExtendedLocation) DeepCopy() *ExtendedLocation {
+ if in == nil {
+ return nil
+ }
+ out := new(ExtendedLocation)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ExtendedLocation_STATUS) DeepCopyInto(out *ExtendedLocation_STATUS) {
+ *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.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 ExtendedLocation_STATUS.
+func (in *ExtendedLocation_STATUS) DeepCopy() *ExtendedLocation_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ExtendedLocation_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 *Facebook) DeepCopyInto(out *Facebook) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.GraphApiVersion != nil {
+ in, out := &in.GraphApiVersion, &out.GraphApiVersion
+ *out = new(string)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes)
+ (*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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AppRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Facebook.
+func (in *Facebook) DeepCopy() *Facebook {
+ if in == nil {
+ return nil
+ }
+ out := new(Facebook)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Facebook_STATUS) DeepCopyInto(out *Facebook_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.GraphApiVersion != nil {
+ in, out := &in.GraphApiVersion, &out.GraphApiVersion
+ *out = new(string)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes_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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AppRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Facebook_STATUS.
+func (in *Facebook_STATUS) DeepCopy() *Facebook_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Facebook_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 *ForwardProxy) DeepCopyInto(out *ForwardProxy) {
+ *out = *in
+ if in.Convention != nil {
+ in, out := &in.Convention, &out.Convention
+ *out = new(string)
+ **out = **in
+ }
+ if in.CustomHostHeaderName != nil {
+ in, out := &in.CustomHostHeaderName, &out.CustomHostHeaderName
+ *out = new(string)
+ **out = **in
+ }
+ if in.CustomProtoHeaderName != nil {
+ in, out := &in.CustomProtoHeaderName, &out.CustomProtoHeaderName
+ *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 ForwardProxy.
+func (in *ForwardProxy) DeepCopy() *ForwardProxy {
+ if in == nil {
+ return nil
+ }
+ out := new(ForwardProxy)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ForwardProxy_STATUS) DeepCopyInto(out *ForwardProxy_STATUS) {
+ *out = *in
+ if in.Convention != nil {
+ in, out := &in.Convention, &out.Convention
+ *out = new(string)
+ **out = **in
+ }
+ if in.CustomHostHeaderName != nil {
+ in, out := &in.CustomHostHeaderName, &out.CustomHostHeaderName
+ *out = new(string)
+ **out = **in
+ }
+ if in.CustomProtoHeaderName != nil {
+ in, out := &in.CustomProtoHeaderName, &out.CustomProtoHeaderName
+ *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 ForwardProxy_STATUS.
+func (in *ForwardProxy_STATUS) DeepCopy() *ForwardProxy_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ForwardProxy_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 *GitHub) DeepCopyInto(out *GitHub) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes)
+ (*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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(ClientRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHub.
+func (in *GitHub) DeepCopy() *GitHub {
+ if in == nil {
+ return nil
+ }
+ out := new(GitHub)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *GitHub_STATUS) DeepCopyInto(out *GitHub_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes_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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(ClientRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHub_STATUS.
+func (in *GitHub_STATUS) DeepCopy() *GitHub_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(GitHub_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 *GlobalValidation) DeepCopyInto(out *GlobalValidation) {
+ *out = *in
+ if in.ExcludedPaths != nil {
+ in, out := &in.ExcludedPaths, &out.ExcludedPaths
+ *out = make([]string, len(*in))
+ copy(*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.RedirectToProvider != nil {
+ in, out := &in.RedirectToProvider, &out.RedirectToProvider
+ *out = new(string)
+ **out = **in
+ }
+ if in.UnauthenticatedClientAction != nil {
+ in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalValidation.
+func (in *GlobalValidation) DeepCopy() *GlobalValidation {
+ if in == nil {
+ return nil
+ }
+ out := new(GlobalValidation)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *GlobalValidation_STATUS) DeepCopyInto(out *GlobalValidation_STATUS) {
+ *out = *in
+ if in.ExcludedPaths != nil {
+ in, out := &in.ExcludedPaths, &out.ExcludedPaths
+ *out = make([]string, len(*in))
+ copy(*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.RedirectToProvider != nil {
+ in, out := &in.RedirectToProvider, &out.RedirectToProvider
+ *out = new(string)
+ **out = **in
+ }
+ if in.UnauthenticatedClientAction != nil {
+ in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalValidation_STATUS.
+func (in *GlobalValidation_STATUS) DeepCopy() *GlobalValidation_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(GlobalValidation_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 *Google) DeepCopyInto(out *Google) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes)
+ (*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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(ClientRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Validation != nil {
+ in, out := &in.Validation, &out.Validation
+ *out = new(AllowedAudiencesValidation)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Google.
+func (in *Google) DeepCopy() *Google {
+ if in == nil {
+ return nil
+ }
+ out := new(Google)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Google_STATUS) DeepCopyInto(out *Google_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes_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.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(ClientRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Validation != nil {
+ in, out := &in.Validation, &out.Validation
+ *out = new(AllowedAudiencesValidation_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Google_STATUS.
+func (in *Google_STATUS) DeepCopy() *Google_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Google_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 *HttpScaleRule) DeepCopyInto(out *HttpScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ 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 HttpScaleRule.
+func (in *HttpScaleRule) DeepCopy() *HttpScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *HttpScaleRule_STATUS) DeepCopyInto(out *HttpScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ 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 HttpScaleRule_STATUS.
+func (in *HttpScaleRule_STATUS) DeepCopy() *HttpScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpScaleRule_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 *HttpSettings) DeepCopyInto(out *HttpSettings) {
+ *out = *in
+ if in.ForwardProxy != nil {
+ in, out := &in.ForwardProxy, &out.ForwardProxy
+ *out = new(ForwardProxy)
+ (*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.RequireHttps != nil {
+ in, out := &in.RequireHttps, &out.RequireHttps
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Routes != nil {
+ in, out := &in.Routes, &out.Routes
+ *out = new(HttpSettingsRoutes)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpSettings.
+func (in *HttpSettings) DeepCopy() *HttpSettings {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpSettings)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *HttpSettingsRoutes) DeepCopyInto(out *HttpSettingsRoutes) {
+ *out = *in
+ if in.ApiPrefix != nil {
+ in, out := &in.ApiPrefix, &out.ApiPrefix
+ *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 HttpSettingsRoutes.
+func (in *HttpSettingsRoutes) DeepCopy() *HttpSettingsRoutes {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpSettingsRoutes)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *HttpSettingsRoutes_STATUS) DeepCopyInto(out *HttpSettingsRoutes_STATUS) {
+ *out = *in
+ if in.ApiPrefix != nil {
+ in, out := &in.ApiPrefix, &out.ApiPrefix
+ *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 HttpSettingsRoutes_STATUS.
+func (in *HttpSettingsRoutes_STATUS) DeepCopy() *HttpSettingsRoutes_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpSettingsRoutes_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 *HttpSettings_STATUS) DeepCopyInto(out *HttpSettings_STATUS) {
+ *out = *in
+ if in.ForwardProxy != nil {
+ in, out := &in.ForwardProxy, &out.ForwardProxy
+ *out = new(ForwardProxy_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.RequireHttps != nil {
+ in, out := &in.RequireHttps, &out.RequireHttps
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Routes != nil {
+ in, out := &in.Routes, &out.Routes
+ *out = new(HttpSettingsRoutes_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpSettings_STATUS.
+func (in *HttpSettings_STATUS) DeepCopy() *HttpSettings_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpSettings_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 *IdentityProviders) DeepCopyInto(out *IdentityProviders) {
+ *out = *in
+ if in.Apple != nil {
+ in, out := &in.Apple, &out.Apple
+ *out = new(Apple)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.AzureActiveDirectory != nil {
+ in, out := &in.AzureActiveDirectory, &out.AzureActiveDirectory
+ *out = new(AzureActiveDirectory)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.AzureStaticWebApps != nil {
+ in, out := &in.AzureStaticWebApps, &out.AzureStaticWebApps
+ *out = new(AzureStaticWebApps)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomOpenIdConnectProviders != nil {
+ in, out := &in.CustomOpenIdConnectProviders, &out.CustomOpenIdConnectProviders
+ *out = make(map[string]CustomOpenIdConnectProvider, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+ if in.Facebook != nil {
+ in, out := &in.Facebook, &out.Facebook
+ *out = new(Facebook)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.GitHub != nil {
+ in, out := &in.GitHub, &out.GitHub
+ *out = new(GitHub)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Google != nil {
+ in, out := &in.Google, &out.Google
+ *out = new(Google)
+ (*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.Twitter != nil {
+ in, out := &in.Twitter, &out.Twitter
+ *out = new(Twitter)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviders.
+func (in *IdentityProviders) DeepCopy() *IdentityProviders {
+ if in == nil {
+ return nil
+ }
+ out := new(IdentityProviders)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *IdentityProviders_STATUS) DeepCopyInto(out *IdentityProviders_STATUS) {
+ *out = *in
+ if in.Apple != nil {
+ in, out := &in.Apple, &out.Apple
+ *out = new(Apple_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.AzureActiveDirectory != nil {
+ in, out := &in.AzureActiveDirectory, &out.AzureActiveDirectory
+ *out = new(AzureActiveDirectory_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.AzureStaticWebApps != nil {
+ in, out := &in.AzureStaticWebApps, &out.AzureStaticWebApps
+ *out = new(AzureStaticWebApps_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomOpenIdConnectProviders != nil {
+ in, out := &in.CustomOpenIdConnectProviders, &out.CustomOpenIdConnectProviders
+ *out = make(map[string]CustomOpenIdConnectProvider_STATUS, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+ if in.Facebook != nil {
+ in, out := &in.Facebook, &out.Facebook
+ *out = new(Facebook_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.GitHub != nil {
+ in, out := &in.GitHub, &out.GitHub
+ *out = new(GitHub_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Google != nil {
+ in, out := &in.Google, &out.Google
+ *out = new(Google_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.Twitter != nil {
+ in, out := &in.Twitter, &out.Twitter
+ *out = new(Twitter_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviders_STATUS.
+func (in *IdentityProviders_STATUS) DeepCopy() *IdentityProviders_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(IdentityProviders_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 *Ingress) DeepCopyInto(out *Ingress) {
+ *out = *in
+ if in.AdditionalPortMappings != nil {
+ in, out := &in.AdditionalPortMappings, &out.AdditionalPortMappings
+ *out = make([]IngressPortMapping, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.AllowInsecure != nil {
+ in, out := &in.AllowInsecure, &out.AllowInsecure
+ *out = new(bool)
+ **out = **in
+ }
+ if in.ClientCertificateMode != nil {
+ in, out := &in.ClientCertificateMode, &out.ClientCertificateMode
+ *out = new(string)
+ **out = **in
+ }
+ if in.CorsPolicy != nil {
+ in, out := &in.CorsPolicy, &out.CorsPolicy
+ *out = new(CorsPolicy)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomDomains != nil {
+ in, out := &in.CustomDomains, &out.CustomDomains
+ *out = make([]CustomDomain, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ExposedPort != nil {
+ in, out := &in.ExposedPort, &out.ExposedPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.External != nil {
+ in, out := &in.External, &out.External
+ *out = new(bool)
+ **out = **in
+ }
+ if in.IpSecurityRestrictions != nil {
+ in, out := &in.IpSecurityRestrictions, &out.IpSecurityRestrictions
+ *out = make([]IpSecurityRestrictionRule, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.StickySessions != nil {
+ in, out := &in.StickySessions, &out.StickySessions
+ *out = new(Ingress_StickySessions)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TargetPort != nil {
+ in, out := &in.TargetPort, &out.TargetPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.Traffic != nil {
+ in, out := &in.Traffic, &out.Traffic
+ *out = make([]TrafficWeight, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Transport != nil {
+ in, out := &in.Transport, &out.Transport
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ingress.
+func (in *Ingress) DeepCopy() *Ingress {
+ if in == nil {
+ return nil
+ }
+ out := new(Ingress)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *IngressPortMapping) DeepCopyInto(out *IngressPortMapping) {
+ *out = *in
+ if in.ExposedPort != nil {
+ in, out := &in.ExposedPort, &out.ExposedPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.External != nil {
+ in, out := &in.External, &out.External
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.TargetPort != nil {
+ in, out := &in.TargetPort, &out.TargetPort
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressPortMapping.
+func (in *IngressPortMapping) DeepCopy() *IngressPortMapping {
+ if in == nil {
+ return nil
+ }
+ out := new(IngressPortMapping)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *IngressPortMapping_STATUS) DeepCopyInto(out *IngressPortMapping_STATUS) {
+ *out = *in
+ if in.ExposedPort != nil {
+ in, out := &in.ExposedPort, &out.ExposedPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.External != nil {
+ in, out := &in.External, &out.External
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.TargetPort != nil {
+ in, out := &in.TargetPort, &out.TargetPort
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressPortMapping_STATUS.
+func (in *IngressPortMapping_STATUS) DeepCopy() *IngressPortMapping_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(IngressPortMapping_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 *Ingress_STATUS) DeepCopyInto(out *Ingress_STATUS) {
+ *out = *in
+ if in.AdditionalPortMappings != nil {
+ in, out := &in.AdditionalPortMappings, &out.AdditionalPortMappings
+ *out = make([]IngressPortMapping_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.AllowInsecure != nil {
+ in, out := &in.AllowInsecure, &out.AllowInsecure
+ *out = new(bool)
+ **out = **in
+ }
+ if in.ClientCertificateMode != nil {
+ in, out := &in.ClientCertificateMode, &out.ClientCertificateMode
+ *out = new(string)
+ **out = **in
+ }
+ if in.CorsPolicy != nil {
+ in, out := &in.CorsPolicy, &out.CorsPolicy
+ *out = new(CorsPolicy_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomDomains != nil {
+ in, out := &in.CustomDomains, &out.CustomDomains
+ *out = make([]CustomDomain_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ExposedPort != nil {
+ in, out := &in.ExposedPort, &out.ExposedPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.External != nil {
+ in, out := &in.External, &out.External
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Fqdn != nil {
+ in, out := &in.Fqdn, &out.Fqdn
+ *out = new(string)
+ **out = **in
+ }
+ if in.IpSecurityRestrictions != nil {
+ in, out := &in.IpSecurityRestrictions, &out.IpSecurityRestrictions
+ *out = make([]IpSecurityRestrictionRule_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.StickySessions != nil {
+ in, out := &in.StickySessions, &out.StickySessions
+ *out = new(Ingress_StickySessions_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TargetPort != nil {
+ in, out := &in.TargetPort, &out.TargetPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.Traffic != nil {
+ in, out := &in.Traffic, &out.Traffic
+ *out = make([]TrafficWeight_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Transport != nil {
+ in, out := &in.Transport, &out.Transport
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ingress_STATUS.
+func (in *Ingress_STATUS) DeepCopy() *Ingress_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Ingress_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 *Ingress_StickySessions) DeepCopyInto(out *Ingress_StickySessions) {
+ *out = *in
+ if in.Affinity != nil {
+ in, out := &in.Affinity, &out.Affinity
+ *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 Ingress_StickySessions.
+func (in *Ingress_StickySessions) DeepCopy() *Ingress_StickySessions {
+ if in == nil {
+ return nil
+ }
+ out := new(Ingress_StickySessions)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Ingress_StickySessions_STATUS) DeepCopyInto(out *Ingress_StickySessions_STATUS) {
+ *out = *in
+ if in.Affinity != nil {
+ in, out := &in.Affinity, &out.Affinity
+ *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 Ingress_StickySessions_STATUS.
+func (in *Ingress_StickySessions_STATUS) DeepCopy() *Ingress_StickySessions_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Ingress_StickySessions_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 *IpSecurityRestrictionRule) DeepCopyInto(out *IpSecurityRestrictionRule) {
+ *out = *in
+ if in.Action != nil {
+ in, out := &in.Action, &out.Action
+ *out = new(string)
+ **out = **in
+ }
+ if in.Description != nil {
+ in, out := &in.Description, &out.Description
+ *out = new(string)
+ **out = **in
+ }
+ if in.IpAddressRange != nil {
+ in, out := &in.IpAddressRange, &out.IpAddressRange
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IpSecurityRestrictionRule.
+func (in *IpSecurityRestrictionRule) DeepCopy() *IpSecurityRestrictionRule {
+ if in == nil {
+ return nil
+ }
+ out := new(IpSecurityRestrictionRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *IpSecurityRestrictionRule_STATUS) DeepCopyInto(out *IpSecurityRestrictionRule_STATUS) {
+ *out = *in
+ if in.Action != nil {
+ in, out := &in.Action, &out.Action
+ *out = new(string)
+ **out = **in
+ }
+ if in.Description != nil {
+ in, out := &in.Description, &out.Description
+ *out = new(string)
+ **out = **in
+ }
+ if in.IpAddressRange != nil {
+ in, out := &in.IpAddressRange, &out.IpAddressRange
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IpSecurityRestrictionRule_STATUS.
+func (in *IpSecurityRestrictionRule_STATUS) DeepCopy() *IpSecurityRestrictionRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(IpSecurityRestrictionRule_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 *Job) DeepCopyInto(out *Job) {
+ *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 Job.
+func (in *Job) DeepCopy() *Job {
+ if in == nil {
+ return nil
+ }
+ out := new(Job)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *Job) 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 *JobConfiguration) DeepCopyInto(out *JobConfiguration) {
+ *out = *in
+ if in.EventTriggerConfig != nil {
+ in, out := &in.EventTriggerConfig, &out.EventTriggerConfig
+ *out = new(JobConfiguration_EventTriggerConfig)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ManualTriggerConfig != nil {
+ in, out := &in.ManualTriggerConfig, &out.ManualTriggerConfig
+ *out = new(JobConfiguration_ManualTriggerConfig)
+ (*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.Registries != nil {
+ in, out := &in.Registries, &out.Registries
+ *out = make([]RegistryCredentials, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ReplicaRetryLimit != nil {
+ in, out := &in.ReplicaRetryLimit, &out.ReplicaRetryLimit
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaTimeout != nil {
+ in, out := &in.ReplicaTimeout, &out.ReplicaTimeout
+ *out = new(int)
+ **out = **in
+ }
+ if in.ScheduleTriggerConfig != nil {
+ in, out := &in.ScheduleTriggerConfig, &out.ScheduleTriggerConfig
+ *out = new(JobConfiguration_ScheduleTriggerConfig)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]Secret, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.TriggerType != nil {
+ in, out := &in.TriggerType, &out.TriggerType
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration.
+func (in *JobConfiguration) DeepCopy() *JobConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobConfiguration_EventTriggerConfig) DeepCopyInto(out *JobConfiguration_EventTriggerConfig) {
+ *out = *in
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.Scale != nil {
+ in, out := &in.Scale, &out.Scale
+ *out = new(JobScale)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_EventTriggerConfig.
+func (in *JobConfiguration_EventTriggerConfig) DeepCopy() *JobConfiguration_EventTriggerConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_EventTriggerConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobConfiguration_EventTriggerConfig_STATUS) DeepCopyInto(out *JobConfiguration_EventTriggerConfig_STATUS) {
+ *out = *in
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.Scale != nil {
+ in, out := &in.Scale, &out.Scale
+ *out = new(JobScale_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_EventTriggerConfig_STATUS.
+func (in *JobConfiguration_EventTriggerConfig_STATUS) DeepCopy() *JobConfiguration_EventTriggerConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_EventTriggerConfig_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 *JobConfiguration_ManualTriggerConfig) DeepCopyInto(out *JobConfiguration_ManualTriggerConfig) {
+ *out = *in
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_ManualTriggerConfig.
+func (in *JobConfiguration_ManualTriggerConfig) DeepCopy() *JobConfiguration_ManualTriggerConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_ManualTriggerConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobConfiguration_ManualTriggerConfig_STATUS) DeepCopyInto(out *JobConfiguration_ManualTriggerConfig_STATUS) {
+ *out = *in
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_ManualTriggerConfig_STATUS.
+func (in *JobConfiguration_ManualTriggerConfig_STATUS) DeepCopy() *JobConfiguration_ManualTriggerConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_ManualTriggerConfig_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 *JobConfiguration_STATUS) DeepCopyInto(out *JobConfiguration_STATUS) {
+ *out = *in
+ if in.EventTriggerConfig != nil {
+ in, out := &in.EventTriggerConfig, &out.EventTriggerConfig
+ *out = new(JobConfiguration_EventTriggerConfig_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ManualTriggerConfig != nil {
+ in, out := &in.ManualTriggerConfig, &out.ManualTriggerConfig
+ *out = new(JobConfiguration_ManualTriggerConfig_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.Registries != nil {
+ in, out := &in.Registries, &out.Registries
+ *out = make([]RegistryCredentials_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ReplicaRetryLimit != nil {
+ in, out := &in.ReplicaRetryLimit, &out.ReplicaRetryLimit
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaTimeout != nil {
+ in, out := &in.ReplicaTimeout, &out.ReplicaTimeout
+ *out = new(int)
+ **out = **in
+ }
+ if in.ScheduleTriggerConfig != nil {
+ in, out := &in.ScheduleTriggerConfig, &out.ScheduleTriggerConfig
+ *out = new(JobConfiguration_ScheduleTriggerConfig_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]Secret_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.TriggerType != nil {
+ in, out := &in.TriggerType, &out.TriggerType
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_STATUS.
+func (in *JobConfiguration_STATUS) DeepCopy() *JobConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_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 *JobConfiguration_ScheduleTriggerConfig) DeepCopyInto(out *JobConfiguration_ScheduleTriggerConfig) {
+ *out = *in
+ if in.CronExpression != nil {
+ in, out := &in.CronExpression, &out.CronExpression
+ *out = new(string)
+ **out = **in
+ }
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_ScheduleTriggerConfig.
+func (in *JobConfiguration_ScheduleTriggerConfig) DeepCopy() *JobConfiguration_ScheduleTriggerConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_ScheduleTriggerConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobConfiguration_ScheduleTriggerConfig_STATUS) DeepCopyInto(out *JobConfiguration_ScheduleTriggerConfig_STATUS) {
+ *out = *in
+ if in.CronExpression != nil {
+ in, out := &in.CronExpression, &out.CronExpression
+ *out = new(string)
+ **out = **in
+ }
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_ScheduleTriggerConfig_STATUS.
+func (in *JobConfiguration_ScheduleTriggerConfig_STATUS) DeepCopy() *JobConfiguration_ScheduleTriggerConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_ScheduleTriggerConfig_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 *JobList) DeepCopyInto(out *JobList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]Job, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobList.
+func (in *JobList) DeepCopy() *JobList {
+ if in == nil {
+ return nil
+ }
+ out := new(JobList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *JobList) 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 *JobOperatorSpec) DeepCopyInto(out *JobOperatorSpec) {
+ *out = *in
+ if in.ConfigMapExpressions != nil {
+ in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **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.SecretExpressions != nil {
+ in, out := &in.SecretExpressions, &out.SecretExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobOperatorSpec.
+func (in *JobOperatorSpec) DeepCopy() *JobOperatorSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(JobOperatorSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobScale) DeepCopyInto(out *JobScale) {
+ *out = *in
+ if in.MaxExecutions != nil {
+ in, out := &in.MaxExecutions, &out.MaxExecutions
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinExecutions != nil {
+ in, out := &in.MinExecutions, &out.MinExecutions
+ *out = new(int)
+ **out = **in
+ }
+ if in.PollingInterval != nil {
+ in, out := &in.PollingInterval, &out.PollingInterval
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Rules != nil {
+ in, out := &in.Rules, &out.Rules
+ *out = make([]JobScaleRule, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobScale.
+func (in *JobScale) DeepCopy() *JobScale {
+ if in == nil {
+ return nil
+ }
+ out := new(JobScale)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobScaleRule) DeepCopyInto(out *JobScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]v1.JSON, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+ 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.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 JobScaleRule.
+func (in *JobScaleRule) DeepCopy() *JobScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(JobScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobScaleRule_STATUS) DeepCopyInto(out *JobScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]v1.JSON, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+ 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.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 JobScaleRule_STATUS.
+func (in *JobScaleRule_STATUS) DeepCopy() *JobScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobScaleRule_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 *JobScale_STATUS) DeepCopyInto(out *JobScale_STATUS) {
+ *out = *in
+ if in.MaxExecutions != nil {
+ in, out := &in.MaxExecutions, &out.MaxExecutions
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinExecutions != nil {
+ in, out := &in.MinExecutions, &out.MinExecutions
+ *out = new(int)
+ **out = **in
+ }
+ if in.PollingInterval != nil {
+ in, out := &in.PollingInterval, &out.PollingInterval
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Rules != nil {
+ in, out := &in.Rules, &out.Rules
+ *out = make([]JobScaleRule_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobScale_STATUS.
+func (in *JobScale_STATUS) DeepCopy() *JobScale_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobScale_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 *JobTemplate) DeepCopyInto(out *JobTemplate) {
+ *out = *in
+ if in.Containers != nil {
+ in, out := &in.Containers, &out.Containers
+ *out = make([]Container, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.InitContainers != nil {
+ in, out := &in.InitContainers, &out.InitContainers
+ *out = make([]BaseContainer, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.Volumes != nil {
+ in, out := &in.Volumes, &out.Volumes
+ *out = make([]Volume, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobTemplate.
+func (in *JobTemplate) DeepCopy() *JobTemplate {
+ if in == nil {
+ return nil
+ }
+ out := new(JobTemplate)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobTemplate_STATUS) DeepCopyInto(out *JobTemplate_STATUS) {
+ *out = *in
+ if in.Containers != nil {
+ in, out := &in.Containers, &out.Containers
+ *out = make([]Container_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.InitContainers != nil {
+ in, out := &in.InitContainers, &out.InitContainers
+ *out = make([]BaseContainer_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.Volumes != nil {
+ in, out := &in.Volumes, &out.Volumes
+ *out = make([]Volume_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobTemplate_STATUS.
+func (in *JobTemplate_STATUS) DeepCopy() *JobTemplate_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobTemplate_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 *Job_STATUS) DeepCopyInto(out *Job_STATUS) {
+ *out = *in
+ if in.Conditions != nil {
+ in, out := &in.Conditions, &out.Conditions
+ *out = make([]conditions.Condition, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Configuration != nil {
+ in, out := &in.Configuration, &out.Configuration
+ *out = new(JobConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.EnvironmentId != nil {
+ in, out := &in.EnvironmentId, &out.EnvironmentId
+ *out = new(string)
+ **out = **in
+ }
+ if in.EventStreamEndpoint != nil {
+ in, out := &in.EventStreamEndpoint, &out.EventStreamEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.Id != nil {
+ in, out := &in.Id, &out.Id
+ *out = new(string)
+ **out = **in
+ }
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(ManagedServiceIdentity_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.OutboundIpAddresses != nil {
+ in, out := &in.OutboundIpAddresses, &out.OutboundIpAddresses
+ *out = make([]string, len(*in))
+ copy(*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.ProvisioningState != nil {
+ in, out := &in.ProvisioningState, &out.ProvisioningState
+ *out = new(string)
+ **out = **in
+ }
+ 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.Template != nil {
+ in, out := &in.Template, &out.Template
+ *out = new(JobTemplate_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+ if in.WorkloadProfileName != nil {
+ in, out := &in.WorkloadProfileName, &out.WorkloadProfileName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Job_STATUS.
+func (in *Job_STATUS) DeepCopy() *Job_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Job_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 *Job_Spec) DeepCopyInto(out *Job_Spec) {
+ *out = *in
+ if in.Configuration != nil {
+ in, out := &in.Configuration, &out.Configuration
+ *out = new(JobConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.EnvironmentReference != nil {
+ in, out := &in.EnvironmentReference, &out.EnvironmentReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(ManagedServiceIdentity)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.OperatorSpec != nil {
+ in, out := &in.OperatorSpec, &out.OperatorSpec
+ *out = new(JobOperatorSpec)
+ (*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.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.Template != nil {
+ in, out := &in.Template, &out.Template
+ *out = new(JobTemplate)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.WorkloadProfileName != nil {
+ in, out := &in.WorkloadProfileName, &out.WorkloadProfileName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Job_Spec.
+func (in *Job_Spec) DeepCopy() *Job_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(Job_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 *JwtClaimChecks) DeepCopyInto(out *JwtClaimChecks) {
+ *out = *in
+ if in.AllowedClientApplications != nil {
+ in, out := &in.AllowedClientApplications, &out.AllowedClientApplications
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedGroups != nil {
+ in, out := &in.AllowedGroups, &out.AllowedGroups
+ *out = make([]string, len(*in))
+ copy(*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 JwtClaimChecks.
+func (in *JwtClaimChecks) DeepCopy() *JwtClaimChecks {
+ if in == nil {
+ return nil
+ }
+ out := new(JwtClaimChecks)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JwtClaimChecks_STATUS) DeepCopyInto(out *JwtClaimChecks_STATUS) {
+ *out = *in
+ if in.AllowedClientApplications != nil {
+ in, out := &in.AllowedClientApplications, &out.AllowedClientApplications
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedGroups != nil {
+ in, out := &in.AllowedGroups, &out.AllowedGroups
+ *out = make([]string, len(*in))
+ copy(*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 JwtClaimChecks_STATUS.
+func (in *JwtClaimChecks_STATUS) DeepCopy() *JwtClaimChecks_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JwtClaimChecks_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 *KedaConfiguration_STATUS) DeepCopyInto(out *KedaConfiguration_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.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 KedaConfiguration_STATUS.
+func (in *KedaConfiguration_STATUS) DeepCopy() *KedaConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(KedaConfiguration_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 *LogAnalyticsConfiguration) DeepCopyInto(out *LogAnalyticsConfiguration) {
+ *out = *in
+ if in.CustomerId != nil {
+ in, out := &in.CustomerId, &out.CustomerId
+ *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.SharedKey != nil {
+ in, out := &in.SharedKey, &out.SharedKey
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsConfiguration.
+func (in *LogAnalyticsConfiguration) DeepCopy() *LogAnalyticsConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(LogAnalyticsConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *LogAnalyticsConfiguration_STATUS) DeepCopyInto(out *LogAnalyticsConfiguration_STATUS) {
+ *out = *in
+ if in.CustomerId != nil {
+ in, out := &in.CustomerId, &out.CustomerId
+ *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 LogAnalyticsConfiguration_STATUS.
+func (in *LogAnalyticsConfiguration_STATUS) DeepCopy() *LogAnalyticsConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(LogAnalyticsConfiguration_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 *Login) DeepCopyInto(out *Login) {
+ *out = *in
+ if in.AllowedExternalRedirectUrls != nil {
+ in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.CookieExpiration != nil {
+ in, out := &in.CookieExpiration, &out.CookieExpiration
+ *out = new(CookieExpiration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Nonce != nil {
+ in, out := &in.Nonce, &out.Nonce
+ *out = new(Nonce)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.PreserveUrlFragmentsForLogins != nil {
+ in, out := &in.PreserveUrlFragmentsForLogins, &out.PreserveUrlFragmentsForLogins
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Routes != nil {
+ in, out := &in.Routes, &out.Routes
+ *out = new(LoginRoutes)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TokenStore != nil {
+ in, out := &in.TokenStore, &out.TokenStore
+ *out = new(TokenStore)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Login.
+func (in *Login) DeepCopy() *Login {
+ if in == nil {
+ return nil
+ }
+ out := new(Login)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *LoginRoutes) DeepCopyInto(out *LoginRoutes) {
+ *out = *in
+ if in.LogoutEndpoint != nil {
+ in, out := &in.LogoutEndpoint, &out.LogoutEndpoint
+ *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 LoginRoutes.
+func (in *LoginRoutes) DeepCopy() *LoginRoutes {
+ if in == nil {
+ return nil
+ }
+ out := new(LoginRoutes)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *LoginRoutes_STATUS) DeepCopyInto(out *LoginRoutes_STATUS) {
+ *out = *in
+ if in.LogoutEndpoint != nil {
+ in, out := &in.LogoutEndpoint, &out.LogoutEndpoint
+ *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 LoginRoutes_STATUS.
+func (in *LoginRoutes_STATUS) DeepCopy() *LoginRoutes_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(LoginRoutes_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 *LoginScopes) DeepCopyInto(out *LoginScopes) {
+ *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.Scopes != nil {
+ in, out := &in.Scopes, &out.Scopes
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginScopes.
+func (in *LoginScopes) DeepCopy() *LoginScopes {
+ if in == nil {
+ return nil
+ }
+ out := new(LoginScopes)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *LoginScopes_STATUS) DeepCopyInto(out *LoginScopes_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.Scopes != nil {
+ in, out := &in.Scopes, &out.Scopes
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginScopes_STATUS.
+func (in *LoginScopes_STATUS) DeepCopy() *LoginScopes_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(LoginScopes_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 *Login_STATUS) DeepCopyInto(out *Login_STATUS) {
+ *out = *in
+ if in.AllowedExternalRedirectUrls != nil {
+ in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.CookieExpiration != nil {
+ in, out := &in.CookieExpiration, &out.CookieExpiration
+ *out = new(CookieExpiration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Nonce != nil {
+ in, out := &in.Nonce, &out.Nonce
+ *out = new(Nonce_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.PreserveUrlFragmentsForLogins != nil {
+ in, out := &in.PreserveUrlFragmentsForLogins, &out.PreserveUrlFragmentsForLogins
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Routes != nil {
+ in, out := &in.Routes, &out.Routes
+ *out = new(LoginRoutes_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TokenStore != nil {
+ in, out := &in.TokenStore, &out.TokenStore
+ *out = new(TokenStore_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Login_STATUS.
+func (in *Login_STATUS) DeepCopy() *Login_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Login_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 *ManagedEnvironment) DeepCopyInto(out *ManagedEnvironment) {
+ *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 ManagedEnvironment.
+func (in *ManagedEnvironment) DeepCopy() *ManagedEnvironment {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ManagedEnvironment) 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 *ManagedEnvironmentList) DeepCopyInto(out *ManagedEnvironmentList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]ManagedEnvironment, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironmentList.
+func (in *ManagedEnvironmentList) DeepCopy() *ManagedEnvironmentList {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironmentList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ManagedEnvironmentList) 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 *ManagedEnvironmentOperatorSpec) DeepCopyInto(out *ManagedEnvironmentOperatorSpec) {
+ *out = *in
+ if in.ConfigMapExpressions != nil {
+ in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **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.SecretExpressions != nil {
+ in, out := &in.SecretExpressions, &out.SecretExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironmentOperatorSpec.
+func (in *ManagedEnvironmentOperatorSpec) DeepCopy() *ManagedEnvironmentOperatorSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironmentOperatorSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ManagedEnvironment_Properties_PeerAuthentication_STATUS) DeepCopyInto(out *ManagedEnvironment_Properties_PeerAuthentication_STATUS) {
+ *out = *in
+ if in.Mtls != nil {
+ in, out := &in.Mtls, &out.Mtls
+ *out = new(Mtls_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 ManagedEnvironment_Properties_PeerAuthentication_STATUS.
+func (in *ManagedEnvironment_Properties_PeerAuthentication_STATUS) DeepCopy() *ManagedEnvironment_Properties_PeerAuthentication_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerAuthentication_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 *ManagedEnvironment_Properties_PeerAuthentication_Spec) DeepCopyInto(out *ManagedEnvironment_Properties_PeerAuthentication_Spec) {
+ *out = *in
+ if in.Mtls != nil {
+ in, out := &in.Mtls, &out.Mtls
+ *out = new(Mtls)
+ (*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 ManagedEnvironment_Properties_PeerAuthentication_Spec.
+func (in *ManagedEnvironment_Properties_PeerAuthentication_Spec) DeepCopy() *ManagedEnvironment_Properties_PeerAuthentication_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerAuthentication_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 *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) DeepCopyInto(out *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS.
+func (in *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) DeepCopy() *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) DeepCopyInto(out *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec.
+func (in *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) DeepCopy() *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) DeepCopyInto(out *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) {
+ *out = *in
+ if in.Encryption != nil {
+ in, out := &in.Encryption, &out.Encryption
+ *out = new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS.
+func (in *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) DeepCopy() *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerTrafficConfiguration_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 *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) DeepCopyInto(out *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) {
+ *out = *in
+ if in.Encryption != nil {
+ in, out := &in.Encryption, &out.Encryption
+ *out = new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec)
+ (*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 ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec.
+func (in *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) DeepCopy() *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerTrafficConfiguration_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 *ManagedEnvironment_STATUS) DeepCopyInto(out *ManagedEnvironment_STATUS) {
+ *out = *in
+ if in.AppLogsConfiguration != nil {
+ in, out := &in.AppLogsConfiguration, &out.AppLogsConfiguration
+ *out = new(AppLogsConfiguration_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.CustomDomainConfiguration != nil {
+ in, out := &in.CustomDomainConfiguration, &out.CustomDomainConfiguration
+ *out = new(CustomDomainConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.DaprConfiguration != nil {
+ in, out := &in.DaprConfiguration, &out.DaprConfiguration
+ *out = new(DaprConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.DefaultDomain != nil {
+ in, out := &in.DefaultDomain, &out.DefaultDomain
+ *out = new(string)
+ **out = **in
+ }
+ if in.DeploymentErrors != nil {
+ in, out := &in.DeploymentErrors, &out.DeploymentErrors
+ *out = new(string)
+ **out = **in
+ }
+ if in.EventStreamEndpoint != nil {
+ in, out := &in.EventStreamEndpoint, &out.EventStreamEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.Id != nil {
+ in, out := &in.Id, &out.Id
+ *out = new(string)
+ **out = **in
+ }
+ if in.InfrastructureResourceGroup != nil {
+ in, out := &in.InfrastructureResourceGroup, &out.InfrastructureResourceGroup
+ *out = new(string)
+ **out = **in
+ }
+ if in.KedaConfiguration != nil {
+ in, out := &in.KedaConfiguration, &out.KedaConfiguration
+ *out = new(KedaConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Kind != nil {
+ in, out := &in.Kind, &out.Kind
+ *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.PeerAuthentication != nil {
+ in, out := &in.PeerAuthentication, &out.PeerAuthentication
+ *out = new(ManagedEnvironment_Properties_PeerAuthentication_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.PeerTrafficConfiguration != nil {
+ in, out := &in.PeerTrafficConfiguration, &out.PeerTrafficConfiguration
+ *out = new(ManagedEnvironment_Properties_PeerTrafficConfiguration_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.StaticIp != nil {
+ in, out := &in.StaticIp, &out.StaticIp
+ *out = new(string)
+ **out = **in
+ }
+ 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.VnetConfiguration != nil {
+ in, out := &in.VnetConfiguration, &out.VnetConfiguration
+ *out = new(VnetConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.WorkloadProfiles != nil {
+ in, out := &in.WorkloadProfiles, &out.WorkloadProfiles
+ *out = make([]WorkloadProfile_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ZoneRedundant != nil {
+ in, out := &in.ZoneRedundant, &out.ZoneRedundant
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_STATUS.
+func (in *ManagedEnvironment_STATUS) DeepCopy() *ManagedEnvironment_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_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 *ManagedEnvironment_Spec) DeepCopyInto(out *ManagedEnvironment_Spec) {
+ *out = *in
+ if in.AppLogsConfiguration != nil {
+ in, out := &in.AppLogsConfiguration, &out.AppLogsConfiguration
+ *out = new(AppLogsConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomDomainConfiguration != nil {
+ in, out := &in.CustomDomainConfiguration, &out.CustomDomainConfiguration
+ *out = new(CustomDomainConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.DaprAIConnectionString != nil {
+ in, out := &in.DaprAIConnectionString, &out.DaprAIConnectionString
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+ if in.DaprAIInstrumentationKey != nil {
+ in, out := &in.DaprAIInstrumentationKey, &out.DaprAIInstrumentationKey
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+ if in.InfrastructureResourceGroup != nil {
+ in, out := &in.InfrastructureResourceGroup, &out.InfrastructureResourceGroup
+ *out = new(string)
+ **out = **in
+ }
+ if in.Kind != nil {
+ in, out := &in.Kind, &out.Kind
+ *out = new(string)
+ **out = **in
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.OperatorSpec != nil {
+ in, out := &in.OperatorSpec, &out.OperatorSpec
+ *out = new(ManagedEnvironmentOperatorSpec)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Owner != nil {
+ in, out := &in.Owner, &out.Owner
+ *out = new(genruntime.KnownResourceReference)
+ **out = **in
+ }
+ if in.PeerAuthentication != nil {
+ in, out := &in.PeerAuthentication, &out.PeerAuthentication
+ *out = new(ManagedEnvironment_Properties_PeerAuthentication_Spec)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.PeerTrafficConfiguration != nil {
+ in, out := &in.PeerTrafficConfiguration, &out.PeerTrafficConfiguration
+ *out = new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec)
+ (*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.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.VnetConfiguration != nil {
+ in, out := &in.VnetConfiguration, &out.VnetConfiguration
+ *out = new(VnetConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.WorkloadProfiles != nil {
+ in, out := &in.WorkloadProfiles, &out.WorkloadProfiles
+ *out = make([]WorkloadProfile, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ZoneRedundant != nil {
+ in, out := &in.ZoneRedundant, &out.ZoneRedundant
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Spec.
+func (in *ManagedEnvironment_Spec) DeepCopy() *ManagedEnvironment_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_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 *ManagedServiceIdentity) DeepCopyInto(out *ManagedServiceIdentity) {
+ *out = *in
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+ if in.UserAssignedIdentities != nil {
+ in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities
+ *out = make([]UserAssignedIdentityDetails, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedServiceIdentity.
+func (in *ManagedServiceIdentity) DeepCopy() *ManagedServiceIdentity {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedServiceIdentity)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ManagedServiceIdentity_STATUS) DeepCopyInto(out *ManagedServiceIdentity_STATUS) {
+ *out = *in
+ if in.PrincipalId != nil {
+ in, out := &in.PrincipalId, &out.PrincipalId
+ *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.TenantId != nil {
+ in, out := &in.TenantId, &out.TenantId
+ *out = new(string)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+ if in.UserAssignedIdentities != nil {
+ in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities
+ *out = make(map[string]UserAssignedIdentity_STATUS, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedServiceIdentity_STATUS.
+func (in *ManagedServiceIdentity_STATUS) DeepCopy() *ManagedServiceIdentity_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedServiceIdentity_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 *Mtls) DeepCopyInto(out *Mtls) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mtls.
+func (in *Mtls) DeepCopy() *Mtls {
+ if in == nil {
+ return nil
+ }
+ out := new(Mtls)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Mtls_STATUS) DeepCopyInto(out *Mtls_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mtls_STATUS.
+func (in *Mtls_STATUS) DeepCopy() *Mtls_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Mtls_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 *Nonce) DeepCopyInto(out *Nonce) {
+ *out = *in
+ if in.NonceExpirationInterval != nil {
+ in, out := &in.NonceExpirationInterval, &out.NonceExpirationInterval
+ *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.ValidateNonce != nil {
+ in, out := &in.ValidateNonce, &out.ValidateNonce
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Nonce.
+func (in *Nonce) DeepCopy() *Nonce {
+ if in == nil {
+ return nil
+ }
+ out := new(Nonce)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Nonce_STATUS) DeepCopyInto(out *Nonce_STATUS) {
+ *out = *in
+ if in.NonceExpirationInterval != nil {
+ in, out := &in.NonceExpirationInterval, &out.NonceExpirationInterval
+ *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.ValidateNonce != nil {
+ in, out := &in.ValidateNonce, &out.ValidateNonce
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Nonce_STATUS.
+func (in *Nonce_STATUS) DeepCopy() *Nonce_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Nonce_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 *OpenIdConnectClientCredential) DeepCopyInto(out *OpenIdConnectClientCredential) {
+ *out = *in
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Method != nil {
+ in, out := &in.Method, &out.Method
+ *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 OpenIdConnectClientCredential.
+func (in *OpenIdConnectClientCredential) DeepCopy() *OpenIdConnectClientCredential {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectClientCredential)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *OpenIdConnectClientCredential_STATUS) DeepCopyInto(out *OpenIdConnectClientCredential_STATUS) {
+ *out = *in
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Method != nil {
+ in, out := &in.Method, &out.Method
+ *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 OpenIdConnectClientCredential_STATUS.
+func (in *OpenIdConnectClientCredential_STATUS) DeepCopy() *OpenIdConnectClientCredential_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectClientCredential_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 *OpenIdConnectConfig) DeepCopyInto(out *OpenIdConnectConfig) {
+ *out = *in
+ if in.AuthorizationEndpoint != nil {
+ in, out := &in.AuthorizationEndpoint, &out.AuthorizationEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.CertificationUri != nil {
+ in, out := &in.CertificationUri, &out.CertificationUri
+ *out = new(string)
+ **out = **in
+ }
+ if in.Issuer != nil {
+ in, out := &in.Issuer, &out.Issuer
+ *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.TokenEndpoint != nil {
+ in, out := &in.TokenEndpoint, &out.TokenEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.WellKnownOpenIdConfiguration != nil {
+ in, out := &in.WellKnownOpenIdConfiguration, &out.WellKnownOpenIdConfiguration
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectConfig.
+func (in *OpenIdConnectConfig) DeepCopy() *OpenIdConnectConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *OpenIdConnectConfig_STATUS) DeepCopyInto(out *OpenIdConnectConfig_STATUS) {
+ *out = *in
+ if in.AuthorizationEndpoint != nil {
+ in, out := &in.AuthorizationEndpoint, &out.AuthorizationEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.CertificationUri != nil {
+ in, out := &in.CertificationUri, &out.CertificationUri
+ *out = new(string)
+ **out = **in
+ }
+ if in.Issuer != nil {
+ in, out := &in.Issuer, &out.Issuer
+ *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.TokenEndpoint != nil {
+ in, out := &in.TokenEndpoint, &out.TokenEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.WellKnownOpenIdConfiguration != nil {
+ in, out := &in.WellKnownOpenIdConfiguration, &out.WellKnownOpenIdConfiguration
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectConfig_STATUS.
+func (in *OpenIdConnectConfig_STATUS) DeepCopy() *OpenIdConnectConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectConfig_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 *OpenIdConnectLogin) DeepCopyInto(out *OpenIdConnectLogin) {
+ *out = *in
+ if in.NameClaimType != nil {
+ in, out := &in.NameClaimType, &out.NameClaimType
+ *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.Scopes != nil {
+ in, out := &in.Scopes, &out.Scopes
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectLogin.
+func (in *OpenIdConnectLogin) DeepCopy() *OpenIdConnectLogin {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectLogin)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *OpenIdConnectLogin_STATUS) DeepCopyInto(out *OpenIdConnectLogin_STATUS) {
+ *out = *in
+ if in.NameClaimType != nil {
+ in, out := &in.NameClaimType, &out.NameClaimType
+ *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.Scopes != nil {
+ in, out := &in.Scopes, &out.Scopes
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectLogin_STATUS.
+func (in *OpenIdConnectLogin_STATUS) DeepCopy() *OpenIdConnectLogin_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectLogin_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 *OpenIdConnectRegistration) DeepCopyInto(out *OpenIdConnectRegistration) {
+ *out = *in
+ if in.ClientCredential != nil {
+ in, out := &in.ClientCredential, &out.ClientCredential
+ *out = new(OpenIdConnectClientCredential)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.OpenIdConnectConfiguration != nil {
+ in, out := &in.OpenIdConnectConfiguration, &out.OpenIdConnectConfiguration
+ *out = new(OpenIdConnectConfig)
+ (*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 OpenIdConnectRegistration.
+func (in *OpenIdConnectRegistration) DeepCopy() *OpenIdConnectRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *OpenIdConnectRegistration_STATUS) DeepCopyInto(out *OpenIdConnectRegistration_STATUS) {
+ *out = *in
+ if in.ClientCredential != nil {
+ in, out := &in.ClientCredential, &out.ClientCredential
+ *out = new(OpenIdConnectClientCredential_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.OpenIdConnectConfiguration != nil {
+ in, out := &in.OpenIdConnectConfiguration, &out.OpenIdConnectConfiguration
+ *out = new(OpenIdConnectConfig_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 OpenIdConnectRegistration_STATUS.
+func (in *OpenIdConnectRegistration_STATUS) DeepCopy() *OpenIdConnectRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectRegistration_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 *QueueScaleRule) DeepCopyInto(out *QueueScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.QueueLength != nil {
+ in, out := &in.QueueLength, &out.QueueLength
+ *out = new(int)
+ **out = **in
+ }
+ if in.QueueName != nil {
+ in, out := &in.QueueName, &out.QueueName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueScaleRule.
+func (in *QueueScaleRule) DeepCopy() *QueueScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(QueueScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *QueueScaleRule_STATUS) DeepCopyInto(out *QueueScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.QueueLength != nil {
+ in, out := &in.QueueLength, &out.QueueLength
+ *out = new(int)
+ **out = **in
+ }
+ if in.QueueName != nil {
+ in, out := &in.QueueName, &out.QueueName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueScaleRule_STATUS.
+func (in *QueueScaleRule_STATUS) DeepCopy() *QueueScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(QueueScaleRule_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 *RegistryCredentials) DeepCopyInto(out *RegistryCredentials) {
+ *out = *in
+ if in.IdentityReference != nil {
+ in, out := &in.IdentityReference, &out.IdentityReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.PasswordSecretRef != nil {
+ in, out := &in.PasswordSecretRef, &out.PasswordSecretRef
+ *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.Server != nil {
+ in, out := &in.Server, &out.Server
+ *out = new(string)
+ **out = **in
+ }
+ if in.Username != nil {
+ in, out := &in.Username, &out.Username
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryCredentials.
+func (in *RegistryCredentials) DeepCopy() *RegistryCredentials {
+ if in == nil {
+ return nil
+ }
+ out := new(RegistryCredentials)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *RegistryCredentials_STATUS) DeepCopyInto(out *RegistryCredentials_STATUS) {
+ *out = *in
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(string)
+ **out = **in
+ }
+ if in.PasswordSecretRef != nil {
+ in, out := &in.PasswordSecretRef, &out.PasswordSecretRef
+ *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.Server != nil {
+ in, out := &in.Server, &out.Server
+ *out = new(string)
+ **out = **in
+ }
+ if in.Username != nil {
+ in, out := &in.Username, &out.Username
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryCredentials_STATUS.
+func (in *RegistryCredentials_STATUS) DeepCopy() *RegistryCredentials_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(RegistryCredentials_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 *Scale) DeepCopyInto(out *Scale) {
+ *out = *in
+ if in.MaxReplicas != nil {
+ in, out := &in.MaxReplicas, &out.MaxReplicas
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinReplicas != nil {
+ in, out := &in.MinReplicas, &out.MinReplicas
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Rules != nil {
+ in, out := &in.Rules, &out.Rules
+ *out = make([]ScaleRule, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Scale.
+func (in *Scale) DeepCopy() *Scale {
+ if in == nil {
+ return nil
+ }
+ out := new(Scale)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ScaleRule) DeepCopyInto(out *ScaleRule) {
+ *out = *in
+ if in.AzureQueue != nil {
+ in, out := &in.AzureQueue, &out.AzureQueue
+ *out = new(QueueScaleRule)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Custom != nil {
+ in, out := &in.Custom, &out.Custom
+ *out = new(CustomScaleRule)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Http != nil {
+ in, out := &in.Http, &out.Http
+ *out = new(HttpScaleRule)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Tcp != nil {
+ in, out := &in.Tcp, &out.Tcp
+ *out = new(TcpScaleRule)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleRule.
+func (in *ScaleRule) DeepCopy() *ScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(ScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ScaleRuleAuth) DeepCopyInto(out *ScaleRuleAuth) {
+ *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.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.TriggerParameter != nil {
+ in, out := &in.TriggerParameter, &out.TriggerParameter
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleRuleAuth.
+func (in *ScaleRuleAuth) DeepCopy() *ScaleRuleAuth {
+ if in == nil {
+ return nil
+ }
+ out := new(ScaleRuleAuth)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ScaleRuleAuth_STATUS) DeepCopyInto(out *ScaleRuleAuth_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.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.TriggerParameter != nil {
+ in, out := &in.TriggerParameter, &out.TriggerParameter
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleRuleAuth_STATUS.
+func (in *ScaleRuleAuth_STATUS) DeepCopy() *ScaleRuleAuth_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ScaleRuleAuth_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 *ScaleRule_STATUS) DeepCopyInto(out *ScaleRule_STATUS) {
+ *out = *in
+ if in.AzureQueue != nil {
+ in, out := &in.AzureQueue, &out.AzureQueue
+ *out = new(QueueScaleRule_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Custom != nil {
+ in, out := &in.Custom, &out.Custom
+ *out = new(CustomScaleRule_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Http != nil {
+ in, out := &in.Http, &out.Http
+ *out = new(HttpScaleRule_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Tcp != nil {
+ in, out := &in.Tcp, &out.Tcp
+ *out = new(TcpScaleRule_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleRule_STATUS.
+func (in *ScaleRule_STATUS) DeepCopy() *ScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ScaleRule_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 *Scale_STATUS) DeepCopyInto(out *Scale_STATUS) {
+ *out = *in
+ if in.MaxReplicas != nil {
+ in, out := &in.MaxReplicas, &out.MaxReplicas
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinReplicas != nil {
+ in, out := &in.MinReplicas, &out.MinReplicas
+ *out = new(int)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Rules != nil {
+ in, out := &in.Rules, &out.Rules
+ *out = make([]ScaleRule_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Scale_STATUS.
+func (in *Scale_STATUS) DeepCopy() *Scale_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Scale_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 *Secret) DeepCopyInto(out *Secret) {
+ *out = *in
+ if in.IdentityReference != nil {
+ in, out := &in.IdentityReference, &out.IdentityReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.KeyVaultUrl != nil {
+ in, out := &in.KeyVaultUrl, &out.KeyVaultUrl
+ *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.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Secret.
+func (in *Secret) DeepCopy() *Secret {
+ if in == nil {
+ return nil
+ }
+ out := new(Secret)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *SecretVolumeItem) DeepCopyInto(out *SecretVolumeItem) {
+ *out = *in
+ if in.Path != nil {
+ in, out := &in.Path, &out.Path
+ *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.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretVolumeItem.
+func (in *SecretVolumeItem) DeepCopy() *SecretVolumeItem {
+ if in == nil {
+ return nil
+ }
+ out := new(SecretVolumeItem)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *SecretVolumeItem_STATUS) DeepCopyInto(out *SecretVolumeItem_STATUS) {
+ *out = *in
+ if in.Path != nil {
+ in, out := &in.Path, &out.Path
+ *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.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretVolumeItem_STATUS.
+func (in *SecretVolumeItem_STATUS) DeepCopy() *SecretVolumeItem_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(SecretVolumeItem_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 *Secret_STATUS) DeepCopyInto(out *Secret_STATUS) {
+ *out = *in
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(string)
+ **out = **in
+ }
+ if in.KeyVaultUrl != nil {
+ in, out := &in.KeyVaultUrl, &out.KeyVaultUrl
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Secret_STATUS.
+func (in *Secret_STATUS) DeepCopy() *Secret_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Secret_STATUS)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Service) DeepCopyInto(out *Service) {
+ *out = *in
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
+func (in *Service) DeepCopy() *Service {
+ if in == nil {
+ return nil
+ }
+ out := new(Service)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ServiceBind) DeepCopyInto(out *ServiceBind) {
+ *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.ServiceReference != nil {
+ in, out := &in.ServiceReference, &out.ServiceReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBind.
+func (in *ServiceBind) DeepCopy() *ServiceBind {
+ if in == nil {
+ return nil
+ }
+ out := new(ServiceBind)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ServiceBind_STATUS) DeepCopyInto(out *ServiceBind_STATUS) {
+ *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.ServiceId != nil {
+ in, out := &in.ServiceId, &out.ServiceId
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBind_STATUS.
+func (in *ServiceBind_STATUS) DeepCopy() *ServiceBind_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ServiceBind_STATUS)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Service_STATUS) DeepCopyInto(out *Service_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.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_STATUS.
+func (in *Service_STATUS) DeepCopy() *Service_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Service_STATUS)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *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 *TcpScaleRule) DeepCopyInto(out *TcpScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ 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 TcpScaleRule.
+func (in *TcpScaleRule) DeepCopy() *TcpScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(TcpScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TcpScaleRule_STATUS) DeepCopyInto(out *TcpScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ 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 TcpScaleRule_STATUS.
+func (in *TcpScaleRule_STATUS) DeepCopy() *TcpScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(TcpScaleRule_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 *Template) DeepCopyInto(out *Template) {
+ *out = *in
+ if in.Containers != nil {
+ in, out := &in.Containers, &out.Containers
+ *out = make([]Container, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.InitContainers != nil {
+ in, out := &in.InitContainers, &out.InitContainers
+ *out = make([]BaseContainer, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.RevisionSuffix != nil {
+ in, out := &in.RevisionSuffix, &out.RevisionSuffix
+ *out = new(string)
+ **out = **in
+ }
+ if in.Scale != nil {
+ in, out := &in.Scale, &out.Scale
+ *out = new(Scale)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ServiceBinds != nil {
+ in, out := &in.ServiceBinds, &out.ServiceBinds
+ *out = make([]ServiceBind, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.TerminationGracePeriodSeconds != nil {
+ in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.Volumes != nil {
+ in, out := &in.Volumes, &out.Volumes
+ *out = make([]Volume, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Template.
+func (in *Template) DeepCopy() *Template {
+ if in == nil {
+ return nil
+ }
+ out := new(Template)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Template_STATUS) DeepCopyInto(out *Template_STATUS) {
+ *out = *in
+ if in.Containers != nil {
+ in, out := &in.Containers, &out.Containers
+ *out = make([]Container_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.InitContainers != nil {
+ in, out := &in.InitContainers, &out.InitContainers
+ *out = make([]BaseContainer_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ 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.RevisionSuffix != nil {
+ in, out := &in.RevisionSuffix, &out.RevisionSuffix
+ *out = new(string)
+ **out = **in
+ }
+ if in.Scale != nil {
+ in, out := &in.Scale, &out.Scale
+ *out = new(Scale_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ServiceBinds != nil {
+ in, out := &in.ServiceBinds, &out.ServiceBinds
+ *out = make([]ServiceBind_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.TerminationGracePeriodSeconds != nil {
+ in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.Volumes != nil {
+ in, out := &in.Volumes, &out.Volumes
+ *out = make([]Volume_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Template_STATUS.
+func (in *Template_STATUS) DeepCopy() *Template_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Template_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 *TokenStore) DeepCopyInto(out *TokenStore) {
+ *out = *in
+ if in.AzureBlobStorage != nil {
+ in, out := &in.AzureBlobStorage, &out.AzureBlobStorage
+ *out = new(BlobStorageTokenStore)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.TokenRefreshExtensionHours != nil {
+ in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours
+ *out = new(float64)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenStore.
+func (in *TokenStore) DeepCopy() *TokenStore {
+ if in == nil {
+ return nil
+ }
+ out := new(TokenStore)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TokenStore_STATUS) DeepCopyInto(out *TokenStore_STATUS) {
+ *out = *in
+ if in.AzureBlobStorage != nil {
+ in, out := &in.AzureBlobStorage, &out.AzureBlobStorage
+ *out = new(BlobStorageTokenStore_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.TokenRefreshExtensionHours != nil {
+ in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours
+ *out = new(float64)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenStore_STATUS.
+func (in *TokenStore_STATUS) DeepCopy() *TokenStore_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(TokenStore_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 *TrafficWeight) DeepCopyInto(out *TrafficWeight) {
+ *out = *in
+ if in.Label != nil {
+ in, out := &in.Label, &out.Label
+ *out = new(string)
+ **out = **in
+ }
+ if in.LatestRevision != nil {
+ in, out := &in.LatestRevision, &out.LatestRevision
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.RevisionName != nil {
+ in, out := &in.RevisionName, &out.RevisionName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Weight != nil {
+ in, out := &in.Weight, &out.Weight
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficWeight.
+func (in *TrafficWeight) DeepCopy() *TrafficWeight {
+ if in == nil {
+ return nil
+ }
+ out := new(TrafficWeight)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TrafficWeight_STATUS) DeepCopyInto(out *TrafficWeight_STATUS) {
+ *out = *in
+ if in.Label != nil {
+ in, out := &in.Label, &out.Label
+ *out = new(string)
+ **out = **in
+ }
+ if in.LatestRevision != nil {
+ in, out := &in.LatestRevision, &out.LatestRevision
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.RevisionName != nil {
+ in, out := &in.RevisionName, &out.RevisionName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Weight != nil {
+ in, out := &in.Weight, &out.Weight
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficWeight_STATUS.
+func (in *TrafficWeight_STATUS) DeepCopy() *TrafficWeight_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(TrafficWeight_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 *Twitter) DeepCopyInto(out *Twitter) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(TwitterRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Twitter.
+func (in *Twitter) DeepCopy() *Twitter {
+ if in == nil {
+ return nil
+ }
+ out := new(Twitter)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TwitterRegistration) DeepCopyInto(out *TwitterRegistration) {
+ *out = *in
+ if in.ConsumerKey != nil {
+ in, out := &in.ConsumerKey, &out.ConsumerKey
+ *out = new(string)
+ **out = **in
+ }
+ if in.ConsumerSecretSettingName != nil {
+ in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName
+ *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 TwitterRegistration.
+func (in *TwitterRegistration) DeepCopy() *TwitterRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(TwitterRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TwitterRegistration_STATUS) DeepCopyInto(out *TwitterRegistration_STATUS) {
+ *out = *in
+ if in.ConsumerKey != nil {
+ in, out := &in.ConsumerKey, &out.ConsumerKey
+ *out = new(string)
+ **out = **in
+ }
+ if in.ConsumerSecretSettingName != nil {
+ in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName
+ *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 TwitterRegistration_STATUS.
+func (in *TwitterRegistration_STATUS) DeepCopy() *TwitterRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(TwitterRegistration_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 *Twitter_STATUS) DeepCopyInto(out *Twitter_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PropertyBag != nil {
+ in, out := &in.PropertyBag, &out.PropertyBag
+ *out = make(genruntime.PropertyBag, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(TwitterRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Twitter_STATUS.
+func (in *Twitter_STATUS) DeepCopy() *Twitter_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Twitter_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 *UserAssignedIdentityDetails) DeepCopyInto(out *UserAssignedIdentityDetails) {
+ *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
+ }
+ }
+ out.Reference = in.Reference
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentityDetails.
+func (in *UserAssignedIdentityDetails) DeepCopy() *UserAssignedIdentityDetails {
+ if in == nil {
+ return nil
+ }
+ out := new(UserAssignedIdentityDetails)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *UserAssignedIdentity_STATUS) DeepCopyInto(out *UserAssignedIdentity_STATUS) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.PrincipalId != nil {
+ in, out := &in.PrincipalId, &out.PrincipalId
+ *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 UserAssignedIdentity_STATUS.
+func (in *UserAssignedIdentity_STATUS) DeepCopy() *UserAssignedIdentity_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(UserAssignedIdentity_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 *VnetConfiguration) DeepCopyInto(out *VnetConfiguration) {
+ *out = *in
+ if in.DockerBridgeCidr != nil {
+ in, out := &in.DockerBridgeCidr, &out.DockerBridgeCidr
+ *out = new(string)
+ **out = **in
+ }
+ if in.InfrastructureSubnetReference != nil {
+ in, out := &in.InfrastructureSubnetReference, &out.InfrastructureSubnetReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.Internal != nil {
+ in, out := &in.Internal, &out.Internal
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PlatformReservedCidr != nil {
+ in, out := &in.PlatformReservedCidr, &out.PlatformReservedCidr
+ *out = new(string)
+ **out = **in
+ }
+ if in.PlatformReservedDnsIP != nil {
+ in, out := &in.PlatformReservedDnsIP, &out.PlatformReservedDnsIP
+ *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 VnetConfiguration.
+func (in *VnetConfiguration) DeepCopy() *VnetConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(VnetConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *VnetConfiguration_STATUS) DeepCopyInto(out *VnetConfiguration_STATUS) {
+ *out = *in
+ if in.DockerBridgeCidr != nil {
+ in, out := &in.DockerBridgeCidr, &out.DockerBridgeCidr
+ *out = new(string)
+ **out = **in
+ }
+ if in.InfrastructureSubnetId != nil {
+ in, out := &in.InfrastructureSubnetId, &out.InfrastructureSubnetId
+ *out = new(string)
+ **out = **in
+ }
+ if in.Internal != nil {
+ in, out := &in.Internal, &out.Internal
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PlatformReservedCidr != nil {
+ in, out := &in.PlatformReservedCidr, &out.PlatformReservedCidr
+ *out = new(string)
+ **out = **in
+ }
+ if in.PlatformReservedDnsIP != nil {
+ in, out := &in.PlatformReservedDnsIP, &out.PlatformReservedDnsIP
+ *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 VnetConfiguration_STATUS.
+func (in *VnetConfiguration_STATUS) DeepCopy() *VnetConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(VnetConfiguration_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 *Volume) DeepCopyInto(out *Volume) {
+ *out = *in
+ if in.MountOptions != nil {
+ in, out := &in.MountOptions, &out.MountOptions
+ *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.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]SecretVolumeItem, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.StorageName != nil {
+ in, out := &in.StorageName, &out.StorageName
+ *out = new(string)
+ **out = **in
+ }
+ if in.StorageType != nil {
+ in, out := &in.StorageType, &out.StorageType
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume.
+func (in *Volume) DeepCopy() *Volume {
+ if in == nil {
+ return nil
+ }
+ out := new(Volume)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *VolumeMount) DeepCopyInto(out *VolumeMount) {
+ *out = *in
+ if in.MountPath != nil {
+ in, out := &in.MountPath, &out.MountPath
+ *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.SubPath != nil {
+ in, out := &in.SubPath, &out.SubPath
+ *out = new(string)
+ **out = **in
+ }
+ if in.VolumeName != nil {
+ in, out := &in.VolumeName, &out.VolumeName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeMount.
+func (in *VolumeMount) DeepCopy() *VolumeMount {
+ if in == nil {
+ return nil
+ }
+ out := new(VolumeMount)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *VolumeMount_STATUS) DeepCopyInto(out *VolumeMount_STATUS) {
+ *out = *in
+ if in.MountPath != nil {
+ in, out := &in.MountPath, &out.MountPath
+ *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.SubPath != nil {
+ in, out := &in.SubPath, &out.SubPath
+ *out = new(string)
+ **out = **in
+ }
+ if in.VolumeName != nil {
+ in, out := &in.VolumeName, &out.VolumeName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeMount_STATUS.
+func (in *VolumeMount_STATUS) DeepCopy() *VolumeMount_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(VolumeMount_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 *Volume_STATUS) DeepCopyInto(out *Volume_STATUS) {
+ *out = *in
+ if in.MountOptions != nil {
+ in, out := &in.MountOptions, &out.MountOptions
+ *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.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]SecretVolumeItem_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.StorageName != nil {
+ in, out := &in.StorageName, &out.StorageName
+ *out = new(string)
+ **out = **in
+ }
+ if in.StorageType != nil {
+ in, out := &in.StorageType, &out.StorageType
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume_STATUS.
+func (in *Volume_STATUS) DeepCopy() *Volume_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Volume_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 *WorkloadProfile) DeepCopyInto(out *WorkloadProfile) {
+ *out = *in
+ if in.MaximumCount != nil {
+ in, out := &in.MaximumCount, &out.MaximumCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinimumCount != nil {
+ in, out := &in.MinimumCount, &out.MinimumCount
+ *out = new(int)
+ **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.WorkloadProfileType != nil {
+ in, out := &in.WorkloadProfileType, &out.WorkloadProfileType
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadProfile.
+func (in *WorkloadProfile) DeepCopy() *WorkloadProfile {
+ if in == nil {
+ return nil
+ }
+ out := new(WorkloadProfile)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *WorkloadProfile_STATUS) DeepCopyInto(out *WorkloadProfile_STATUS) {
+ *out = *in
+ if in.MaximumCount != nil {
+ in, out := &in.MaximumCount, &out.MaximumCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinimumCount != nil {
+ in, out := &in.MinimumCount, &out.MinimumCount
+ *out = new(int)
+ **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.WorkloadProfileType != nil {
+ in, out := &in.WorkloadProfileType, &out.WorkloadProfileType
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadProfile_STATUS.
+func (in *WorkloadProfile_STATUS) DeepCopy() *WorkloadProfile_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(WorkloadProfile_STATUS)
+ in.DeepCopyInto(out)
+ return out
+}
diff --git a/v2/api/app/v1api20240301/structure.txt b/v2/api/app/v1api20240301/structure.txt
new file mode 100644
index 00000000000..f3dedfc3ce2
--- /dev/null
+++ b/v2/api/app/v1api20240301/structure.txt
@@ -0,0 +1,1112 @@
+// Code generated by azure-service-operator-codegen. DO NOT EDIT.
+github.com/Azure/azure-service-operator/v2/api/app/v1api20240301
+----------------------------------------------------------------
+APIVersion: Enum (1 value)
+└── "2024-03-01"
+AuthConfig: Resource
+├── Owner: ContainerApp
+├── Spec: Object (9 properties)
+│ ├── AzureName: string
+│ ├── EncryptionSettings: *Object (2 properties)
+│ │ ├── ContainerAppAuthEncryptionSecretName: *string
+│ │ └── ContainerAppAuthSigningSecretName: *string
+│ ├── GlobalValidation: *Object (3 properties)
+│ │ ├── ExcludedPaths: string[]
+│ │ ├── RedirectToProvider: *string
+│ │ └── UnauthenticatedClientAction: *Enum (4 values)
+│ │ ├── "AllowAnonymous"
+│ │ ├── "RedirectToLoginPage"
+│ │ ├── "Return401"
+│ │ └── "Return403"
+│ ├── HttpSettings: *Object (3 properties)
+│ │ ├── ForwardProxy: *Object (3 properties)
+│ │ │ ├── Convention: *Enum (3 values)
+│ │ │ │ ├── "Custom"
+│ │ │ │ ├── "NoProxy"
+│ │ │ │ └── "Standard"
+│ │ │ ├── CustomHostHeaderName: *string
+│ │ │ └── CustomProtoHeaderName: *string
+│ │ ├── RequireHttps: *bool
+│ │ └── Routes: *Object (1 property)
+│ │ └── ApiPrefix: *string
+│ ├── IdentityProviders: *Object (8 properties)
+│ │ ├── Apple: *Object (3 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (1 property)
+│ │ │ │ └── Scopes: string[]
+│ │ │ └── Registration: *Object (2 properties)
+│ │ │ ├── ClientId: *string
+│ │ │ └── ClientSecretSettingName: *string
+│ │ ├── AzureActiveDirectory: *Object (5 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── IsAutoProvisioned: *bool
+│ │ │ ├── Login: *Object (2 properties)
+│ │ │ │ ├── DisableWWWAuthenticate: *bool
+│ │ │ │ └── LoginParameters: string[]
+│ │ │ ├── Registration: *Object (6 properties)
+│ │ │ │ ├── ClientId: *string
+│ │ │ │ ├── ClientSecretCertificateIssuer: *string
+│ │ │ │ ├── ClientSecretCertificateSubjectAlternativeName: *string
+│ │ │ │ ├── ClientSecretCertificateThumbprint: *string
+│ │ │ │ ├── ClientSecretSettingName: *string
+│ │ │ │ └── OpenIdIssuer: *string
+│ │ │ └── Validation: *Object (3 properties)
+│ │ │ ├── AllowedAudiences: string[]
+│ │ │ ├── DefaultAuthorizationPolicy: *Object (2 properties)
+│ │ │ │ ├── AllowedApplications: string[]
+│ │ │ │ └── AllowedPrincipals: *Object (2 properties)
+│ │ │ │ ├── Groups: string[]
+│ │ │ │ └── Identities: string[]
+│ │ │ └── JwtClaimChecks: *Object (2 properties)
+│ │ │ ├── AllowedClientApplications: string[]
+│ │ │ └── AllowedGroups: string[]
+│ │ ├── AzureStaticWebApps: *Object (2 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ └── Registration: *Object (1 property)
+│ │ │ └── ClientId: *string
+│ │ ├── CustomOpenIdConnectProviders: map[string]Object (3 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (2 properties)
+│ │ │ │ ├── NameClaimType: *string
+│ │ │ │ └── Scopes: string[]
+│ │ │ └── Registration: *Object (3 properties)
+│ │ │ ├── ClientCredential: *Object (2 properties)
+│ │ │ │ ├── ClientSecretSettingName: *string
+│ │ │ │ └── Method: *Enum (1 value)
+│ │ │ │ └── "ClientSecretPost"
+│ │ │ ├── ClientId: *string
+│ │ │ └── OpenIdConnectConfiguration: *Object (5 properties)
+│ │ │ ├── AuthorizationEndpoint: *string
+│ │ │ ├── CertificationUri: *string
+│ │ │ ├── Issuer: *string
+│ │ │ ├── TokenEndpoint: *string
+│ │ │ └── WellKnownOpenIdConfiguration: *string
+│ │ ├── Facebook: *Object (4 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── GraphApiVersion: *string
+│ │ │ ├── Login: *Object (1 property)
+│ │ │ │ └── Scopes: string[]
+│ │ │ └── Registration: *Object (2 properties)
+│ │ │ ├── AppId: *string
+│ │ │ └── AppSecretSettingName: *string
+│ │ ├── GitHub: *Object (3 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (1 property)
+│ │ │ │ └── Scopes: string[]
+│ │ │ └── Registration: *Object (2 properties)
+│ │ │ ├── ClientId: *string
+│ │ │ └── ClientSecretSettingName: *string
+│ │ ├── Google: *Object (4 properties)
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── Login: *Object (1 property)
+│ │ │ │ └── Scopes: string[]
+│ │ │ ├── Registration: *Object (2 properties)
+│ │ │ │ ├── ClientId: *string
+│ │ │ │ └── ClientSecretSettingName: *string
+│ │ │ └── Validation: *Object (1 property)
+│ │ │ └── AllowedAudiences: string[]
+│ │ └── Twitter: *Object (2 properties)
+│ │ ├── Enabled: *bool
+│ │ └── Registration: *Object (2 properties)
+│ │ ├── ConsumerKey: *string
+│ │ └── ConsumerSecretSettingName: *string
+│ ├── Login: *Object (6 properties)
+│ │ ├── AllowedExternalRedirectUrls: string[]
+│ │ ├── CookieExpiration: *Object (2 properties)
+│ │ │ ├── Convention: *Enum (2 values)
+│ │ │ │ ├── "FixedTime"
+│ │ │ │ └── "IdentityProviderDerived"
+│ │ │ └── TimeToExpiration: *string
+│ │ ├── Nonce: *Object (2 properties)
+│ │ │ ├── NonceExpirationInterval: *string
+│ │ │ └── ValidateNonce: *bool
+│ │ ├── PreserveUrlFragmentsForLogins: *bool
+│ │ ├── Routes: *Object (1 property)
+│ │ │ └── LogoutEndpoint: *string
+│ │ └── TokenStore: *Object (3 properties)
+│ │ ├── AzureBlobStorage: *Object (1 property)
+│ │ │ └── SasUrlSettingName: *string
+│ │ ├── Enabled: *bool
+│ │ └── TokenRefreshExtensionHours: *float64
+│ ├── OperatorSpec: *Object (2 properties)
+│ │ ├── ConfigMapExpressions: *core.DestinationExpression[]
+│ │ └── SecretExpressions: *core.DestinationExpression[]
+│ ├── Owner: *genruntime.KnownResourceReference
+│ └── Platform: *Object (2 properties)
+│ ├── Enabled: *bool
+│ └── RuntimeVersion: *string
+└── Status: Object (11 properties)
+ ├── Conditions: conditions.Condition[]
+ ├── EncryptionSettings: *Object (2 properties)
+ │ ├── ContainerAppAuthEncryptionSecretName: *string
+ │ └── ContainerAppAuthSigningSecretName: *string
+ ├── GlobalValidation: *Object (3 properties)
+ │ ├── ExcludedPaths: string[]
+ │ ├── RedirectToProvider: *string
+ │ └── UnauthenticatedClientAction: *Enum (4 values)
+ │ ├── "AllowAnonymous"
+ │ ├── "RedirectToLoginPage"
+ │ ├── "Return401"
+ │ └── "Return403"
+ ├── HttpSettings: *Object (3 properties)
+ │ ├── ForwardProxy: *Object (3 properties)
+ │ │ ├── Convention: *Enum (3 values)
+ │ │ │ ├── "Custom"
+ │ │ │ ├── "NoProxy"
+ │ │ │ └── "Standard"
+ │ │ ├── CustomHostHeaderName: *string
+ │ │ └── CustomProtoHeaderName: *string
+ │ ├── RequireHttps: *bool
+ │ └── Routes: *Object (1 property)
+ │ └── ApiPrefix: *string
+ ├── Id: *string
+ ├── IdentityProviders: *Object (8 properties)
+ │ ├── Apple: *Object (3 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (1 property)
+ │ │ │ └── Scopes: string[]
+ │ │ └── Registration: *Object (2 properties)
+ │ │ ├── ClientId: *string
+ │ │ └── ClientSecretSettingName: *string
+ │ ├── AzureActiveDirectory: *Object (5 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── IsAutoProvisioned: *bool
+ │ │ ├── Login: *Object (2 properties)
+ │ │ │ ├── DisableWWWAuthenticate: *bool
+ │ │ │ └── LoginParameters: string[]
+ │ │ ├── Registration: *Object (6 properties)
+ │ │ │ ├── ClientId: *string
+ │ │ │ ├── ClientSecretCertificateIssuer: *string
+ │ │ │ ├── ClientSecretCertificateSubjectAlternativeName: *string
+ │ │ │ ├── ClientSecretCertificateThumbprint: *string
+ │ │ │ ├── ClientSecretSettingName: *string
+ │ │ │ └── OpenIdIssuer: *string
+ │ │ └── Validation: *Object (3 properties)
+ │ │ ├── AllowedAudiences: string[]
+ │ │ ├── DefaultAuthorizationPolicy: *Object (2 properties)
+ │ │ │ ├── AllowedApplications: string[]
+ │ │ │ └── AllowedPrincipals: *Object (2 properties)
+ │ │ │ ├── Groups: string[]
+ │ │ │ └── Identities: string[]
+ │ │ └── JwtClaimChecks: *Object (2 properties)
+ │ │ ├── AllowedClientApplications: string[]
+ │ │ └── AllowedGroups: string[]
+ │ ├── AzureStaticWebApps: *Object (2 properties)
+ │ │ ├── Enabled: *bool
+ │ │ └── Registration: *Object (1 property)
+ │ │ └── ClientId: *string
+ │ ├── CustomOpenIdConnectProviders: map[string]Object (3 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (2 properties)
+ │ │ │ ├── NameClaimType: *string
+ │ │ │ └── Scopes: string[]
+ │ │ └── Registration: *Object (3 properties)
+ │ │ ├── ClientCredential: *Object (2 properties)
+ │ │ │ ├── ClientSecretSettingName: *string
+ │ │ │ └── Method: *Enum (1 value)
+ │ │ │ └── "ClientSecretPost"
+ │ │ ├── ClientId: *string
+ │ │ └── OpenIdConnectConfiguration: *Object (5 properties)
+ │ │ ├── AuthorizationEndpoint: *string
+ │ │ ├── CertificationUri: *string
+ │ │ ├── Issuer: *string
+ │ │ ├── TokenEndpoint: *string
+ │ │ └── WellKnownOpenIdConfiguration: *string
+ │ ├── Facebook: *Object (4 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── GraphApiVersion: *string
+ │ │ ├── Login: *Object (1 property)
+ │ │ │ └── Scopes: string[]
+ │ │ └── Registration: *Object (2 properties)
+ │ │ ├── AppId: *string
+ │ │ └── AppSecretSettingName: *string
+ │ ├── GitHub: *Object (3 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (1 property)
+ │ │ │ └── Scopes: string[]
+ │ │ └── Registration: *Object (2 properties)
+ │ │ ├── ClientId: *string
+ │ │ └── ClientSecretSettingName: *string
+ │ ├── Google: *Object (4 properties)
+ │ │ ├── Enabled: *bool
+ │ │ ├── Login: *Object (1 property)
+ │ │ │ └── Scopes: string[]
+ │ │ ├── Registration: *Object (2 properties)
+ │ │ │ ├── ClientId: *string
+ │ │ │ └── ClientSecretSettingName: *string
+ │ │ └── Validation: *Object (1 property)
+ │ │ └── AllowedAudiences: string[]
+ │ └── Twitter: *Object (2 properties)
+ │ ├── Enabled: *bool
+ │ └── Registration: *Object (2 properties)
+ │ ├── ConsumerKey: *string
+ │ └── ConsumerSecretSettingName: *string
+ ├── Login: *Object (6 properties)
+ │ ├── AllowedExternalRedirectUrls: string[]
+ │ ├── CookieExpiration: *Object (2 properties)
+ │ │ ├── Convention: *Enum (2 values)
+ │ │ │ ├── "FixedTime"
+ │ │ │ └── "IdentityProviderDerived"
+ │ │ └── TimeToExpiration: *string
+ │ ├── Nonce: *Object (2 properties)
+ │ │ ├── NonceExpirationInterval: *string
+ │ │ └── ValidateNonce: *bool
+ │ ├── PreserveUrlFragmentsForLogins: *bool
+ │ ├── Routes: *Object (1 property)
+ │ │ └── LogoutEndpoint: *string
+ │ └── TokenStore: *Object (3 properties)
+ │ ├── AzureBlobStorage: *Object (1 property)
+ │ │ └── SasUrlSettingName: *string
+ │ ├── Enabled: *bool
+ │ └── TokenRefreshExtensionHours: *float64
+ ├── Name: *string
+ ├── Platform: *Object (2 properties)
+ │ ├── Enabled: *bool
+ │ └── RuntimeVersion: *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"
+ └── Type: *string
+ContainerApp: Resource
+├── Owner: resources/v1apiv20191001.ResourceGroup
+├── Spec: Object (13 properties)
+│ ├── AzureName: string
+│ ├── Configuration: *Object (7 properties)
+│ │ ├── ActiveRevisionsMode: *Enum (2 values)
+│ │ │ ├── "Multiple"
+│ │ │ └── "Single"
+│ │ ├── Dapr: *Object (8 properties)
+│ │ │ ├── AppId: *string
+│ │ │ ├── AppPort: *int
+│ │ │ ├── AppProtocol: *Enum (2 values)
+│ │ │ │ ├── "grpc"
+│ │ │ │ └── "http"
+│ │ │ ├── EnableApiLogging: *bool
+│ │ │ ├── Enabled: *bool
+│ │ │ ├── HttpMaxRequestSize: *int
+│ │ │ ├── HttpReadBufferSize: *int
+│ │ │ └── LogLevel: *Enum (4 values)
+│ │ │ ├── "debug"
+│ │ │ ├── "error"
+│ │ │ ├── "info"
+│ │ │ └── "warn"
+│ │ ├── Ingress: *Object (12 properties)
+│ │ │ ├── AdditionalPortMappings: Object (3 properties)[]
+│ │ │ │ ├── ExposedPort: *int
+│ │ │ │ ├── External: *bool
+│ │ │ │ └── TargetPort: *int
+│ │ │ ├── AllowInsecure: *bool
+│ │ │ ├── ClientCertificateMode: *Enum (3 values)
+│ │ │ │ ├── "accept"
+│ │ │ │ ├── "ignore"
+│ │ │ │ └── "require"
+│ │ │ ├── CorsPolicy: *Object (6 properties)
+│ │ │ │ ├── AllowCredentials: *bool
+│ │ │ │ ├── AllowedHeaders: string[]
+│ │ │ │ ├── AllowedMethods: string[]
+│ │ │ │ ├── AllowedOrigins: string[]
+│ │ │ │ ├── ExposeHeaders: string[]
+│ │ │ │ └── MaxAge: *int
+│ │ │ ├── CustomDomains: Object (3 properties)[]
+│ │ │ │ ├── BindingType: *Enum (2 values)
+│ │ │ │ │ ├── "Disabled"
+│ │ │ │ │ └── "SniEnabled"
+│ │ │ │ ├── CertificateReference: *genruntime.ResourceReference
+│ │ │ │ └── Name: *string
+│ │ │ ├── ExposedPort: *int
+│ │ │ ├── External: *bool
+│ │ │ ├── IpSecurityRestrictions: Object (4 properties)[]
+│ │ │ │ ├── Action: *Enum (2 values)
+│ │ │ │ │ ├── "Allow"
+│ │ │ │ │ └── "Deny"
+│ │ │ │ ├── Description: *string
+│ │ │ │ ├── IpAddressRange: *string
+│ │ │ │ └── Name: *string
+│ │ │ ├── StickySessions: *Object (1 property)
+│ │ │ │ └── Affinity: *Enum (2 values)
+│ │ │ │ ├── "none"
+│ │ │ │ └── "sticky"
+│ │ │ ├── TargetPort: *int
+│ │ │ ├── Traffic: Object (4 properties)[]
+│ │ │ │ ├── Label: *string
+│ │ │ │ ├── LatestRevision: *bool
+│ │ │ │ ├── RevisionName: *string
+│ │ │ │ └── Weight: *int
+│ │ │ └── Transport: *Enum (4 values)
+│ │ │ ├── "auto"
+│ │ │ ├── "http"
+│ │ │ ├── "http2"
+│ │ │ └── "tcp"
+│ │ ├── MaxInactiveRevisions: *int
+│ │ ├── Registries: Object (4 properties)[]
+│ │ │ ├── IdentityReference: *genruntime.ResourceReference
+│ │ │ ├── PasswordSecretRef: *string
+│ │ │ ├── Server: *string
+│ │ │ └── Username: *string
+│ │ ├── Secrets: Object (4 properties)[]
+│ │ │ ├── IdentityReference: *genruntime.ResourceReference
+│ │ │ ├── KeyVaultUrl: *string
+│ │ │ ├── Name: *string
+│ │ │ └── Value: *genruntime.SecretReference
+│ │ └── Service: *Object (1 property)
+│ │ └── Type: *string
+│ ├── EnvironmentReference: *genruntime.ResourceReference
+│ ├── ExtendedLocation: *Object (2 properties)
+│ │ ├── Name: *string
+│ │ └── Type: *Enum (1 value)
+│ │ └── "CustomLocation"
+│ ├── Identity: *Object (2 properties)
+│ │ ├── Type: *Enum (4 values)
+│ │ │ ├── "None"
+│ │ │ ├── "SystemAssigned"
+│ │ │ ├── "SystemAssigned,UserAssigned"
+│ │ │ └── "UserAssigned"
+│ │ └── UserAssignedIdentities: Object (1 property)[]
+│ │ └── Reference: genruntime.ResourceReference
+│ ├── Location: *string
+│ ├── ManagedByReference: *genruntime.ResourceReference
+│ ├── ManagedEnvironmentReference: *genruntime.ResourceReference
+│ ├── OperatorSpec: *Object (3 properties)
+│ │ ├── ConfigMapExpressions: *core.DestinationExpression[]
+│ │ ├── ConfigMaps: *Object (2 properties)
+│ │ │ ├── EventStreamEndpoint: *genruntime.ConfigMapDestination
+│ │ │ └── Fqdn: *genruntime.ConfigMapDestination
+│ │ └── SecretExpressions: *core.DestinationExpression[]
+│ ├── Owner: *genruntime.KnownResourceReference
+│ ├── Tags: map[string]string
+│ ├── Template: *Object (7 properties)
+│ │ ├── Containers: Object (8 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Probes: Object (9 properties)[]
+│ │ │ │ ├── FailureThreshold: *int
+│ │ │ │ ├── HttpGet: *Object (5 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── HttpHeaders: Object (2 properties)[]
+│ │ │ │ │ │ ├── Name: *string
+│ │ │ │ │ │ └── Value: *string
+│ │ │ │ │ ├── Path: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ └── Scheme: *Enum (2 values)
+│ │ │ │ │ ├── "HTTP"
+│ │ │ │ │ └── "HTTPS"
+│ │ │ │ ├── InitialDelaySeconds: *int
+│ │ │ │ ├── PeriodSeconds: *int
+│ │ │ │ ├── SuccessThreshold: *int
+│ │ │ │ ├── TcpSocket: *Object (2 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ └── Port: *int
+│ │ │ │ ├── TerminationGracePeriodSeconds: *int
+│ │ │ │ ├── TimeoutSeconds: *int
+│ │ │ │ └── Type: *Enum (3 values)
+│ │ │ │ ├── "Liveness"
+│ │ │ │ ├── "Readiness"
+│ │ │ │ └── "Startup"
+│ │ │ ├── Resources: *Object (2 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── InitContainers: Object (7 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Resources: *Object (2 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── RevisionSuffix: *string
+│ │ ├── Scale: *Object (3 properties)
+│ │ │ ├── MaxReplicas: *int
+│ │ │ ├── MinReplicas: *int
+│ │ │ └── Rules: Object (5 properties)[]
+│ │ │ ├── AzureQueue: *Object (3 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── QueueLength: *int
+│ │ │ │ └── QueueName: *string
+│ │ │ ├── Custom: *Object (3 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ ├── Metadata: map[string]string
+│ │ │ │ └── Type: *string
+│ │ │ ├── Http: *Object (2 properties)
+│ │ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ │ ├── SecretRef: *string
+│ │ │ │ │ └── TriggerParameter: *string
+│ │ │ │ └── Metadata: map[string]string
+│ │ │ ├── Name: *string
+│ │ │ └── Tcp: *Object (2 properties)
+│ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── TriggerParameter: *string
+│ │ │ └── Metadata: map[string]string
+│ │ ├── ServiceBinds: Object (2 properties)[]
+│ │ │ ├── Name: *string
+│ │ │ └── ServiceReference: *genruntime.ResourceReference
+│ │ ├── TerminationGracePeriodSeconds: *int
+│ │ └── Volumes: Object (5 properties)[]
+│ │ ├── MountOptions: *string
+│ │ ├── Name: *string
+│ │ ├── Secrets: Object (2 properties)[]
+│ │ │ ├── Path: *string
+│ │ │ └── SecretRef: *string
+│ │ ├── StorageName: *string
+│ │ └── StorageType: *Enum (3 values)
+│ │ ├── "AzureFile"
+│ │ ├── "EmptyDir"
+│ │ └── "Secret"
+│ └── WorkloadProfileName: *string
+└── Status: Object (22 properties)
+ ├── Conditions: conditions.Condition[]
+ ├── Configuration: *Object (7 properties)
+ │ ├── ActiveRevisionsMode: *Enum (2 values)
+ │ │ ├── "Multiple"
+ │ │ └── "Single"
+ │ ├── Dapr: *Object (8 properties)
+ │ │ ├── AppId: *string
+ │ │ ├── AppPort: *int
+ │ │ ├── AppProtocol: *Enum (2 values)
+ │ │ │ ├── "grpc"
+ │ │ │ └── "http"
+ │ │ ├── EnableApiLogging: *bool
+ │ │ ├── Enabled: *bool
+ │ │ ├── HttpMaxRequestSize: *int
+ │ │ ├── HttpReadBufferSize: *int
+ │ │ └── LogLevel: *Enum (4 values)
+ │ │ ├── "debug"
+ │ │ ├── "error"
+ │ │ ├── "info"
+ │ │ └── "warn"
+ │ ├── Ingress: *Object (13 properties)
+ │ │ ├── AdditionalPortMappings: Object (3 properties)[]
+ │ │ │ ├── ExposedPort: *int
+ │ │ │ ├── External: *bool
+ │ │ │ └── TargetPort: *int
+ │ │ ├── AllowInsecure: *bool
+ │ │ ├── ClientCertificateMode: *Enum (3 values)
+ │ │ │ ├── "accept"
+ │ │ │ ├── "ignore"
+ │ │ │ └── "require"
+ │ │ ├── CorsPolicy: *Object (6 properties)
+ │ │ │ ├── AllowCredentials: *bool
+ │ │ │ ├── AllowedHeaders: string[]
+ │ │ │ ├── AllowedMethods: string[]
+ │ │ │ ├── AllowedOrigins: string[]
+ │ │ │ ├── ExposeHeaders: string[]
+ │ │ │ └── MaxAge: *int
+ │ │ ├── CustomDomains: Object (3 properties)[]
+ │ │ │ ├── BindingType: *Enum (2 values)
+ │ │ │ │ ├── "Disabled"
+ │ │ │ │ └── "SniEnabled"
+ │ │ │ ├── CertificateId: *string
+ │ │ │ └── Name: *string
+ │ │ ├── ExposedPort: *int
+ │ │ ├── External: *bool
+ │ │ ├── Fqdn: *string
+ │ │ ├── IpSecurityRestrictions: Object (4 properties)[]
+ │ │ │ ├── Action: *Enum (2 values)
+ │ │ │ │ ├── "Allow"
+ │ │ │ │ └── "Deny"
+ │ │ │ ├── Description: *string
+ │ │ │ ├── IpAddressRange: *string
+ │ │ │ └── Name: *string
+ │ │ ├── StickySessions: *Object (1 property)
+ │ │ │ └── Affinity: *Enum (2 values)
+ │ │ │ ├── "none"
+ │ │ │ └── "sticky"
+ │ │ ├── TargetPort: *int
+ │ │ ├── Traffic: Object (4 properties)[]
+ │ │ │ ├── Label: *string
+ │ │ │ ├── LatestRevision: *bool
+ │ │ │ ├── RevisionName: *string
+ │ │ │ └── Weight: *int
+ │ │ └── Transport: *Enum (4 values)
+ │ │ ├── "auto"
+ │ │ ├── "http"
+ │ │ ├── "http2"
+ │ │ └── "tcp"
+ │ ├── MaxInactiveRevisions: *int
+ │ ├── Registries: Object (4 properties)[]
+ │ │ ├── Identity: *string
+ │ │ ├── PasswordSecretRef: *string
+ │ │ ├── Server: *string
+ │ │ └── Username: *string
+ │ ├── Secrets: Object (3 properties)[]
+ │ │ ├── Identity: *string
+ │ │ ├── KeyVaultUrl: *string
+ │ │ └── Name: *string
+ │ └── Service: *Object (1 property)
+ │ └── Type: *string
+ ├── CustomDomainVerificationId: *string
+ ├── EnvironmentId: *string
+ ├── EventStreamEndpoint: *string
+ ├── ExtendedLocation: *Object (2 properties)
+ │ ├── Name: *string
+ │ └── Type: *Enum (1 value)
+ │ └── "CustomLocation"
+ ├── Id: *string
+ ├── Identity: *Object (4 properties)
+ │ ├── PrincipalId: *string
+ │ ├── TenantId: *string
+ │ ├── Type: *Enum (4 values)
+ │ │ ├── "None"
+ │ │ ├── "SystemAssigned"
+ │ │ ├── "SystemAssigned,UserAssigned"
+ │ │ └── "UserAssigned"
+ │ └── UserAssignedIdentities: map[string]Object (2 properties)
+ │ ├── ClientId: *string
+ │ └── PrincipalId: *string
+ ├── LatestReadyRevisionName: *string
+ ├── LatestRevisionFqdn: *string
+ ├── LatestRevisionName: *string
+ ├── Location: *string
+ ├── ManagedBy: *string
+ ├── ManagedEnvironmentId: *string
+ ├── Name: *string
+ ├── OutboundIpAddresses: string[]
+ ├── ProvisioningState: *Enum (5 values)
+ │ ├── "Canceled"
+ │ ├── "Deleting"
+ │ ├── "Failed"
+ │ ├── "InProgress"
+ │ └── "Succeeded"
+ ├── 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
+ ├── Template: *Object (7 properties)
+ │ ├── Containers: Object (8 properties)[]
+ │ │ ├── Args: string[]
+ │ │ ├── Command: string[]
+ │ │ ├── Env: Object (3 properties)[]
+ │ │ │ ├── Name: *string
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── Value: *string
+ │ │ ├── Image: *string
+ │ │ ├── Name: *string
+ │ │ ├── Probes: Object (9 properties)[]
+ │ │ │ ├── FailureThreshold: *int
+ │ │ │ ├── HttpGet: *Object (5 properties)
+ │ │ │ │ ├── Host: *string
+ │ │ │ │ ├── HttpHeaders: Object (2 properties)[]
+ │ │ │ │ │ ├── Name: *string
+ │ │ │ │ │ └── Value: *string
+ │ │ │ │ ├── Path: *string
+ │ │ │ │ ├── Port: *int
+ │ │ │ │ └── Scheme: *Enum (2 values)
+ │ │ │ │ ├── "HTTP"
+ │ │ │ │ └── "HTTPS"
+ │ │ │ ├── InitialDelaySeconds: *int
+ │ │ │ ├── PeriodSeconds: *int
+ │ │ │ ├── SuccessThreshold: *int
+ │ │ │ ├── TcpSocket: *Object (2 properties)
+ │ │ │ │ ├── Host: *string
+ │ │ │ │ └── Port: *int
+ │ │ │ ├── TerminationGracePeriodSeconds: *int
+ │ │ │ ├── TimeoutSeconds: *int
+ │ │ │ └── Type: *Enum (3 values)
+ │ │ │ ├── "Liveness"
+ │ │ │ ├── "Readiness"
+ │ │ │ └── "Startup"
+ │ │ ├── Resources: *Object (3 properties)
+ │ │ │ ├── Cpu: *float64
+ │ │ │ ├── EphemeralStorage: *string
+ │ │ │ └── Memory: *string
+ │ │ └── VolumeMounts: Object (3 properties)[]
+ │ │ ├── MountPath: *string
+ │ │ ├── SubPath: *string
+ │ │ └── VolumeName: *string
+ │ ├── InitContainers: Object (7 properties)[]
+ │ │ ├── Args: string[]
+ │ │ ├── Command: string[]
+ │ │ ├── Env: Object (3 properties)[]
+ │ │ │ ├── Name: *string
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── Value: *string
+ │ │ ├── Image: *string
+ │ │ ├── Name: *string
+ │ │ ├── Resources: *Object (3 properties)
+ │ │ │ ├── Cpu: *float64
+ │ │ │ ├── EphemeralStorage: *string
+ │ │ │ └── Memory: *string
+ │ │ └── VolumeMounts: Object (3 properties)[]
+ │ │ ├── MountPath: *string
+ │ │ ├── SubPath: *string
+ │ │ └── VolumeName: *string
+ │ ├── RevisionSuffix: *string
+ │ ├── Scale: *Object (3 properties)
+ │ │ ├── MaxReplicas: *int
+ │ │ ├── MinReplicas: *int
+ │ │ └── Rules: Object (5 properties)[]
+ │ │ ├── AzureQueue: *Object (3 properties)
+ │ │ │ ├── Auth: Object (2 properties)[]
+ │ │ │ │ ├── SecretRef: *string
+ │ │ │ │ └── TriggerParameter: *string
+ │ │ │ ├── QueueLength: *int
+ │ │ │ └── QueueName: *string
+ │ │ ├── Custom: *Object (3 properties)
+ │ │ │ ├── Auth: Object (2 properties)[]
+ │ │ │ │ ├── SecretRef: *string
+ │ │ │ │ └── TriggerParameter: *string
+ │ │ │ ├── Metadata: map[string]string
+ │ │ │ └── Type: *string
+ │ │ ├── Http: *Object (2 properties)
+ │ │ │ ├── Auth: Object (2 properties)[]
+ │ │ │ │ ├── SecretRef: *string
+ │ │ │ │ └── TriggerParameter: *string
+ │ │ │ └── Metadata: map[string]string
+ │ │ ├── Name: *string
+ │ │ └── Tcp: *Object (2 properties)
+ │ │ ├── Auth: Object (2 properties)[]
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── TriggerParameter: *string
+ │ │ └── Metadata: map[string]string
+ │ ├── ServiceBinds: Object (2 properties)[]
+ │ │ ├── Name: *string
+ │ │ └── ServiceId: *string
+ │ ├── TerminationGracePeriodSeconds: *int
+ │ └── Volumes: Object (5 properties)[]
+ │ ├── MountOptions: *string
+ │ ├── Name: *string
+ │ ├── Secrets: Object (2 properties)[]
+ │ │ ├── Path: *string
+ │ │ └── SecretRef: *string
+ │ ├── StorageName: *string
+ │ └── StorageType: *Enum (3 values)
+ │ ├── "AzureFile"
+ │ ├── "EmptyDir"
+ │ └── "Secret"
+ ├── Type: *string
+ └── WorkloadProfileName: *string
+Job: Resource
+├── Owner: resources/v1apiv20191001.ResourceGroup
+├── Spec: Object (10 properties)
+│ ├── AzureName: Validated (1 rule)
+│ │ └── Rule 0: Pattern: "^[-\\w\\._\\(\\)]+$"
+│ ├── Configuration: *Object (8 properties)
+│ │ ├── EventTriggerConfig: *Object (3 properties)
+│ │ │ ├── Parallelism: *int
+│ │ │ ├── ReplicaCompletionCount: *int
+│ │ │ └── Scale: *Object (4 properties)
+│ │ │ ├── MaxExecutions: *int
+│ │ │ ├── MinExecutions: *int
+│ │ │ ├── PollingInterval: *int
+│ │ │ └── Rules: Object (4 properties)[]
+│ │ │ ├── Auth: Object (2 properties)[]
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── TriggerParameter: *string
+│ │ │ ├── Metadata: map[string]v1.JSON
+│ │ │ ├── Name: *string
+│ │ │ └── Type: *string
+│ │ ├── ManualTriggerConfig: *Object (2 properties)
+│ │ │ ├── Parallelism: *int
+│ │ │ └── ReplicaCompletionCount: *int
+│ │ ├── Registries: Object (4 properties)[]
+│ │ │ ├── IdentityReference: *genruntime.ResourceReference
+│ │ │ ├── PasswordSecretRef: *string
+│ │ │ ├── Server: *string
+│ │ │ └── Username: *string
+│ │ ├── ReplicaRetryLimit: *int
+│ │ ├── ReplicaTimeout: *int
+│ │ ├── ScheduleTriggerConfig: *Object (3 properties)
+│ │ │ ├── CronExpression: *string
+│ │ │ ├── Parallelism: *int
+│ │ │ └── ReplicaCompletionCount: *int
+│ │ ├── Secrets: Object (4 properties)[]
+│ │ │ ├── IdentityReference: *genruntime.ResourceReference
+│ │ │ ├── KeyVaultUrl: *string
+│ │ │ ├── Name: *string
+│ │ │ └── Value: *genruntime.SecretReference
+│ │ └── TriggerType: *Enum (3 values)
+│ │ ├── "Event"
+│ │ ├── "Manual"
+│ │ └── "Schedule"
+│ ├── EnvironmentReference: *genruntime.ResourceReference
+│ ├── Identity: *Object (2 properties)
+│ │ ├── Type: *Enum (4 values)
+│ │ │ ├── "None"
+│ │ │ ├── "SystemAssigned"
+│ │ │ ├── "SystemAssigned,UserAssigned"
+│ │ │ └── "UserAssigned"
+│ │ └── UserAssignedIdentities: Object (1 property)[]
+│ │ └── Reference: genruntime.ResourceReference
+│ ├── Location: *string
+│ ├── OperatorSpec: *Object (2 properties)
+│ │ ├── ConfigMapExpressions: *core.DestinationExpression[]
+│ │ └── SecretExpressions: *core.DestinationExpression[]
+│ ├── Owner: *genruntime.KnownResourceReference
+│ ├── Tags: map[string]string
+│ ├── Template: *Object (3 properties)
+│ │ ├── Containers: Object (8 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Probes: Object (9 properties)[]
+│ │ │ │ ├── FailureThreshold: *int
+│ │ │ │ ├── HttpGet: *Object (5 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ ├── HttpHeaders: Object (2 properties)[]
+│ │ │ │ │ │ ├── Name: *string
+│ │ │ │ │ │ └── Value: *string
+│ │ │ │ │ ├── Path: *string
+│ │ │ │ │ ├── Port: *int
+│ │ │ │ │ └── Scheme: *Enum (2 values)
+│ │ │ │ │ ├── "HTTP"
+│ │ │ │ │ └── "HTTPS"
+│ │ │ │ ├── InitialDelaySeconds: *int
+│ │ │ │ ├── PeriodSeconds: *int
+│ │ │ │ ├── SuccessThreshold: *int
+│ │ │ │ ├── TcpSocket: *Object (2 properties)
+│ │ │ │ │ ├── Host: *string
+│ │ │ │ │ └── Port: *int
+│ │ │ │ ├── TerminationGracePeriodSeconds: *int
+│ │ │ │ ├── TimeoutSeconds: *int
+│ │ │ │ └── Type: *Enum (3 values)
+│ │ │ │ ├── "Liveness"
+│ │ │ │ ├── "Readiness"
+│ │ │ │ └── "Startup"
+│ │ │ ├── Resources: *Object (2 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ ├── InitContainers: Object (7 properties)[]
+│ │ │ ├── Args: string[]
+│ │ │ ├── Command: string[]
+│ │ │ ├── Env: Object (3 properties)[]
+│ │ │ │ ├── Name: *string
+│ │ │ │ ├── SecretRef: *string
+│ │ │ │ └── Value: *string
+│ │ │ ├── Image: *string
+│ │ │ ├── Name: *string
+│ │ │ ├── Resources: *Object (2 properties)
+│ │ │ │ ├── Cpu: *float64
+│ │ │ │ └── Memory: *string
+│ │ │ └── VolumeMounts: Object (3 properties)[]
+│ │ │ ├── MountPath: *string
+│ │ │ ├── SubPath: *string
+│ │ │ └── VolumeName: *string
+│ │ └── Volumes: Object (5 properties)[]
+│ │ ├── MountOptions: *string
+│ │ ├── Name: *string
+│ │ ├── Secrets: Object (2 properties)[]
+│ │ │ ├── Path: *string
+│ │ │ └── SecretRef: *string
+│ │ ├── StorageName: *string
+│ │ └── StorageType: *Enum (3 values)
+│ │ ├── "AzureFile"
+│ │ ├── "EmptyDir"
+│ │ └── "Secret"
+│ └── WorkloadProfileName: *string
+└── Status: Object (15 properties)
+ ├── Conditions: conditions.Condition[]
+ ├── Configuration: *Object (8 properties)
+ │ ├── EventTriggerConfig: *Object (3 properties)
+ │ │ ├── Parallelism: *int
+ │ │ ├── ReplicaCompletionCount: *int
+ │ │ └── Scale: *Object (4 properties)
+ │ │ ├── MaxExecutions: *int
+ │ │ ├── MinExecutions: *int
+ │ │ ├── PollingInterval: *int
+ │ │ └── Rules: Object (4 properties)[]
+ │ │ ├── Auth: Object (2 properties)[]
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── TriggerParameter: *string
+ │ │ ├── Metadata: map[string]v1.JSON
+ │ │ ├── Name: *string
+ │ │ └── Type: *string
+ │ ├── ManualTriggerConfig: *Object (2 properties)
+ │ │ ├── Parallelism: *int
+ │ │ └── ReplicaCompletionCount: *int
+ │ ├── Registries: Object (4 properties)[]
+ │ │ ├── Identity: *string
+ │ │ ├── PasswordSecretRef: *string
+ │ │ ├── Server: *string
+ │ │ └── Username: *string
+ │ ├── ReplicaRetryLimit: *int
+ │ ├── ReplicaTimeout: *int
+ │ ├── ScheduleTriggerConfig: *Object (3 properties)
+ │ │ ├── CronExpression: *string
+ │ │ ├── Parallelism: *int
+ │ │ └── ReplicaCompletionCount: *int
+ │ ├── Secrets: Object (3 properties)[]
+ │ │ ├── Identity: *string
+ │ │ ├── KeyVaultUrl: *string
+ │ │ └── Name: *string
+ │ └── TriggerType: *Enum (3 values)
+ │ ├── "Event"
+ │ ├── "Manual"
+ │ └── "Schedule"
+ ├── EnvironmentId: *string
+ ├── EventStreamEndpoint: *string
+ ├── Id: *string
+ ├── Identity: *Object (4 properties)
+ │ ├── PrincipalId: *string
+ │ ├── TenantId: *string
+ │ ├── Type: *Enum (4 values)
+ │ │ ├── "None"
+ │ │ ├── "SystemAssigned"
+ │ │ ├── "SystemAssigned,UserAssigned"
+ │ │ └── "UserAssigned"
+ │ └── UserAssignedIdentities: map[string]Object (2 properties)
+ │ ├── ClientId: *string
+ │ └── PrincipalId: *string
+ ├── Location: *string
+ ├── Name: *string
+ ├── OutboundIpAddresses: string[]
+ ├── ProvisioningState: *Enum (5 values)
+ │ ├── "Canceled"
+ │ ├── "Deleting"
+ │ ├── "Failed"
+ │ ├── "InProgress"
+ │ └── "Succeeded"
+ ├── 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
+ ├── Template: *Object (3 properties)
+ │ ├── Containers: Object (8 properties)[]
+ │ │ ├── Args: string[]
+ │ │ ├── Command: string[]
+ │ │ ├── Env: Object (3 properties)[]
+ │ │ │ ├── Name: *string
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── Value: *string
+ │ │ ├── Image: *string
+ │ │ ├── Name: *string
+ │ │ ├── Probes: Object (9 properties)[]
+ │ │ │ ├── FailureThreshold: *int
+ │ │ │ ├── HttpGet: *Object (5 properties)
+ │ │ │ │ ├── Host: *string
+ │ │ │ │ ├── HttpHeaders: Object (2 properties)[]
+ │ │ │ │ │ ├── Name: *string
+ │ │ │ │ │ └── Value: *string
+ │ │ │ │ ├── Path: *string
+ │ │ │ │ ├── Port: *int
+ │ │ │ │ └── Scheme: *Enum (2 values)
+ │ │ │ │ ├── "HTTP"
+ │ │ │ │ └── "HTTPS"
+ │ │ │ ├── InitialDelaySeconds: *int
+ │ │ │ ├── PeriodSeconds: *int
+ │ │ │ ├── SuccessThreshold: *int
+ │ │ │ ├── TcpSocket: *Object (2 properties)
+ │ │ │ │ ├── Host: *string
+ │ │ │ │ └── Port: *int
+ │ │ │ ├── TerminationGracePeriodSeconds: *int
+ │ │ │ ├── TimeoutSeconds: *int
+ │ │ │ └── Type: *Enum (3 values)
+ │ │ │ ├── "Liveness"
+ │ │ │ ├── "Readiness"
+ │ │ │ └── "Startup"
+ │ │ ├── Resources: *Object (3 properties)
+ │ │ │ ├── Cpu: *float64
+ │ │ │ ├── EphemeralStorage: *string
+ │ │ │ └── Memory: *string
+ │ │ └── VolumeMounts: Object (3 properties)[]
+ │ │ ├── MountPath: *string
+ │ │ ├── SubPath: *string
+ │ │ └── VolumeName: *string
+ │ ├── InitContainers: Object (7 properties)[]
+ │ │ ├── Args: string[]
+ │ │ ├── Command: string[]
+ │ │ ├── Env: Object (3 properties)[]
+ │ │ │ ├── Name: *string
+ │ │ │ ├── SecretRef: *string
+ │ │ │ └── Value: *string
+ │ │ ├── Image: *string
+ │ │ ├── Name: *string
+ │ │ ├── Resources: *Object (3 properties)
+ │ │ │ ├── Cpu: *float64
+ │ │ │ ├── EphemeralStorage: *string
+ │ │ │ └── Memory: *string
+ │ │ └── VolumeMounts: Object (3 properties)[]
+ │ │ ├── MountPath: *string
+ │ │ ├── SubPath: *string
+ │ │ └── VolumeName: *string
+ │ └── Volumes: Object (5 properties)[]
+ │ ├── MountOptions: *string
+ │ ├── Name: *string
+ │ ├── Secrets: Object (2 properties)[]
+ │ │ ├── Path: *string
+ │ │ └── SecretRef: *string
+ │ ├── StorageName: *string
+ │ └── StorageType: *Enum (3 values)
+ │ ├── "AzureFile"
+ │ ├── "EmptyDir"
+ │ └── "Secret"
+ ├── Type: *string
+ └── WorkloadProfileName: *string
+ManagedEnvironment: Resource
+├── Owner: resources/v1apiv20191001.ResourceGroup
+├── Spec: Object (16 properties)
+│ ├── AppLogsConfiguration: *Object (2 properties)
+│ │ ├── Destination: *string
+│ │ └── LogAnalyticsConfiguration: *Object (2 properties)
+│ │ ├── CustomerId: *string
+│ │ └── SharedKey: *genruntime.SecretReference
+│ ├── AzureName: string
+│ ├── CustomDomainConfiguration: *Object (3 properties)
+│ │ ├── CertificatePassword: *genruntime.SecretReference
+│ │ ├── CertificateValue: *genruntime.SecretReference
+│ │ └── DnsSuffix: *string
+│ ├── DaprAIConnectionString: *genruntime.SecretReference
+│ ├── DaprAIInstrumentationKey: *genruntime.SecretReference
+│ ├── InfrastructureResourceGroup: *string
+│ ├── Kind: *string
+│ ├── Location: *string
+│ ├── OperatorSpec: *Object (2 properties)
+│ │ ├── ConfigMapExpressions: *core.DestinationExpression[]
+│ │ └── SecretExpressions: *core.DestinationExpression[]
+│ ├── Owner: *genruntime.KnownResourceReference
+│ ├── PeerAuthentication: *Object (1 property)
+│ │ └── Mtls: *Object (1 property)
+│ │ └── Enabled: *bool
+│ ├── PeerTrafficConfiguration: *Object (1 property)
+│ │ └── Encryption: *Object (1 property)
+│ │ └── Enabled: *bool
+│ ├── Tags: map[string]string
+│ ├── VnetConfiguration: *Object (5 properties)
+│ │ ├── DockerBridgeCidr: *string
+│ │ ├── InfrastructureSubnetReference: *genruntime.ResourceReference
+│ │ ├── Internal: *bool
+│ │ ├── PlatformReservedCidr: *string
+│ │ └── PlatformReservedDnsIP: *string
+│ ├── WorkloadProfiles: Object (4 properties)[]
+│ │ ├── MaximumCount: *int
+│ │ ├── MinimumCount: *int
+│ │ ├── Name: *string
+│ │ └── WorkloadProfileType: *string
+│ └── ZoneRedundant: *bool
+└── Status: Object (23 properties)
+ ├── AppLogsConfiguration: *Object (2 properties)
+ │ ├── Destination: *string
+ │ └── LogAnalyticsConfiguration: *Object (1 property)
+ │ └── CustomerId: *string
+ ├── Conditions: conditions.Condition[]
+ ├── CustomDomainConfiguration: *Object (5 properties)
+ │ ├── CustomDomainVerificationId: *string
+ │ ├── DnsSuffix: *string
+ │ ├── ExpirationDate: *string
+ │ ├── SubjectName: *string
+ │ └── Thumbprint: *string
+ ├── DaprConfiguration: *Object (1 property)
+ │ └── Version: *string
+ ├── DefaultDomain: *string
+ ├── DeploymentErrors: *string
+ ├── EventStreamEndpoint: *string
+ ├── Id: *string
+ ├── InfrastructureResourceGroup: *string
+ ├── KedaConfiguration: *Object (1 property)
+ │ └── Version: *string
+ ├── Kind: *string
+ ├── Location: *string
+ ├── Name: *string
+ ├── PeerAuthentication: *Object (1 property)
+ │ └── Mtls: *Object (1 property)
+ │ └── Enabled: *bool
+ ├── PeerTrafficConfiguration: *Object (1 property)
+ │ └── Encryption: *Object (1 property)
+ │ └── Enabled: *bool
+ ├── ProvisioningState: *Enum (10 values)
+ │ ├── "Canceled"
+ │ ├── "Failed"
+ │ ├── "InfrastructureSetupComplete"
+ │ ├── "InfrastructureSetupInProgress"
+ │ ├── "InitializationInProgress"
+ │ ├── "ScheduledForDelete"
+ │ ├── "Succeeded"
+ │ ├── "UpgradeFailed"
+ │ ├── "UpgradeRequested"
+ │ └── "Waiting"
+ ├── StaticIp: *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
+ ├── VnetConfiguration: *Object (5 properties)
+ │ ├── DockerBridgeCidr: *string
+ │ ├── InfrastructureSubnetId: *string
+ │ ├── Internal: *bool
+ │ ├── PlatformReservedCidr: *string
+ │ └── PlatformReservedDnsIP: *string
+ ├── WorkloadProfiles: Object (4 properties)[]
+ │ ├── MaximumCount: *int
+ │ ├── MinimumCount: *int
+ │ ├── Name: *string
+ │ └── WorkloadProfileType: *string
+ └── ZoneRedundant: *bool
diff --git a/v2/api/app/v1api20240301/zz_generated.deepcopy.go b/v2/api/app/v1api20240301/zz_generated.deepcopy.go
new file mode 100644
index 00000000000..0983d693a6e
--- /dev/null
+++ b/v2/api/app/v1api20240301/zz_generated.deepcopy.go
@@ -0,0 +1,6955 @@
+//go:build !ignore_autogenerated
+
+/*
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT license.
+*/
+
+// Code generated by controller-gen. DO NOT EDIT.
+
+package v1api20240301
+
+import (
+ "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/core"
+ "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
+ "k8s.io/apimachinery/pkg/runtime"
+)
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AllowedAudiencesValidation) DeepCopyInto(out *AllowedAudiencesValidation) {
+ *out = *in
+ if in.AllowedAudiences != nil {
+ in, out := &in.AllowedAudiences, &out.AllowedAudiences
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowedAudiencesValidation.
+func (in *AllowedAudiencesValidation) DeepCopy() *AllowedAudiencesValidation {
+ if in == nil {
+ return nil
+ }
+ out := new(AllowedAudiencesValidation)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AllowedAudiencesValidation_STATUS) DeepCopyInto(out *AllowedAudiencesValidation_STATUS) {
+ *out = *in
+ if in.AllowedAudiences != nil {
+ in, out := &in.AllowedAudiences, &out.AllowedAudiences
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowedAudiencesValidation_STATUS.
+func (in *AllowedAudiencesValidation_STATUS) DeepCopy() *AllowedAudiencesValidation_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AllowedAudiencesValidation_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 *AllowedPrincipals) DeepCopyInto(out *AllowedPrincipals) {
+ *out = *in
+ if in.Groups != nil {
+ in, out := &in.Groups, &out.Groups
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Identities != nil {
+ in, out := &in.Identities, &out.Identities
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowedPrincipals.
+func (in *AllowedPrincipals) DeepCopy() *AllowedPrincipals {
+ if in == nil {
+ return nil
+ }
+ out := new(AllowedPrincipals)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AllowedPrincipals_STATUS) DeepCopyInto(out *AllowedPrincipals_STATUS) {
+ *out = *in
+ if in.Groups != nil {
+ in, out := &in.Groups, &out.Groups
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Identities != nil {
+ in, out := &in.Identities, &out.Identities
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowedPrincipals_STATUS.
+func (in *AllowedPrincipals_STATUS) DeepCopy() *AllowedPrincipals_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AllowedPrincipals_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 *AppLogsConfiguration) DeepCopyInto(out *AppLogsConfiguration) {
+ *out = *in
+ if in.Destination != nil {
+ in, out := &in.Destination, &out.Destination
+ *out = new(string)
+ **out = **in
+ }
+ if in.LogAnalyticsConfiguration != nil {
+ in, out := &in.LogAnalyticsConfiguration, &out.LogAnalyticsConfiguration
+ *out = new(LogAnalyticsConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppLogsConfiguration.
+func (in *AppLogsConfiguration) DeepCopy() *AppLogsConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(AppLogsConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AppLogsConfiguration_STATUS) DeepCopyInto(out *AppLogsConfiguration_STATUS) {
+ *out = *in
+ if in.Destination != nil {
+ in, out := &in.Destination, &out.Destination
+ *out = new(string)
+ **out = **in
+ }
+ if in.LogAnalyticsConfiguration != nil {
+ in, out := &in.LogAnalyticsConfiguration, &out.LogAnalyticsConfiguration
+ *out = new(LogAnalyticsConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppLogsConfiguration_STATUS.
+func (in *AppLogsConfiguration_STATUS) DeepCopy() *AppLogsConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AppLogsConfiguration_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 *AppRegistration) DeepCopyInto(out *AppRegistration) {
+ *out = *in
+ if in.AppId != nil {
+ in, out := &in.AppId, &out.AppId
+ *out = new(string)
+ **out = **in
+ }
+ if in.AppSecretSettingName != nil {
+ in, out := &in.AppSecretSettingName, &out.AppSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppRegistration.
+func (in *AppRegistration) DeepCopy() *AppRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(AppRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AppRegistration_STATUS) DeepCopyInto(out *AppRegistration_STATUS) {
+ *out = *in
+ if in.AppId != nil {
+ in, out := &in.AppId, &out.AppId
+ *out = new(string)
+ **out = **in
+ }
+ if in.AppSecretSettingName != nil {
+ in, out := &in.AppSecretSettingName, &out.AppSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppRegistration_STATUS.
+func (in *AppRegistration_STATUS) DeepCopy() *AppRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AppRegistration_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 *Apple) DeepCopyInto(out *Apple) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AppleRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Apple.
+func (in *Apple) DeepCopy() *Apple {
+ if in == nil {
+ return nil
+ }
+ out := new(Apple)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AppleRegistration) DeepCopyInto(out *AppleRegistration) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppleRegistration.
+func (in *AppleRegistration) DeepCopy() *AppleRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(AppleRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AppleRegistration_STATUS) DeepCopyInto(out *AppleRegistration_STATUS) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppleRegistration_STATUS.
+func (in *AppleRegistration_STATUS) DeepCopy() *AppleRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AppleRegistration_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 *Apple_STATUS) DeepCopyInto(out *Apple_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AppleRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Apple_STATUS.
+func (in *Apple_STATUS) DeepCopy() *Apple_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Apple_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 *AuthConfig) DeepCopyInto(out *AuthConfig) {
+ *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 AuthConfig.
+func (in *AuthConfig) DeepCopy() *AuthConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *AuthConfig) 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 *AuthConfigList) DeepCopyInto(out *AuthConfigList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]AuthConfig, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfigList.
+func (in *AuthConfigList) DeepCopy() *AuthConfigList {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfigList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *AuthConfigList) 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 *AuthConfigOperatorSpec) DeepCopyInto(out *AuthConfigOperatorSpec) {
+ *out = *in
+ if in.ConfigMapExpressions != nil {
+ in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+ if in.SecretExpressions != nil {
+ in, out := &in.SecretExpressions, &out.SecretExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfigOperatorSpec.
+func (in *AuthConfigOperatorSpec) DeepCopy() *AuthConfigOperatorSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfigOperatorSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AuthConfig_STATUS) DeepCopyInto(out *AuthConfig_STATUS) {
+ *out = *in
+ if in.Conditions != nil {
+ in, out := &in.Conditions, &out.Conditions
+ *out = make([]conditions.Condition, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.EncryptionSettings != nil {
+ in, out := &in.EncryptionSettings, &out.EncryptionSettings
+ *out = new(EncryptionSettings_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.GlobalValidation != nil {
+ in, out := &in.GlobalValidation, &out.GlobalValidation
+ *out = new(GlobalValidation_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.HttpSettings != nil {
+ in, out := &in.HttpSettings, &out.HttpSettings
+ *out = new(HttpSettings_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Id != nil {
+ in, out := &in.Id, &out.Id
+ *out = new(string)
+ **out = **in
+ }
+ if in.IdentityProviders != nil {
+ in, out := &in.IdentityProviders, &out.IdentityProviders
+ *out = new(IdentityProviders_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(Login_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Platform != nil {
+ in, out := &in.Platform, &out.Platform
+ *out = new(AuthPlatform_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.SystemData != nil {
+ in, out := &in.SystemData, &out.SystemData
+ *out = new(SystemData_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfig_STATUS.
+func (in *AuthConfig_STATUS) DeepCopy() *AuthConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfig_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 *AuthConfig_Spec) DeepCopyInto(out *AuthConfig_Spec) {
+ *out = *in
+ if in.EncryptionSettings != nil {
+ in, out := &in.EncryptionSettings, &out.EncryptionSettings
+ *out = new(EncryptionSettings)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.GlobalValidation != nil {
+ in, out := &in.GlobalValidation, &out.GlobalValidation
+ *out = new(GlobalValidation)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.HttpSettings != nil {
+ in, out := &in.HttpSettings, &out.HttpSettings
+ *out = new(HttpSettings)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.IdentityProviders != nil {
+ in, out := &in.IdentityProviders, &out.IdentityProviders
+ *out = new(IdentityProviders)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(Login)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.OperatorSpec != nil {
+ in, out := &in.OperatorSpec, &out.OperatorSpec
+ *out = new(AuthConfigOperatorSpec)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Owner != nil {
+ in, out := &in.Owner, &out.Owner
+ *out = new(genruntime.KnownResourceReference)
+ **out = **in
+ }
+ if in.Platform != nil {
+ in, out := &in.Platform, &out.Platform
+ *out = new(AuthPlatform)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfig_Spec.
+func (in *AuthConfig_Spec) DeepCopy() *AuthConfig_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthConfig_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 *AuthPlatform) DeepCopyInto(out *AuthPlatform) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.RuntimeVersion != nil {
+ in, out := &in.RuntimeVersion, &out.RuntimeVersion
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthPlatform.
+func (in *AuthPlatform) DeepCopy() *AuthPlatform {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthPlatform)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AuthPlatform_STATUS) DeepCopyInto(out *AuthPlatform_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.RuntimeVersion != nil {
+ in, out := &in.RuntimeVersion, &out.RuntimeVersion
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthPlatform_STATUS.
+func (in *AuthPlatform_STATUS) DeepCopy() *AuthPlatform_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AuthPlatform_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 *AzureActiveDirectory) DeepCopyInto(out *AzureActiveDirectory) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.IsAutoProvisioned != nil {
+ in, out := &in.IsAutoProvisioned, &out.IsAutoProvisioned
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(AzureActiveDirectoryLogin)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AzureActiveDirectoryRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Validation != nil {
+ in, out := &in.Validation, &out.Validation
+ *out = new(AzureActiveDirectoryValidation)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectory.
+func (in *AzureActiveDirectory) DeepCopy() *AzureActiveDirectory {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectory)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureActiveDirectoryLogin) DeepCopyInto(out *AzureActiveDirectoryLogin) {
+ *out = *in
+ if in.DisableWWWAuthenticate != nil {
+ in, out := &in.DisableWWWAuthenticate, &out.DisableWWWAuthenticate
+ *out = new(bool)
+ **out = **in
+ }
+ if in.LoginParameters != nil {
+ in, out := &in.LoginParameters, &out.LoginParameters
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryLogin.
+func (in *AzureActiveDirectoryLogin) DeepCopy() *AzureActiveDirectoryLogin {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryLogin)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureActiveDirectoryLogin_STATUS) DeepCopyInto(out *AzureActiveDirectoryLogin_STATUS) {
+ *out = *in
+ if in.DisableWWWAuthenticate != nil {
+ in, out := &in.DisableWWWAuthenticate, &out.DisableWWWAuthenticate
+ *out = new(bool)
+ **out = **in
+ }
+ if in.LoginParameters != nil {
+ in, out := &in.LoginParameters, &out.LoginParameters
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryLogin_STATUS.
+func (in *AzureActiveDirectoryLogin_STATUS) DeepCopy() *AzureActiveDirectoryLogin_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryLogin_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 *AzureActiveDirectoryRegistration) DeepCopyInto(out *AzureActiveDirectoryRegistration) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateIssuer != nil {
+ in, out := &in.ClientSecretCertificateIssuer, &out.ClientSecretCertificateIssuer
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateSubjectAlternativeName != nil {
+ in, out := &in.ClientSecretCertificateSubjectAlternativeName, &out.ClientSecretCertificateSubjectAlternativeName
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateThumbprint != nil {
+ in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+ if in.OpenIdIssuer != nil {
+ in, out := &in.OpenIdIssuer, &out.OpenIdIssuer
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryRegistration.
+func (in *AzureActiveDirectoryRegistration) DeepCopy() *AzureActiveDirectoryRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureActiveDirectoryRegistration_STATUS) DeepCopyInto(out *AzureActiveDirectoryRegistration_STATUS) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateIssuer != nil {
+ in, out := &in.ClientSecretCertificateIssuer, &out.ClientSecretCertificateIssuer
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateSubjectAlternativeName != nil {
+ in, out := &in.ClientSecretCertificateSubjectAlternativeName, &out.ClientSecretCertificateSubjectAlternativeName
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretCertificateThumbprint != nil {
+ in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+ if in.OpenIdIssuer != nil {
+ in, out := &in.OpenIdIssuer, &out.OpenIdIssuer
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryRegistration_STATUS.
+func (in *AzureActiveDirectoryRegistration_STATUS) DeepCopy() *AzureActiveDirectoryRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryRegistration_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 *AzureActiveDirectoryValidation) DeepCopyInto(out *AzureActiveDirectoryValidation) {
+ *out = *in
+ if in.AllowedAudiences != nil {
+ in, out := &in.AllowedAudiences, &out.AllowedAudiences
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.DefaultAuthorizationPolicy != nil {
+ in, out := &in.DefaultAuthorizationPolicy, &out.DefaultAuthorizationPolicy
+ *out = new(DefaultAuthorizationPolicy)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.JwtClaimChecks != nil {
+ in, out := &in.JwtClaimChecks, &out.JwtClaimChecks
+ *out = new(JwtClaimChecks)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryValidation.
+func (in *AzureActiveDirectoryValidation) DeepCopy() *AzureActiveDirectoryValidation {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryValidation)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureActiveDirectoryValidation_STATUS) DeepCopyInto(out *AzureActiveDirectoryValidation_STATUS) {
+ *out = *in
+ if in.AllowedAudiences != nil {
+ in, out := &in.AllowedAudiences, &out.AllowedAudiences
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.DefaultAuthorizationPolicy != nil {
+ in, out := &in.DefaultAuthorizationPolicy, &out.DefaultAuthorizationPolicy
+ *out = new(DefaultAuthorizationPolicy_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.JwtClaimChecks != nil {
+ in, out := &in.JwtClaimChecks, &out.JwtClaimChecks
+ *out = new(JwtClaimChecks_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryValidation_STATUS.
+func (in *AzureActiveDirectoryValidation_STATUS) DeepCopy() *AzureActiveDirectoryValidation_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectoryValidation_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 *AzureActiveDirectory_STATUS) DeepCopyInto(out *AzureActiveDirectory_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.IsAutoProvisioned != nil {
+ in, out := &in.IsAutoProvisioned, &out.IsAutoProvisioned
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(AzureActiveDirectoryLogin_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AzureActiveDirectoryRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Validation != nil {
+ in, out := &in.Validation, &out.Validation
+ *out = new(AzureActiveDirectoryValidation_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectory_STATUS.
+func (in *AzureActiveDirectory_STATUS) DeepCopy() *AzureActiveDirectory_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureActiveDirectory_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 *AzureStaticWebApps) DeepCopyInto(out *AzureStaticWebApps) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AzureStaticWebAppsRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureStaticWebApps.
+func (in *AzureStaticWebApps) DeepCopy() *AzureStaticWebApps {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureStaticWebApps)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureStaticWebAppsRegistration) DeepCopyInto(out *AzureStaticWebAppsRegistration) {
+ *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 AzureStaticWebAppsRegistration.
+func (in *AzureStaticWebAppsRegistration) DeepCopy() *AzureStaticWebAppsRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureStaticWebAppsRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *AzureStaticWebAppsRegistration_STATUS) DeepCopyInto(out *AzureStaticWebAppsRegistration_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 AzureStaticWebAppsRegistration_STATUS.
+func (in *AzureStaticWebAppsRegistration_STATUS) DeepCopy() *AzureStaticWebAppsRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureStaticWebAppsRegistration_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 *AzureStaticWebApps_STATUS) DeepCopyInto(out *AzureStaticWebApps_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AzureStaticWebAppsRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureStaticWebApps_STATUS.
+func (in *AzureStaticWebApps_STATUS) DeepCopy() *AzureStaticWebApps_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(AzureStaticWebApps_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 *BaseContainer) DeepCopyInto(out *BaseContainer) {
+ *out = *in
+ if in.Args != nil {
+ in, out := &in.Args, &out.Args
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Command != nil {
+ in, out := &in.Command, &out.Command
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Env != nil {
+ in, out := &in.Env, &out.Env
+ *out = make([]EnvironmentVar, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Image != nil {
+ in, out := &in.Image, &out.Image
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Resources != nil {
+ in, out := &in.Resources, &out.Resources
+ *out = new(ContainerResources)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.VolumeMounts != nil {
+ in, out := &in.VolumeMounts, &out.VolumeMounts
+ *out = make([]VolumeMount, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaseContainer.
+func (in *BaseContainer) DeepCopy() *BaseContainer {
+ if in == nil {
+ return nil
+ }
+ out := new(BaseContainer)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *BaseContainer_STATUS) DeepCopyInto(out *BaseContainer_STATUS) {
+ *out = *in
+ if in.Args != nil {
+ in, out := &in.Args, &out.Args
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Command != nil {
+ in, out := &in.Command, &out.Command
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Env != nil {
+ in, out := &in.Env, &out.Env
+ *out = make([]EnvironmentVar_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Image != nil {
+ in, out := &in.Image, &out.Image
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Resources != nil {
+ in, out := &in.Resources, &out.Resources
+ *out = new(ContainerResources_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.VolumeMounts != nil {
+ in, out := &in.VolumeMounts, &out.VolumeMounts
+ *out = make([]VolumeMount_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaseContainer_STATUS.
+func (in *BaseContainer_STATUS) DeepCopy() *BaseContainer_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(BaseContainer_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 *BlobStorageTokenStore) DeepCopyInto(out *BlobStorageTokenStore) {
+ *out = *in
+ if in.SasUrlSettingName != nil {
+ in, out := &in.SasUrlSettingName, &out.SasUrlSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobStorageTokenStore.
+func (in *BlobStorageTokenStore) DeepCopy() *BlobStorageTokenStore {
+ if in == nil {
+ return nil
+ }
+ out := new(BlobStorageTokenStore)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *BlobStorageTokenStore_STATUS) DeepCopyInto(out *BlobStorageTokenStore_STATUS) {
+ *out = *in
+ if in.SasUrlSettingName != nil {
+ in, out := &in.SasUrlSettingName, &out.SasUrlSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobStorageTokenStore_STATUS.
+func (in *BlobStorageTokenStore_STATUS) DeepCopy() *BlobStorageTokenStore_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(BlobStorageTokenStore_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 *ClientRegistration) DeepCopyInto(out *ClientRegistration) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientRegistration.
+func (in *ClientRegistration) DeepCopy() *ClientRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(ClientRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ClientRegistration_STATUS) DeepCopyInto(out *ClientRegistration_STATUS) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientRegistration_STATUS.
+func (in *ClientRegistration_STATUS) DeepCopy() *ClientRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ClientRegistration_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 *Configuration) DeepCopyInto(out *Configuration) {
+ *out = *in
+ if in.ActiveRevisionsMode != nil {
+ in, out := &in.ActiveRevisionsMode, &out.ActiveRevisionsMode
+ *out = new(Configuration_ActiveRevisionsMode)
+ **out = **in
+ }
+ if in.Dapr != nil {
+ in, out := &in.Dapr, &out.Dapr
+ *out = new(Dapr)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Ingress != nil {
+ in, out := &in.Ingress, &out.Ingress
+ *out = new(Ingress)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.MaxInactiveRevisions != nil {
+ in, out := &in.MaxInactiveRevisions, &out.MaxInactiveRevisions
+ *out = new(int)
+ **out = **in
+ }
+ if in.Registries != nil {
+ in, out := &in.Registries, &out.Registries
+ *out = make([]RegistryCredentials, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]Secret, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Service != nil {
+ in, out := &in.Service, &out.Service
+ *out = new(Service)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Configuration.
+func (in *Configuration) DeepCopy() *Configuration {
+ if in == nil {
+ return nil
+ }
+ out := new(Configuration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Configuration_STATUS) DeepCopyInto(out *Configuration_STATUS) {
+ *out = *in
+ if in.ActiveRevisionsMode != nil {
+ in, out := &in.ActiveRevisionsMode, &out.ActiveRevisionsMode
+ *out = new(Configuration_ActiveRevisionsMode_STATUS)
+ **out = **in
+ }
+ if in.Dapr != nil {
+ in, out := &in.Dapr, &out.Dapr
+ *out = new(Dapr_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Ingress != nil {
+ in, out := &in.Ingress, &out.Ingress
+ *out = new(Ingress_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.MaxInactiveRevisions != nil {
+ in, out := &in.MaxInactiveRevisions, &out.MaxInactiveRevisions
+ *out = new(int)
+ **out = **in
+ }
+ if in.Registries != nil {
+ in, out := &in.Registries, &out.Registries
+ *out = make([]RegistryCredentials_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]Secret_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Service != nil {
+ in, out := &in.Service, &out.Service
+ *out = new(Service_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Configuration_STATUS.
+func (in *Configuration_STATUS) DeepCopy() *Configuration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Configuration_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 *Container) DeepCopyInto(out *Container) {
+ *out = *in
+ if in.Args != nil {
+ in, out := &in.Args, &out.Args
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Command != nil {
+ in, out := &in.Command, &out.Command
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Env != nil {
+ in, out := &in.Env, &out.Env
+ *out = make([]EnvironmentVar, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Image != nil {
+ in, out := &in.Image, &out.Image
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Probes != nil {
+ in, out := &in.Probes, &out.Probes
+ *out = make([]ContainerAppProbe, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Resources != nil {
+ in, out := &in.Resources, &out.Resources
+ *out = new(ContainerResources)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.VolumeMounts != nil {
+ in, out := &in.VolumeMounts, &out.VolumeMounts
+ *out = make([]VolumeMount, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Container.
+func (in *Container) DeepCopy() *Container {
+ if in == nil {
+ return nil
+ }
+ out := new(Container)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerApp) DeepCopyInto(out *ContainerApp) {
+ *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 ContainerApp.
+func (in *ContainerApp) DeepCopy() *ContainerApp {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerApp)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ContainerApp) 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 *ContainerAppList) DeepCopyInto(out *ContainerAppList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]ContainerApp, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppList.
+func (in *ContainerAppList) DeepCopy() *ContainerAppList {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ContainerAppList) 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 *ContainerAppOperatorConfigMaps) DeepCopyInto(out *ContainerAppOperatorConfigMaps) {
+ *out = *in
+ if in.EventStreamEndpoint != nil {
+ in, out := &in.EventStreamEndpoint, &out.EventStreamEndpoint
+ *out = new(genruntime.ConfigMapDestination)
+ **out = **in
+ }
+ if in.Fqdn != nil {
+ in, out := &in.Fqdn, &out.Fqdn
+ *out = new(genruntime.ConfigMapDestination)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppOperatorConfigMaps.
+func (in *ContainerAppOperatorConfigMaps) DeepCopy() *ContainerAppOperatorConfigMaps {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppOperatorConfigMaps)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppOperatorSpec) DeepCopyInto(out *ContainerAppOperatorSpec) {
+ *out = *in
+ if in.ConfigMapExpressions != nil {
+ in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+ if in.ConfigMaps != nil {
+ in, out := &in.ConfigMaps, &out.ConfigMaps
+ *out = new(ContainerAppOperatorConfigMaps)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.SecretExpressions != nil {
+ in, out := &in.SecretExpressions, &out.SecretExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppOperatorSpec.
+func (in *ContainerAppOperatorSpec) DeepCopy() *ContainerAppOperatorSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppOperatorSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe) DeepCopyInto(out *ContainerAppProbe) {
+ *out = *in
+ if in.FailureThreshold != nil {
+ in, out := &in.FailureThreshold, &out.FailureThreshold
+ *out = new(int)
+ **out = **in
+ }
+ if in.HttpGet != nil {
+ in, out := &in.HttpGet, &out.HttpGet
+ *out = new(ContainerAppProbe_HttpGet)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.InitialDelaySeconds != nil {
+ in, out := &in.InitialDelaySeconds, &out.InitialDelaySeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.PeriodSeconds != nil {
+ in, out := &in.PeriodSeconds, &out.PeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.SuccessThreshold != nil {
+ in, out := &in.SuccessThreshold, &out.SuccessThreshold
+ *out = new(int)
+ **out = **in
+ }
+ if in.TcpSocket != nil {
+ in, out := &in.TcpSocket, &out.TcpSocket
+ *out = new(ContainerAppProbe_TcpSocket)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TerminationGracePeriodSeconds != nil {
+ in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.TimeoutSeconds != nil {
+ in, out := &in.TimeoutSeconds, &out.TimeoutSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(ContainerAppProbe_Type)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe.
+func (in *ContainerAppProbe) DeepCopy() *ContainerAppProbe {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe_HttpGet) DeepCopyInto(out *ContainerAppProbe_HttpGet) {
+ *out = *in
+ if in.Host != nil {
+ in, out := &in.Host, &out.Host
+ *out = new(string)
+ **out = **in
+ }
+ if in.HttpHeaders != nil {
+ in, out := &in.HttpHeaders, &out.HttpHeaders
+ *out = make([]ContainerAppProbe_HttpGet_HttpHeaders, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Path != nil {
+ in, out := &in.Path, &out.Path
+ *out = new(string)
+ **out = **in
+ }
+ if in.Port != nil {
+ in, out := &in.Port, &out.Port
+ *out = new(int)
+ **out = **in
+ }
+ if in.Scheme != nil {
+ in, out := &in.Scheme, &out.Scheme
+ *out = new(ContainerAppProbe_HttpGet_Scheme)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_HttpGet.
+func (in *ContainerAppProbe_HttpGet) DeepCopy() *ContainerAppProbe_HttpGet {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_HttpGet)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe_HttpGet_HttpHeaders) DeepCopyInto(out *ContainerAppProbe_HttpGet_HttpHeaders) {
+ *out = *in
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_HttpGet_HttpHeaders.
+func (in *ContainerAppProbe_HttpGet_HttpHeaders) DeepCopy() *ContainerAppProbe_HttpGet_HttpHeaders {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_HttpGet_HttpHeaders)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) DeepCopyInto(out *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) {
+ *out = *in
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_HttpGet_HttpHeaders_STATUS.
+func (in *ContainerAppProbe_HttpGet_HttpHeaders_STATUS) DeepCopy() *ContainerAppProbe_HttpGet_HttpHeaders_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_HttpGet_HttpHeaders_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 *ContainerAppProbe_HttpGet_STATUS) DeepCopyInto(out *ContainerAppProbe_HttpGet_STATUS) {
+ *out = *in
+ if in.Host != nil {
+ in, out := &in.Host, &out.Host
+ *out = new(string)
+ **out = **in
+ }
+ if in.HttpHeaders != nil {
+ in, out := &in.HttpHeaders, &out.HttpHeaders
+ *out = make([]ContainerAppProbe_HttpGet_HttpHeaders_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Path != nil {
+ in, out := &in.Path, &out.Path
+ *out = new(string)
+ **out = **in
+ }
+ if in.Port != nil {
+ in, out := &in.Port, &out.Port
+ *out = new(int)
+ **out = **in
+ }
+ if in.Scheme != nil {
+ in, out := &in.Scheme, &out.Scheme
+ *out = new(ContainerAppProbe_HttpGet_Scheme_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_HttpGet_STATUS.
+func (in *ContainerAppProbe_HttpGet_STATUS) DeepCopy() *ContainerAppProbe_HttpGet_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_HttpGet_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 *ContainerAppProbe_STATUS) DeepCopyInto(out *ContainerAppProbe_STATUS) {
+ *out = *in
+ if in.FailureThreshold != nil {
+ in, out := &in.FailureThreshold, &out.FailureThreshold
+ *out = new(int)
+ **out = **in
+ }
+ if in.HttpGet != nil {
+ in, out := &in.HttpGet, &out.HttpGet
+ *out = new(ContainerAppProbe_HttpGet_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.InitialDelaySeconds != nil {
+ in, out := &in.InitialDelaySeconds, &out.InitialDelaySeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.PeriodSeconds != nil {
+ in, out := &in.PeriodSeconds, &out.PeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.SuccessThreshold != nil {
+ in, out := &in.SuccessThreshold, &out.SuccessThreshold
+ *out = new(int)
+ **out = **in
+ }
+ if in.TcpSocket != nil {
+ in, out := &in.TcpSocket, &out.TcpSocket
+ *out = new(ContainerAppProbe_TcpSocket_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TerminationGracePeriodSeconds != nil {
+ in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.TimeoutSeconds != nil {
+ in, out := &in.TimeoutSeconds, &out.TimeoutSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(ContainerAppProbe_Type_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_STATUS.
+func (in *ContainerAppProbe_STATUS) DeepCopy() *ContainerAppProbe_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_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 *ContainerAppProbe_TcpSocket) DeepCopyInto(out *ContainerAppProbe_TcpSocket) {
+ *out = *in
+ if in.Host != nil {
+ in, out := &in.Host, &out.Host
+ *out = new(string)
+ **out = **in
+ }
+ if in.Port != nil {
+ in, out := &in.Port, &out.Port
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_TcpSocket.
+func (in *ContainerAppProbe_TcpSocket) DeepCopy() *ContainerAppProbe_TcpSocket {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_TcpSocket)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerAppProbe_TcpSocket_STATUS) DeepCopyInto(out *ContainerAppProbe_TcpSocket_STATUS) {
+ *out = *in
+ if in.Host != nil {
+ in, out := &in.Host, &out.Host
+ *out = new(string)
+ **out = **in
+ }
+ if in.Port != nil {
+ in, out := &in.Port, &out.Port
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerAppProbe_TcpSocket_STATUS.
+func (in *ContainerAppProbe_TcpSocket_STATUS) DeepCopy() *ContainerAppProbe_TcpSocket_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerAppProbe_TcpSocket_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 *ContainerApp_STATUS) DeepCopyInto(out *ContainerApp_STATUS) {
+ *out = *in
+ if in.Conditions != nil {
+ in, out := &in.Conditions, &out.Conditions
+ *out = make([]conditions.Condition, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Configuration != nil {
+ in, out := &in.Configuration, &out.Configuration
+ *out = new(Configuration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomDomainVerificationId != nil {
+ in, out := &in.CustomDomainVerificationId, &out.CustomDomainVerificationId
+ *out = new(string)
+ **out = **in
+ }
+ if in.EnvironmentId != nil {
+ in, out := &in.EnvironmentId, &out.EnvironmentId
+ *out = new(string)
+ **out = **in
+ }
+ if in.EventStreamEndpoint != nil {
+ in, out := &in.EventStreamEndpoint, &out.EventStreamEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.ExtendedLocation != nil {
+ in, out := &in.ExtendedLocation, &out.ExtendedLocation
+ *out = new(ExtendedLocation_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Id != nil {
+ in, out := &in.Id, &out.Id
+ *out = new(string)
+ **out = **in
+ }
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(ManagedServiceIdentity_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.LatestReadyRevisionName != nil {
+ in, out := &in.LatestReadyRevisionName, &out.LatestReadyRevisionName
+ *out = new(string)
+ **out = **in
+ }
+ if in.LatestRevisionFqdn != nil {
+ in, out := &in.LatestRevisionFqdn, &out.LatestRevisionFqdn
+ *out = new(string)
+ **out = **in
+ }
+ if in.LatestRevisionName != nil {
+ in, out := &in.LatestRevisionName, &out.LatestRevisionName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.ManagedBy != nil {
+ in, out := &in.ManagedBy, &out.ManagedBy
+ *out = new(string)
+ **out = **in
+ }
+ if in.ManagedEnvironmentId != nil {
+ in, out := &in.ManagedEnvironmentId, &out.ManagedEnvironmentId
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.OutboundIpAddresses != nil {
+ in, out := &in.OutboundIpAddresses, &out.OutboundIpAddresses
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.ProvisioningState != nil {
+ in, out := &in.ProvisioningState, &out.ProvisioningState
+ *out = new(ContainerApp_Properties_ProvisioningState_STATUS)
+ **out = **in
+ }
+ 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.Template != nil {
+ in, out := &in.Template, &out.Template
+ *out = new(Template_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+ if in.WorkloadProfileName != nil {
+ in, out := &in.WorkloadProfileName, &out.WorkloadProfileName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerApp_STATUS.
+func (in *ContainerApp_STATUS) DeepCopy() *ContainerApp_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerApp_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 *ContainerApp_Spec) DeepCopyInto(out *ContainerApp_Spec) {
+ *out = *in
+ if in.Configuration != nil {
+ in, out := &in.Configuration, &out.Configuration
+ *out = new(Configuration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.EnvironmentReference != nil {
+ in, out := &in.EnvironmentReference, &out.EnvironmentReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.ExtendedLocation != nil {
+ in, out := &in.ExtendedLocation, &out.ExtendedLocation
+ *out = new(ExtendedLocation)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(ManagedServiceIdentity)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.ManagedByReference != nil {
+ in, out := &in.ManagedByReference, &out.ManagedByReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.ManagedEnvironmentReference != nil {
+ in, out := &in.ManagedEnvironmentReference, &out.ManagedEnvironmentReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.OperatorSpec != nil {
+ in, out := &in.OperatorSpec, &out.OperatorSpec
+ *out = new(ContainerAppOperatorSpec)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Owner != nil {
+ in, out := &in.Owner, &out.Owner
+ *out = new(genruntime.KnownResourceReference)
+ **out = **in
+ }
+ if in.Tags != nil {
+ in, out := &in.Tags, &out.Tags
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Template != nil {
+ in, out := &in.Template, &out.Template
+ *out = new(Template)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.WorkloadProfileName != nil {
+ in, out := &in.WorkloadProfileName, &out.WorkloadProfileName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerApp_Spec.
+func (in *ContainerApp_Spec) DeepCopy() *ContainerApp_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerApp_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 *ContainerResources) DeepCopyInto(out *ContainerResources) {
+ *out = *in
+ if in.Cpu != nil {
+ in, out := &in.Cpu, &out.Cpu
+ *out = new(float64)
+ **out = **in
+ }
+ if in.Memory != nil {
+ in, out := &in.Memory, &out.Memory
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerResources.
+func (in *ContainerResources) DeepCopy() *ContainerResources {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerResources)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ContainerResources_STATUS) DeepCopyInto(out *ContainerResources_STATUS) {
+ *out = *in
+ if in.Cpu != nil {
+ in, out := &in.Cpu, &out.Cpu
+ *out = new(float64)
+ **out = **in
+ }
+ if in.EphemeralStorage != nil {
+ in, out := &in.EphemeralStorage, &out.EphemeralStorage
+ *out = new(string)
+ **out = **in
+ }
+ if in.Memory != nil {
+ in, out := &in.Memory, &out.Memory
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerResources_STATUS.
+func (in *ContainerResources_STATUS) DeepCopy() *ContainerResources_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ContainerResources_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 *Container_STATUS) DeepCopyInto(out *Container_STATUS) {
+ *out = *in
+ if in.Args != nil {
+ in, out := &in.Args, &out.Args
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Command != nil {
+ in, out := &in.Command, &out.Command
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.Env != nil {
+ in, out := &in.Env, &out.Env
+ *out = make([]EnvironmentVar_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Image != nil {
+ in, out := &in.Image, &out.Image
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Probes != nil {
+ in, out := &in.Probes, &out.Probes
+ *out = make([]ContainerAppProbe_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Resources != nil {
+ in, out := &in.Resources, &out.Resources
+ *out = new(ContainerResources_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.VolumeMounts != nil {
+ in, out := &in.VolumeMounts, &out.VolumeMounts
+ *out = make([]VolumeMount_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Container_STATUS.
+func (in *Container_STATUS) DeepCopy() *Container_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Container_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 *CookieExpiration) DeepCopyInto(out *CookieExpiration) {
+ *out = *in
+ if in.Convention != nil {
+ in, out := &in.Convention, &out.Convention
+ *out = new(CookieExpiration_Convention)
+ **out = **in
+ }
+ if in.TimeToExpiration != nil {
+ in, out := &in.TimeToExpiration, &out.TimeToExpiration
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookieExpiration.
+func (in *CookieExpiration) DeepCopy() *CookieExpiration {
+ if in == nil {
+ return nil
+ }
+ out := new(CookieExpiration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CookieExpiration_STATUS) DeepCopyInto(out *CookieExpiration_STATUS) {
+ *out = *in
+ if in.Convention != nil {
+ in, out := &in.Convention, &out.Convention
+ *out = new(CookieExpiration_Convention_STATUS)
+ **out = **in
+ }
+ if in.TimeToExpiration != nil {
+ in, out := &in.TimeToExpiration, &out.TimeToExpiration
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookieExpiration_STATUS.
+func (in *CookieExpiration_STATUS) DeepCopy() *CookieExpiration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CookieExpiration_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 *CorsPolicy) DeepCopyInto(out *CorsPolicy) {
+ *out = *in
+ if in.AllowCredentials != nil {
+ in, out := &in.AllowCredentials, &out.AllowCredentials
+ *out = new(bool)
+ **out = **in
+ }
+ if in.AllowedHeaders != nil {
+ in, out := &in.AllowedHeaders, &out.AllowedHeaders
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedMethods != nil {
+ in, out := &in.AllowedMethods, &out.AllowedMethods
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedOrigins != nil {
+ in, out := &in.AllowedOrigins, &out.AllowedOrigins
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.ExposeHeaders != nil {
+ in, out := &in.ExposeHeaders, &out.ExposeHeaders
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.MaxAge != nil {
+ in, out := &in.MaxAge, &out.MaxAge
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsPolicy.
+func (in *CorsPolicy) DeepCopy() *CorsPolicy {
+ if in == nil {
+ return nil
+ }
+ out := new(CorsPolicy)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CorsPolicy_STATUS) DeepCopyInto(out *CorsPolicy_STATUS) {
+ *out = *in
+ if in.AllowCredentials != nil {
+ in, out := &in.AllowCredentials, &out.AllowCredentials
+ *out = new(bool)
+ **out = **in
+ }
+ if in.AllowedHeaders != nil {
+ in, out := &in.AllowedHeaders, &out.AllowedHeaders
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedMethods != nil {
+ in, out := &in.AllowedMethods, &out.AllowedMethods
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedOrigins != nil {
+ in, out := &in.AllowedOrigins, &out.AllowedOrigins
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.ExposeHeaders != nil {
+ in, out := &in.ExposeHeaders, &out.ExposeHeaders
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.MaxAge != nil {
+ in, out := &in.MaxAge, &out.MaxAge
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsPolicy_STATUS.
+func (in *CorsPolicy_STATUS) DeepCopy() *CorsPolicy_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CorsPolicy_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 *CustomDomain) DeepCopyInto(out *CustomDomain) {
+ *out = *in
+ if in.BindingType != nil {
+ in, out := &in.BindingType, &out.BindingType
+ *out = new(CustomDomain_BindingType)
+ **out = **in
+ }
+ if in.CertificateReference != nil {
+ in, out := &in.CertificateReference, &out.CertificateReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDomain.
+func (in *CustomDomain) DeepCopy() *CustomDomain {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomDomain)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CustomDomainConfiguration) DeepCopyInto(out *CustomDomainConfiguration) {
+ *out = *in
+ if in.CertificatePassword != nil {
+ in, out := &in.CertificatePassword, &out.CertificatePassword
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+ if in.CertificateValue != nil {
+ in, out := &in.CertificateValue, &out.CertificateValue
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+ if in.DnsSuffix != nil {
+ in, out := &in.DnsSuffix, &out.DnsSuffix
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDomainConfiguration.
+func (in *CustomDomainConfiguration) DeepCopy() *CustomDomainConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomDomainConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CustomDomainConfiguration_STATUS) DeepCopyInto(out *CustomDomainConfiguration_STATUS) {
+ *out = *in
+ if in.CustomDomainVerificationId != nil {
+ in, out := &in.CustomDomainVerificationId, &out.CustomDomainVerificationId
+ *out = new(string)
+ **out = **in
+ }
+ if in.DnsSuffix != nil {
+ in, out := &in.DnsSuffix, &out.DnsSuffix
+ *out = new(string)
+ **out = **in
+ }
+ if in.ExpirationDate != nil {
+ in, out := &in.ExpirationDate, &out.ExpirationDate
+ *out = new(string)
+ **out = **in
+ }
+ if in.SubjectName != nil {
+ in, out := &in.SubjectName, &out.SubjectName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Thumbprint != nil {
+ in, out := &in.Thumbprint, &out.Thumbprint
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDomainConfiguration_STATUS.
+func (in *CustomDomainConfiguration_STATUS) DeepCopy() *CustomDomainConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomDomainConfiguration_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 *CustomDomain_STATUS) DeepCopyInto(out *CustomDomain_STATUS) {
+ *out = *in
+ if in.BindingType != nil {
+ in, out := &in.BindingType, &out.BindingType
+ *out = new(CustomDomain_BindingType_STATUS)
+ **out = **in
+ }
+ if in.CertificateId != nil {
+ in, out := &in.CertificateId, &out.CertificateId
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDomain_STATUS.
+func (in *CustomDomain_STATUS) DeepCopy() *CustomDomain_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomDomain_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 *CustomOpenIdConnectProvider) DeepCopyInto(out *CustomOpenIdConnectProvider) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(OpenIdConnectLogin)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(OpenIdConnectRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomOpenIdConnectProvider.
+func (in *CustomOpenIdConnectProvider) DeepCopy() *CustomOpenIdConnectProvider {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomOpenIdConnectProvider)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CustomOpenIdConnectProvider_STATUS) DeepCopyInto(out *CustomOpenIdConnectProvider_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(OpenIdConnectLogin_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(OpenIdConnectRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomOpenIdConnectProvider_STATUS.
+func (in *CustomOpenIdConnectProvider_STATUS) DeepCopy() *CustomOpenIdConnectProvider_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomOpenIdConnectProvider_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 *CustomScaleRule) DeepCopyInto(out *CustomScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *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 CustomScaleRule.
+func (in *CustomScaleRule) DeepCopy() *CustomScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *CustomScaleRule_STATUS) DeepCopyInto(out *CustomScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *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 CustomScaleRule_STATUS.
+func (in *CustomScaleRule_STATUS) DeepCopy() *CustomScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(CustomScaleRule_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 *Dapr) DeepCopyInto(out *Dapr) {
+ *out = *in
+ if in.AppId != nil {
+ in, out := &in.AppId, &out.AppId
+ *out = new(string)
+ **out = **in
+ }
+ if in.AppPort != nil {
+ in, out := &in.AppPort, &out.AppPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.AppProtocol != nil {
+ in, out := &in.AppProtocol, &out.AppProtocol
+ *out = new(Dapr_AppProtocol)
+ **out = **in
+ }
+ if in.EnableApiLogging != nil {
+ in, out := &in.EnableApiLogging, &out.EnableApiLogging
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.HttpMaxRequestSize != nil {
+ in, out := &in.HttpMaxRequestSize, &out.HttpMaxRequestSize
+ *out = new(int)
+ **out = **in
+ }
+ if in.HttpReadBufferSize != nil {
+ in, out := &in.HttpReadBufferSize, &out.HttpReadBufferSize
+ *out = new(int)
+ **out = **in
+ }
+ if in.LogLevel != nil {
+ in, out := &in.LogLevel, &out.LogLevel
+ *out = new(Dapr_LogLevel)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dapr.
+func (in *Dapr) DeepCopy() *Dapr {
+ if in == nil {
+ return nil
+ }
+ out := new(Dapr)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *DaprConfiguration_STATUS) DeepCopyInto(out *DaprConfiguration_STATUS) {
+ *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 DaprConfiguration_STATUS.
+func (in *DaprConfiguration_STATUS) DeepCopy() *DaprConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(DaprConfiguration_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 *Dapr_STATUS) DeepCopyInto(out *Dapr_STATUS) {
+ *out = *in
+ if in.AppId != nil {
+ in, out := &in.AppId, &out.AppId
+ *out = new(string)
+ **out = **in
+ }
+ if in.AppPort != nil {
+ in, out := &in.AppPort, &out.AppPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.AppProtocol != nil {
+ in, out := &in.AppProtocol, &out.AppProtocol
+ *out = new(Dapr_AppProtocol_STATUS)
+ **out = **in
+ }
+ if in.EnableApiLogging != nil {
+ in, out := &in.EnableApiLogging, &out.EnableApiLogging
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.HttpMaxRequestSize != nil {
+ in, out := &in.HttpMaxRequestSize, &out.HttpMaxRequestSize
+ *out = new(int)
+ **out = **in
+ }
+ if in.HttpReadBufferSize != nil {
+ in, out := &in.HttpReadBufferSize, &out.HttpReadBufferSize
+ *out = new(int)
+ **out = **in
+ }
+ if in.LogLevel != nil {
+ in, out := &in.LogLevel, &out.LogLevel
+ *out = new(Dapr_LogLevel_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dapr_STATUS.
+func (in *Dapr_STATUS) DeepCopy() *Dapr_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Dapr_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 *DefaultAuthorizationPolicy) DeepCopyInto(out *DefaultAuthorizationPolicy) {
+ *out = *in
+ if in.AllowedApplications != nil {
+ in, out := &in.AllowedApplications, &out.AllowedApplications
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedPrincipals != nil {
+ in, out := &in.AllowedPrincipals, &out.AllowedPrincipals
+ *out = new(AllowedPrincipals)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultAuthorizationPolicy.
+func (in *DefaultAuthorizationPolicy) DeepCopy() *DefaultAuthorizationPolicy {
+ if in == nil {
+ return nil
+ }
+ out := new(DefaultAuthorizationPolicy)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *DefaultAuthorizationPolicy_STATUS) DeepCopyInto(out *DefaultAuthorizationPolicy_STATUS) {
+ *out = *in
+ if in.AllowedApplications != nil {
+ in, out := &in.AllowedApplications, &out.AllowedApplications
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedPrincipals != nil {
+ in, out := &in.AllowedPrincipals, &out.AllowedPrincipals
+ *out = new(AllowedPrincipals_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultAuthorizationPolicy_STATUS.
+func (in *DefaultAuthorizationPolicy_STATUS) DeepCopy() *DefaultAuthorizationPolicy_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(DefaultAuthorizationPolicy_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 *EncryptionSettings) DeepCopyInto(out *EncryptionSettings) {
+ *out = *in
+ if in.ContainerAppAuthEncryptionSecretName != nil {
+ in, out := &in.ContainerAppAuthEncryptionSecretName, &out.ContainerAppAuthEncryptionSecretName
+ *out = new(string)
+ **out = **in
+ }
+ if in.ContainerAppAuthSigningSecretName != nil {
+ in, out := &in.ContainerAppAuthSigningSecretName, &out.ContainerAppAuthSigningSecretName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettings.
+func (in *EncryptionSettings) DeepCopy() *EncryptionSettings {
+ if in == nil {
+ return nil
+ }
+ out := new(EncryptionSettings)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *EncryptionSettings_STATUS) DeepCopyInto(out *EncryptionSettings_STATUS) {
+ *out = *in
+ if in.ContainerAppAuthEncryptionSecretName != nil {
+ in, out := &in.ContainerAppAuthEncryptionSecretName, &out.ContainerAppAuthEncryptionSecretName
+ *out = new(string)
+ **out = **in
+ }
+ if in.ContainerAppAuthSigningSecretName != nil {
+ in, out := &in.ContainerAppAuthSigningSecretName, &out.ContainerAppAuthSigningSecretName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettings_STATUS.
+func (in *EncryptionSettings_STATUS) DeepCopy() *EncryptionSettings_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(EncryptionSettings_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 *EnvironmentVar) DeepCopyInto(out *EnvironmentVar) {
+ *out = *in
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentVar.
+func (in *EnvironmentVar) DeepCopy() *EnvironmentVar {
+ if in == nil {
+ return nil
+ }
+ out := new(EnvironmentVar)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *EnvironmentVar_STATUS) DeepCopyInto(out *EnvironmentVar_STATUS) {
+ *out = *in
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentVar_STATUS.
+func (in *EnvironmentVar_STATUS) DeepCopy() *EnvironmentVar_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(EnvironmentVar_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 *ExtendedLocation) DeepCopyInto(out *ExtendedLocation) {
+ *out = *in
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(ExtendedLocationType)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedLocation.
+func (in *ExtendedLocation) DeepCopy() *ExtendedLocation {
+ if in == nil {
+ return nil
+ }
+ out := new(ExtendedLocation)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ExtendedLocation_STATUS) DeepCopyInto(out *ExtendedLocation_STATUS) {
+ *out = *in
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(ExtendedLocationType_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedLocation_STATUS.
+func (in *ExtendedLocation_STATUS) DeepCopy() *ExtendedLocation_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ExtendedLocation_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 *Facebook) DeepCopyInto(out *Facebook) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.GraphApiVersion != nil {
+ in, out := &in.GraphApiVersion, &out.GraphApiVersion
+ *out = new(string)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AppRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Facebook.
+func (in *Facebook) DeepCopy() *Facebook {
+ if in == nil {
+ return nil
+ }
+ out := new(Facebook)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Facebook_STATUS) DeepCopyInto(out *Facebook_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.GraphApiVersion != nil {
+ in, out := &in.GraphApiVersion, &out.GraphApiVersion
+ *out = new(string)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(AppRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Facebook_STATUS.
+func (in *Facebook_STATUS) DeepCopy() *Facebook_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Facebook_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 *ForwardProxy) DeepCopyInto(out *ForwardProxy) {
+ *out = *in
+ if in.Convention != nil {
+ in, out := &in.Convention, &out.Convention
+ *out = new(ForwardProxy_Convention)
+ **out = **in
+ }
+ if in.CustomHostHeaderName != nil {
+ in, out := &in.CustomHostHeaderName, &out.CustomHostHeaderName
+ *out = new(string)
+ **out = **in
+ }
+ if in.CustomProtoHeaderName != nil {
+ in, out := &in.CustomProtoHeaderName, &out.CustomProtoHeaderName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardProxy.
+func (in *ForwardProxy) DeepCopy() *ForwardProxy {
+ if in == nil {
+ return nil
+ }
+ out := new(ForwardProxy)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ForwardProxy_STATUS) DeepCopyInto(out *ForwardProxy_STATUS) {
+ *out = *in
+ if in.Convention != nil {
+ in, out := &in.Convention, &out.Convention
+ *out = new(ForwardProxy_Convention_STATUS)
+ **out = **in
+ }
+ if in.CustomHostHeaderName != nil {
+ in, out := &in.CustomHostHeaderName, &out.CustomHostHeaderName
+ *out = new(string)
+ **out = **in
+ }
+ if in.CustomProtoHeaderName != nil {
+ in, out := &in.CustomProtoHeaderName, &out.CustomProtoHeaderName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardProxy_STATUS.
+func (in *ForwardProxy_STATUS) DeepCopy() *ForwardProxy_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ForwardProxy_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 *GitHub) DeepCopyInto(out *GitHub) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(ClientRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHub.
+func (in *GitHub) DeepCopy() *GitHub {
+ if in == nil {
+ return nil
+ }
+ out := new(GitHub)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *GitHub_STATUS) DeepCopyInto(out *GitHub_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(ClientRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHub_STATUS.
+func (in *GitHub_STATUS) DeepCopy() *GitHub_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(GitHub_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 *GlobalValidation) DeepCopyInto(out *GlobalValidation) {
+ *out = *in
+ if in.ExcludedPaths != nil {
+ in, out := &in.ExcludedPaths, &out.ExcludedPaths
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.RedirectToProvider != nil {
+ in, out := &in.RedirectToProvider, &out.RedirectToProvider
+ *out = new(string)
+ **out = **in
+ }
+ if in.UnauthenticatedClientAction != nil {
+ in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction
+ *out = new(GlobalValidation_UnauthenticatedClientAction)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalValidation.
+func (in *GlobalValidation) DeepCopy() *GlobalValidation {
+ if in == nil {
+ return nil
+ }
+ out := new(GlobalValidation)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *GlobalValidation_STATUS) DeepCopyInto(out *GlobalValidation_STATUS) {
+ *out = *in
+ if in.ExcludedPaths != nil {
+ in, out := &in.ExcludedPaths, &out.ExcludedPaths
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.RedirectToProvider != nil {
+ in, out := &in.RedirectToProvider, &out.RedirectToProvider
+ *out = new(string)
+ **out = **in
+ }
+ if in.UnauthenticatedClientAction != nil {
+ in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction
+ *out = new(GlobalValidation_UnauthenticatedClientAction_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalValidation_STATUS.
+func (in *GlobalValidation_STATUS) DeepCopy() *GlobalValidation_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(GlobalValidation_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 *Google) DeepCopyInto(out *Google) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(ClientRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Validation != nil {
+ in, out := &in.Validation, &out.Validation
+ *out = new(AllowedAudiencesValidation)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Google.
+func (in *Google) DeepCopy() *Google {
+ if in == nil {
+ return nil
+ }
+ out := new(Google)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Google_STATUS) DeepCopyInto(out *Google_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Login != nil {
+ in, out := &in.Login, &out.Login
+ *out = new(LoginScopes_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(ClientRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Validation != nil {
+ in, out := &in.Validation, &out.Validation
+ *out = new(AllowedAudiencesValidation_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Google_STATUS.
+func (in *Google_STATUS) DeepCopy() *Google_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Google_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 *HttpScaleRule) DeepCopyInto(out *HttpScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *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 HttpScaleRule.
+func (in *HttpScaleRule) DeepCopy() *HttpScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *HttpScaleRule_STATUS) DeepCopyInto(out *HttpScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *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 HttpScaleRule_STATUS.
+func (in *HttpScaleRule_STATUS) DeepCopy() *HttpScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpScaleRule_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 *HttpSettings) DeepCopyInto(out *HttpSettings) {
+ *out = *in
+ if in.ForwardProxy != nil {
+ in, out := &in.ForwardProxy, &out.ForwardProxy
+ *out = new(ForwardProxy)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.RequireHttps != nil {
+ in, out := &in.RequireHttps, &out.RequireHttps
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Routes != nil {
+ in, out := &in.Routes, &out.Routes
+ *out = new(HttpSettingsRoutes)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpSettings.
+func (in *HttpSettings) DeepCopy() *HttpSettings {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpSettings)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *HttpSettingsRoutes) DeepCopyInto(out *HttpSettingsRoutes) {
+ *out = *in
+ if in.ApiPrefix != nil {
+ in, out := &in.ApiPrefix, &out.ApiPrefix
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpSettingsRoutes.
+func (in *HttpSettingsRoutes) DeepCopy() *HttpSettingsRoutes {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpSettingsRoutes)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *HttpSettingsRoutes_STATUS) DeepCopyInto(out *HttpSettingsRoutes_STATUS) {
+ *out = *in
+ if in.ApiPrefix != nil {
+ in, out := &in.ApiPrefix, &out.ApiPrefix
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpSettingsRoutes_STATUS.
+func (in *HttpSettingsRoutes_STATUS) DeepCopy() *HttpSettingsRoutes_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpSettingsRoutes_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 *HttpSettings_STATUS) DeepCopyInto(out *HttpSettings_STATUS) {
+ *out = *in
+ if in.ForwardProxy != nil {
+ in, out := &in.ForwardProxy, &out.ForwardProxy
+ *out = new(ForwardProxy_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.RequireHttps != nil {
+ in, out := &in.RequireHttps, &out.RequireHttps
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Routes != nil {
+ in, out := &in.Routes, &out.Routes
+ *out = new(HttpSettingsRoutes_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpSettings_STATUS.
+func (in *HttpSettings_STATUS) DeepCopy() *HttpSettings_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(HttpSettings_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 *IdentityProviders) DeepCopyInto(out *IdentityProviders) {
+ *out = *in
+ if in.Apple != nil {
+ in, out := &in.Apple, &out.Apple
+ *out = new(Apple)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.AzureActiveDirectory != nil {
+ in, out := &in.AzureActiveDirectory, &out.AzureActiveDirectory
+ *out = new(AzureActiveDirectory)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.AzureStaticWebApps != nil {
+ in, out := &in.AzureStaticWebApps, &out.AzureStaticWebApps
+ *out = new(AzureStaticWebApps)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomOpenIdConnectProviders != nil {
+ in, out := &in.CustomOpenIdConnectProviders, &out.CustomOpenIdConnectProviders
+ *out = make(map[string]CustomOpenIdConnectProvider, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+ if in.Facebook != nil {
+ in, out := &in.Facebook, &out.Facebook
+ *out = new(Facebook)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.GitHub != nil {
+ in, out := &in.GitHub, &out.GitHub
+ *out = new(GitHub)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Google != nil {
+ in, out := &in.Google, &out.Google
+ *out = new(Google)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Twitter != nil {
+ in, out := &in.Twitter, &out.Twitter
+ *out = new(Twitter)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviders.
+func (in *IdentityProviders) DeepCopy() *IdentityProviders {
+ if in == nil {
+ return nil
+ }
+ out := new(IdentityProviders)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *IdentityProviders_STATUS) DeepCopyInto(out *IdentityProviders_STATUS) {
+ *out = *in
+ if in.Apple != nil {
+ in, out := &in.Apple, &out.Apple
+ *out = new(Apple_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.AzureActiveDirectory != nil {
+ in, out := &in.AzureActiveDirectory, &out.AzureActiveDirectory
+ *out = new(AzureActiveDirectory_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.AzureStaticWebApps != nil {
+ in, out := &in.AzureStaticWebApps, &out.AzureStaticWebApps
+ *out = new(AzureStaticWebApps_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomOpenIdConnectProviders != nil {
+ in, out := &in.CustomOpenIdConnectProviders, &out.CustomOpenIdConnectProviders
+ *out = make(map[string]CustomOpenIdConnectProvider_STATUS, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+ if in.Facebook != nil {
+ in, out := &in.Facebook, &out.Facebook
+ *out = new(Facebook_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.GitHub != nil {
+ in, out := &in.GitHub, &out.GitHub
+ *out = new(GitHub_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Google != nil {
+ in, out := &in.Google, &out.Google
+ *out = new(Google_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Twitter != nil {
+ in, out := &in.Twitter, &out.Twitter
+ *out = new(Twitter_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviders_STATUS.
+func (in *IdentityProviders_STATUS) DeepCopy() *IdentityProviders_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(IdentityProviders_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 *Ingress) DeepCopyInto(out *Ingress) {
+ *out = *in
+ if in.AdditionalPortMappings != nil {
+ in, out := &in.AdditionalPortMappings, &out.AdditionalPortMappings
+ *out = make([]IngressPortMapping, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.AllowInsecure != nil {
+ in, out := &in.AllowInsecure, &out.AllowInsecure
+ *out = new(bool)
+ **out = **in
+ }
+ if in.ClientCertificateMode != nil {
+ in, out := &in.ClientCertificateMode, &out.ClientCertificateMode
+ *out = new(Ingress_ClientCertificateMode)
+ **out = **in
+ }
+ if in.CorsPolicy != nil {
+ in, out := &in.CorsPolicy, &out.CorsPolicy
+ *out = new(CorsPolicy)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomDomains != nil {
+ in, out := &in.CustomDomains, &out.CustomDomains
+ *out = make([]CustomDomain, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ExposedPort != nil {
+ in, out := &in.ExposedPort, &out.ExposedPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.External != nil {
+ in, out := &in.External, &out.External
+ *out = new(bool)
+ **out = **in
+ }
+ if in.IpSecurityRestrictions != nil {
+ in, out := &in.IpSecurityRestrictions, &out.IpSecurityRestrictions
+ *out = make([]IpSecurityRestrictionRule, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.StickySessions != nil {
+ in, out := &in.StickySessions, &out.StickySessions
+ *out = new(Ingress_StickySessions)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TargetPort != nil {
+ in, out := &in.TargetPort, &out.TargetPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.Traffic != nil {
+ in, out := &in.Traffic, &out.Traffic
+ *out = make([]TrafficWeight, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Transport != nil {
+ in, out := &in.Transport, &out.Transport
+ *out = new(Ingress_Transport)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ingress.
+func (in *Ingress) DeepCopy() *Ingress {
+ if in == nil {
+ return nil
+ }
+ out := new(Ingress)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *IngressPortMapping) DeepCopyInto(out *IngressPortMapping) {
+ *out = *in
+ if in.ExposedPort != nil {
+ in, out := &in.ExposedPort, &out.ExposedPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.External != nil {
+ in, out := &in.External, &out.External
+ *out = new(bool)
+ **out = **in
+ }
+ if in.TargetPort != nil {
+ in, out := &in.TargetPort, &out.TargetPort
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressPortMapping.
+func (in *IngressPortMapping) DeepCopy() *IngressPortMapping {
+ if in == nil {
+ return nil
+ }
+ out := new(IngressPortMapping)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *IngressPortMapping_STATUS) DeepCopyInto(out *IngressPortMapping_STATUS) {
+ *out = *in
+ if in.ExposedPort != nil {
+ in, out := &in.ExposedPort, &out.ExposedPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.External != nil {
+ in, out := &in.External, &out.External
+ *out = new(bool)
+ **out = **in
+ }
+ if in.TargetPort != nil {
+ in, out := &in.TargetPort, &out.TargetPort
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressPortMapping_STATUS.
+func (in *IngressPortMapping_STATUS) DeepCopy() *IngressPortMapping_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(IngressPortMapping_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 *Ingress_STATUS) DeepCopyInto(out *Ingress_STATUS) {
+ *out = *in
+ if in.AdditionalPortMappings != nil {
+ in, out := &in.AdditionalPortMappings, &out.AdditionalPortMappings
+ *out = make([]IngressPortMapping_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.AllowInsecure != nil {
+ in, out := &in.AllowInsecure, &out.AllowInsecure
+ *out = new(bool)
+ **out = **in
+ }
+ if in.ClientCertificateMode != nil {
+ in, out := &in.ClientCertificateMode, &out.ClientCertificateMode
+ *out = new(Ingress_ClientCertificateMode_STATUS)
+ **out = **in
+ }
+ if in.CorsPolicy != nil {
+ in, out := &in.CorsPolicy, &out.CorsPolicy
+ *out = new(CorsPolicy_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomDomains != nil {
+ in, out := &in.CustomDomains, &out.CustomDomains
+ *out = make([]CustomDomain_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ExposedPort != nil {
+ in, out := &in.ExposedPort, &out.ExposedPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.External != nil {
+ in, out := &in.External, &out.External
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Fqdn != nil {
+ in, out := &in.Fqdn, &out.Fqdn
+ *out = new(string)
+ **out = **in
+ }
+ if in.IpSecurityRestrictions != nil {
+ in, out := &in.IpSecurityRestrictions, &out.IpSecurityRestrictions
+ *out = make([]IpSecurityRestrictionRule_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.StickySessions != nil {
+ in, out := &in.StickySessions, &out.StickySessions
+ *out = new(Ingress_StickySessions_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TargetPort != nil {
+ in, out := &in.TargetPort, &out.TargetPort
+ *out = new(int)
+ **out = **in
+ }
+ if in.Traffic != nil {
+ in, out := &in.Traffic, &out.Traffic
+ *out = make([]TrafficWeight_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Transport != nil {
+ in, out := &in.Transport, &out.Transport
+ *out = new(Ingress_Transport_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ingress_STATUS.
+func (in *Ingress_STATUS) DeepCopy() *Ingress_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Ingress_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 *Ingress_StickySessions) DeepCopyInto(out *Ingress_StickySessions) {
+ *out = *in
+ if in.Affinity != nil {
+ in, out := &in.Affinity, &out.Affinity
+ *out = new(Ingress_StickySessions_Affinity)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ingress_StickySessions.
+func (in *Ingress_StickySessions) DeepCopy() *Ingress_StickySessions {
+ if in == nil {
+ return nil
+ }
+ out := new(Ingress_StickySessions)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Ingress_StickySessions_STATUS) DeepCopyInto(out *Ingress_StickySessions_STATUS) {
+ *out = *in
+ if in.Affinity != nil {
+ in, out := &in.Affinity, &out.Affinity
+ *out = new(Ingress_StickySessions_Affinity_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ingress_StickySessions_STATUS.
+func (in *Ingress_StickySessions_STATUS) DeepCopy() *Ingress_StickySessions_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Ingress_StickySessions_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 *IpSecurityRestrictionRule) DeepCopyInto(out *IpSecurityRestrictionRule) {
+ *out = *in
+ if in.Action != nil {
+ in, out := &in.Action, &out.Action
+ *out = new(IpSecurityRestrictionRule_Action)
+ **out = **in
+ }
+ if in.Description != nil {
+ in, out := &in.Description, &out.Description
+ *out = new(string)
+ **out = **in
+ }
+ if in.IpAddressRange != nil {
+ in, out := &in.IpAddressRange, &out.IpAddressRange
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IpSecurityRestrictionRule.
+func (in *IpSecurityRestrictionRule) DeepCopy() *IpSecurityRestrictionRule {
+ if in == nil {
+ return nil
+ }
+ out := new(IpSecurityRestrictionRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *IpSecurityRestrictionRule_STATUS) DeepCopyInto(out *IpSecurityRestrictionRule_STATUS) {
+ *out = *in
+ if in.Action != nil {
+ in, out := &in.Action, &out.Action
+ *out = new(IpSecurityRestrictionRule_Action_STATUS)
+ **out = **in
+ }
+ if in.Description != nil {
+ in, out := &in.Description, &out.Description
+ *out = new(string)
+ **out = **in
+ }
+ if in.IpAddressRange != nil {
+ in, out := &in.IpAddressRange, &out.IpAddressRange
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IpSecurityRestrictionRule_STATUS.
+func (in *IpSecurityRestrictionRule_STATUS) DeepCopy() *IpSecurityRestrictionRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(IpSecurityRestrictionRule_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 *Job) DeepCopyInto(out *Job) {
+ *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 Job.
+func (in *Job) DeepCopy() *Job {
+ if in == nil {
+ return nil
+ }
+ out := new(Job)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *Job) 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 *JobConfiguration) DeepCopyInto(out *JobConfiguration) {
+ *out = *in
+ if in.EventTriggerConfig != nil {
+ in, out := &in.EventTriggerConfig, &out.EventTriggerConfig
+ *out = new(JobConfiguration_EventTriggerConfig)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ManualTriggerConfig != nil {
+ in, out := &in.ManualTriggerConfig, &out.ManualTriggerConfig
+ *out = new(JobConfiguration_ManualTriggerConfig)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registries != nil {
+ in, out := &in.Registries, &out.Registries
+ *out = make([]RegistryCredentials, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ReplicaRetryLimit != nil {
+ in, out := &in.ReplicaRetryLimit, &out.ReplicaRetryLimit
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaTimeout != nil {
+ in, out := &in.ReplicaTimeout, &out.ReplicaTimeout
+ *out = new(int)
+ **out = **in
+ }
+ if in.ScheduleTriggerConfig != nil {
+ in, out := &in.ScheduleTriggerConfig, &out.ScheduleTriggerConfig
+ *out = new(JobConfiguration_ScheduleTriggerConfig)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]Secret, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.TriggerType != nil {
+ in, out := &in.TriggerType, &out.TriggerType
+ *out = new(JobConfiguration_TriggerType)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration.
+func (in *JobConfiguration) DeepCopy() *JobConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobConfiguration_EventTriggerConfig) DeepCopyInto(out *JobConfiguration_EventTriggerConfig) {
+ *out = *in
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.Scale != nil {
+ in, out := &in.Scale, &out.Scale
+ *out = new(JobScale)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_EventTriggerConfig.
+func (in *JobConfiguration_EventTriggerConfig) DeepCopy() *JobConfiguration_EventTriggerConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_EventTriggerConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobConfiguration_EventTriggerConfig_STATUS) DeepCopyInto(out *JobConfiguration_EventTriggerConfig_STATUS) {
+ *out = *in
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.Scale != nil {
+ in, out := &in.Scale, &out.Scale
+ *out = new(JobScale_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_EventTriggerConfig_STATUS.
+func (in *JobConfiguration_EventTriggerConfig_STATUS) DeepCopy() *JobConfiguration_EventTriggerConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_EventTriggerConfig_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 *JobConfiguration_ManualTriggerConfig) DeepCopyInto(out *JobConfiguration_ManualTriggerConfig) {
+ *out = *in
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_ManualTriggerConfig.
+func (in *JobConfiguration_ManualTriggerConfig) DeepCopy() *JobConfiguration_ManualTriggerConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_ManualTriggerConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobConfiguration_ManualTriggerConfig_STATUS) DeepCopyInto(out *JobConfiguration_ManualTriggerConfig_STATUS) {
+ *out = *in
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_ManualTriggerConfig_STATUS.
+func (in *JobConfiguration_ManualTriggerConfig_STATUS) DeepCopy() *JobConfiguration_ManualTriggerConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_ManualTriggerConfig_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 *JobConfiguration_STATUS) DeepCopyInto(out *JobConfiguration_STATUS) {
+ *out = *in
+ if in.EventTriggerConfig != nil {
+ in, out := &in.EventTriggerConfig, &out.EventTriggerConfig
+ *out = new(JobConfiguration_EventTriggerConfig_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ManualTriggerConfig != nil {
+ in, out := &in.ManualTriggerConfig, &out.ManualTriggerConfig
+ *out = new(JobConfiguration_ManualTriggerConfig_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Registries != nil {
+ in, out := &in.Registries, &out.Registries
+ *out = make([]RegistryCredentials_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ReplicaRetryLimit != nil {
+ in, out := &in.ReplicaRetryLimit, &out.ReplicaRetryLimit
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaTimeout != nil {
+ in, out := &in.ReplicaTimeout, &out.ReplicaTimeout
+ *out = new(int)
+ **out = **in
+ }
+ if in.ScheduleTriggerConfig != nil {
+ in, out := &in.ScheduleTriggerConfig, &out.ScheduleTriggerConfig
+ *out = new(JobConfiguration_ScheduleTriggerConfig_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]Secret_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.TriggerType != nil {
+ in, out := &in.TriggerType, &out.TriggerType
+ *out = new(JobConfiguration_TriggerType_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_STATUS.
+func (in *JobConfiguration_STATUS) DeepCopy() *JobConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_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 *JobConfiguration_ScheduleTriggerConfig) DeepCopyInto(out *JobConfiguration_ScheduleTriggerConfig) {
+ *out = *in
+ if in.CronExpression != nil {
+ in, out := &in.CronExpression, &out.CronExpression
+ *out = new(string)
+ **out = **in
+ }
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_ScheduleTriggerConfig.
+func (in *JobConfiguration_ScheduleTriggerConfig) DeepCopy() *JobConfiguration_ScheduleTriggerConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_ScheduleTriggerConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobConfiguration_ScheduleTriggerConfig_STATUS) DeepCopyInto(out *JobConfiguration_ScheduleTriggerConfig_STATUS) {
+ *out = *in
+ if in.CronExpression != nil {
+ in, out := &in.CronExpression, &out.CronExpression
+ *out = new(string)
+ **out = **in
+ }
+ if in.Parallelism != nil {
+ in, out := &in.Parallelism, &out.Parallelism
+ *out = new(int)
+ **out = **in
+ }
+ if in.ReplicaCompletionCount != nil {
+ in, out := &in.ReplicaCompletionCount, &out.ReplicaCompletionCount
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfiguration_ScheduleTriggerConfig_STATUS.
+func (in *JobConfiguration_ScheduleTriggerConfig_STATUS) DeepCopy() *JobConfiguration_ScheduleTriggerConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobConfiguration_ScheduleTriggerConfig_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 *JobList) DeepCopyInto(out *JobList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]Job, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobList.
+func (in *JobList) DeepCopy() *JobList {
+ if in == nil {
+ return nil
+ }
+ out := new(JobList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *JobList) 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 *JobOperatorSpec) DeepCopyInto(out *JobOperatorSpec) {
+ *out = *in
+ if in.ConfigMapExpressions != nil {
+ in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+ if in.SecretExpressions != nil {
+ in, out := &in.SecretExpressions, &out.SecretExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobOperatorSpec.
+func (in *JobOperatorSpec) DeepCopy() *JobOperatorSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(JobOperatorSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobScale) DeepCopyInto(out *JobScale) {
+ *out = *in
+ if in.MaxExecutions != nil {
+ in, out := &in.MaxExecutions, &out.MaxExecutions
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinExecutions != nil {
+ in, out := &in.MinExecutions, &out.MinExecutions
+ *out = new(int)
+ **out = **in
+ }
+ if in.PollingInterval != nil {
+ in, out := &in.PollingInterval, &out.PollingInterval
+ *out = new(int)
+ **out = **in
+ }
+ if in.Rules != nil {
+ in, out := &in.Rules, &out.Rules
+ *out = make([]JobScaleRule, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobScale.
+func (in *JobScale) DeepCopy() *JobScale {
+ if in == nil {
+ return nil
+ }
+ out := new(JobScale)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobScaleRule) DeepCopyInto(out *JobScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]v1.JSON, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobScaleRule.
+func (in *JobScaleRule) DeepCopy() *JobScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(JobScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobScaleRule_STATUS) DeepCopyInto(out *JobScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *out = make(map[string]v1.JSON, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobScaleRule_STATUS.
+func (in *JobScaleRule_STATUS) DeepCopy() *JobScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobScaleRule_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 *JobScale_STATUS) DeepCopyInto(out *JobScale_STATUS) {
+ *out = *in
+ if in.MaxExecutions != nil {
+ in, out := &in.MaxExecutions, &out.MaxExecutions
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinExecutions != nil {
+ in, out := &in.MinExecutions, &out.MinExecutions
+ *out = new(int)
+ **out = **in
+ }
+ if in.PollingInterval != nil {
+ in, out := &in.PollingInterval, &out.PollingInterval
+ *out = new(int)
+ **out = **in
+ }
+ if in.Rules != nil {
+ in, out := &in.Rules, &out.Rules
+ *out = make([]JobScaleRule_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobScale_STATUS.
+func (in *JobScale_STATUS) DeepCopy() *JobScale_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobScale_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 *JobTemplate) DeepCopyInto(out *JobTemplate) {
+ *out = *in
+ if in.Containers != nil {
+ in, out := &in.Containers, &out.Containers
+ *out = make([]Container, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.InitContainers != nil {
+ in, out := &in.InitContainers, &out.InitContainers
+ *out = make([]BaseContainer, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Volumes != nil {
+ in, out := &in.Volumes, &out.Volumes
+ *out = make([]Volume, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobTemplate.
+func (in *JobTemplate) DeepCopy() *JobTemplate {
+ if in == nil {
+ return nil
+ }
+ out := new(JobTemplate)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JobTemplate_STATUS) DeepCopyInto(out *JobTemplate_STATUS) {
+ *out = *in
+ if in.Containers != nil {
+ in, out := &in.Containers, &out.Containers
+ *out = make([]Container_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.InitContainers != nil {
+ in, out := &in.InitContainers, &out.InitContainers
+ *out = make([]BaseContainer_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Volumes != nil {
+ in, out := &in.Volumes, &out.Volumes
+ *out = make([]Volume_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobTemplate_STATUS.
+func (in *JobTemplate_STATUS) DeepCopy() *JobTemplate_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JobTemplate_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 *Job_STATUS) DeepCopyInto(out *Job_STATUS) {
+ *out = *in
+ if in.Conditions != nil {
+ in, out := &in.Conditions, &out.Conditions
+ *out = make([]conditions.Condition, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Configuration != nil {
+ in, out := &in.Configuration, &out.Configuration
+ *out = new(JobConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.EnvironmentId != nil {
+ in, out := &in.EnvironmentId, &out.EnvironmentId
+ *out = new(string)
+ **out = **in
+ }
+ if in.EventStreamEndpoint != nil {
+ in, out := &in.EventStreamEndpoint, &out.EventStreamEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.Id != nil {
+ in, out := &in.Id, &out.Id
+ *out = new(string)
+ **out = **in
+ }
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(ManagedServiceIdentity_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.OutboundIpAddresses != nil {
+ in, out := &in.OutboundIpAddresses, &out.OutboundIpAddresses
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.ProvisioningState != nil {
+ in, out := &in.ProvisioningState, &out.ProvisioningState
+ *out = new(Job_Properties_ProvisioningState_STATUS)
+ **out = **in
+ }
+ 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.Template != nil {
+ in, out := &in.Template, &out.Template
+ *out = new(JobTemplate_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+ if in.WorkloadProfileName != nil {
+ in, out := &in.WorkloadProfileName, &out.WorkloadProfileName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Job_STATUS.
+func (in *Job_STATUS) DeepCopy() *Job_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Job_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 *Job_Spec) DeepCopyInto(out *Job_Spec) {
+ *out = *in
+ if in.Configuration != nil {
+ in, out := &in.Configuration, &out.Configuration
+ *out = new(JobConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.EnvironmentReference != nil {
+ in, out := &in.EnvironmentReference, &out.EnvironmentReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(ManagedServiceIdentity)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.OperatorSpec != nil {
+ in, out := &in.OperatorSpec, &out.OperatorSpec
+ *out = new(JobOperatorSpec)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Owner != nil {
+ in, out := &in.Owner, &out.Owner
+ *out = new(genruntime.KnownResourceReference)
+ **out = **in
+ }
+ if in.Tags != nil {
+ in, out := &in.Tags, &out.Tags
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
+ if in.Template != nil {
+ in, out := &in.Template, &out.Template
+ *out = new(JobTemplate)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.WorkloadProfileName != nil {
+ in, out := &in.WorkloadProfileName, &out.WorkloadProfileName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Job_Spec.
+func (in *Job_Spec) DeepCopy() *Job_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(Job_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 *JwtClaimChecks) DeepCopyInto(out *JwtClaimChecks) {
+ *out = *in
+ if in.AllowedClientApplications != nil {
+ in, out := &in.AllowedClientApplications, &out.AllowedClientApplications
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedGroups != nil {
+ in, out := &in.AllowedGroups, &out.AllowedGroups
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JwtClaimChecks.
+func (in *JwtClaimChecks) DeepCopy() *JwtClaimChecks {
+ if in == nil {
+ return nil
+ }
+ out := new(JwtClaimChecks)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *JwtClaimChecks_STATUS) DeepCopyInto(out *JwtClaimChecks_STATUS) {
+ *out = *in
+ if in.AllowedClientApplications != nil {
+ in, out := &in.AllowedClientApplications, &out.AllowedClientApplications
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.AllowedGroups != nil {
+ in, out := &in.AllowedGroups, &out.AllowedGroups
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JwtClaimChecks_STATUS.
+func (in *JwtClaimChecks_STATUS) DeepCopy() *JwtClaimChecks_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(JwtClaimChecks_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 *KedaConfiguration_STATUS) DeepCopyInto(out *KedaConfiguration_STATUS) {
+ *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 KedaConfiguration_STATUS.
+func (in *KedaConfiguration_STATUS) DeepCopy() *KedaConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(KedaConfiguration_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 *LogAnalyticsConfiguration) DeepCopyInto(out *LogAnalyticsConfiguration) {
+ *out = *in
+ if in.CustomerId != nil {
+ in, out := &in.CustomerId, &out.CustomerId
+ *out = new(string)
+ **out = **in
+ }
+ if in.SharedKey != nil {
+ in, out := &in.SharedKey, &out.SharedKey
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsConfiguration.
+func (in *LogAnalyticsConfiguration) DeepCopy() *LogAnalyticsConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(LogAnalyticsConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *LogAnalyticsConfiguration_STATUS) DeepCopyInto(out *LogAnalyticsConfiguration_STATUS) {
+ *out = *in
+ if in.CustomerId != nil {
+ in, out := &in.CustomerId, &out.CustomerId
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsConfiguration_STATUS.
+func (in *LogAnalyticsConfiguration_STATUS) DeepCopy() *LogAnalyticsConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(LogAnalyticsConfiguration_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 *Login) DeepCopyInto(out *Login) {
+ *out = *in
+ if in.AllowedExternalRedirectUrls != nil {
+ in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.CookieExpiration != nil {
+ in, out := &in.CookieExpiration, &out.CookieExpiration
+ *out = new(CookieExpiration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Nonce != nil {
+ in, out := &in.Nonce, &out.Nonce
+ *out = new(Nonce)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.PreserveUrlFragmentsForLogins != nil {
+ in, out := &in.PreserveUrlFragmentsForLogins, &out.PreserveUrlFragmentsForLogins
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Routes != nil {
+ in, out := &in.Routes, &out.Routes
+ *out = new(LoginRoutes)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TokenStore != nil {
+ in, out := &in.TokenStore, &out.TokenStore
+ *out = new(TokenStore)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Login.
+func (in *Login) DeepCopy() *Login {
+ if in == nil {
+ return nil
+ }
+ out := new(Login)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *LoginRoutes) DeepCopyInto(out *LoginRoutes) {
+ *out = *in
+ if in.LogoutEndpoint != nil {
+ in, out := &in.LogoutEndpoint, &out.LogoutEndpoint
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRoutes.
+func (in *LoginRoutes) DeepCopy() *LoginRoutes {
+ if in == nil {
+ return nil
+ }
+ out := new(LoginRoutes)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *LoginRoutes_STATUS) DeepCopyInto(out *LoginRoutes_STATUS) {
+ *out = *in
+ if in.LogoutEndpoint != nil {
+ in, out := &in.LogoutEndpoint, &out.LogoutEndpoint
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRoutes_STATUS.
+func (in *LoginRoutes_STATUS) DeepCopy() *LoginRoutes_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(LoginRoutes_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 *LoginScopes) DeepCopyInto(out *LoginScopes) {
+ *out = *in
+ if in.Scopes != nil {
+ in, out := &in.Scopes, &out.Scopes
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginScopes.
+func (in *LoginScopes) DeepCopy() *LoginScopes {
+ if in == nil {
+ return nil
+ }
+ out := new(LoginScopes)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *LoginScopes_STATUS) DeepCopyInto(out *LoginScopes_STATUS) {
+ *out = *in
+ if in.Scopes != nil {
+ in, out := &in.Scopes, &out.Scopes
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginScopes_STATUS.
+func (in *LoginScopes_STATUS) DeepCopy() *LoginScopes_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(LoginScopes_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 *Login_STATUS) DeepCopyInto(out *Login_STATUS) {
+ *out = *in
+ if in.AllowedExternalRedirectUrls != nil {
+ in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+ if in.CookieExpiration != nil {
+ in, out := &in.CookieExpiration, &out.CookieExpiration
+ *out = new(CookieExpiration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Nonce != nil {
+ in, out := &in.Nonce, &out.Nonce
+ *out = new(Nonce_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.PreserveUrlFragmentsForLogins != nil {
+ in, out := &in.PreserveUrlFragmentsForLogins, &out.PreserveUrlFragmentsForLogins
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Routes != nil {
+ in, out := &in.Routes, &out.Routes
+ *out = new(LoginRoutes_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.TokenStore != nil {
+ in, out := &in.TokenStore, &out.TokenStore
+ *out = new(TokenStore_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Login_STATUS.
+func (in *Login_STATUS) DeepCopy() *Login_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Login_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 *ManagedEnvironment) DeepCopyInto(out *ManagedEnvironment) {
+ *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 ManagedEnvironment.
+func (in *ManagedEnvironment) DeepCopy() *ManagedEnvironment {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ManagedEnvironment) 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 *ManagedEnvironmentList) DeepCopyInto(out *ManagedEnvironmentList) {
+ *out = *in
+ out.TypeMeta = in.TypeMeta
+ in.ListMeta.DeepCopyInto(&out.ListMeta)
+ if in.Items != nil {
+ in, out := &in.Items, &out.Items
+ *out = make([]ManagedEnvironment, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironmentList.
+func (in *ManagedEnvironmentList) DeepCopy() *ManagedEnvironmentList {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironmentList)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
+func (in *ManagedEnvironmentList) 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 *ManagedEnvironmentOperatorSpec) DeepCopyInto(out *ManagedEnvironmentOperatorSpec) {
+ *out = *in
+ if in.ConfigMapExpressions != nil {
+ in, out := &in.ConfigMapExpressions, &out.ConfigMapExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+ if in.SecretExpressions != nil {
+ in, out := &in.SecretExpressions, &out.SecretExpressions
+ *out = make([]*core.DestinationExpression, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(core.DestinationExpression)
+ **out = **in
+ }
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironmentOperatorSpec.
+func (in *ManagedEnvironmentOperatorSpec) DeepCopy() *ManagedEnvironmentOperatorSpec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironmentOperatorSpec)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ManagedEnvironment_Properties_PeerAuthentication_STATUS) DeepCopyInto(out *ManagedEnvironment_Properties_PeerAuthentication_STATUS) {
+ *out = *in
+ if in.Mtls != nil {
+ in, out := &in.Mtls, &out.Mtls
+ *out = new(Mtls_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Properties_PeerAuthentication_STATUS.
+func (in *ManagedEnvironment_Properties_PeerAuthentication_STATUS) DeepCopy() *ManagedEnvironment_Properties_PeerAuthentication_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerAuthentication_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 *ManagedEnvironment_Properties_PeerAuthentication_Spec) DeepCopyInto(out *ManagedEnvironment_Properties_PeerAuthentication_Spec) {
+ *out = *in
+ if in.Mtls != nil {
+ in, out := &in.Mtls, &out.Mtls
+ *out = new(Mtls)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Properties_PeerAuthentication_Spec.
+func (in *ManagedEnvironment_Properties_PeerAuthentication_Spec) DeepCopy() *ManagedEnvironment_Properties_PeerAuthentication_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerAuthentication_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 *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) DeepCopyInto(out *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS.
+func (in *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS) DeepCopy() *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) DeepCopyInto(out *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec.
+func (in *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec) DeepCopy() *ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_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 *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) DeepCopyInto(out *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) {
+ *out = *in
+ if in.Encryption != nil {
+ in, out := &in.Encryption, &out.Encryption
+ *out = new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS.
+func (in *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS) DeepCopy() *ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerTrafficConfiguration_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 *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) DeepCopyInto(out *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) {
+ *out = *in
+ if in.Encryption != nil {
+ in, out := &in.Encryption, &out.Encryption
+ *out = new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec.
+func (in *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec) DeepCopy() *ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_Properties_PeerTrafficConfiguration_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 *ManagedEnvironment_STATUS) DeepCopyInto(out *ManagedEnvironment_STATUS) {
+ *out = *in
+ if in.AppLogsConfiguration != nil {
+ in, out := &in.AppLogsConfiguration, &out.AppLogsConfiguration
+ *out = new(AppLogsConfiguration_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.CustomDomainConfiguration != nil {
+ in, out := &in.CustomDomainConfiguration, &out.CustomDomainConfiguration
+ *out = new(CustomDomainConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.DaprConfiguration != nil {
+ in, out := &in.DaprConfiguration, &out.DaprConfiguration
+ *out = new(DaprConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.DefaultDomain != nil {
+ in, out := &in.DefaultDomain, &out.DefaultDomain
+ *out = new(string)
+ **out = **in
+ }
+ if in.DeploymentErrors != nil {
+ in, out := &in.DeploymentErrors, &out.DeploymentErrors
+ *out = new(string)
+ **out = **in
+ }
+ if in.EventStreamEndpoint != nil {
+ in, out := &in.EventStreamEndpoint, &out.EventStreamEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.Id != nil {
+ in, out := &in.Id, &out.Id
+ *out = new(string)
+ **out = **in
+ }
+ if in.InfrastructureResourceGroup != nil {
+ in, out := &in.InfrastructureResourceGroup, &out.InfrastructureResourceGroup
+ *out = new(string)
+ **out = **in
+ }
+ if in.KedaConfiguration != nil {
+ in, out := &in.KedaConfiguration, &out.KedaConfiguration
+ *out = new(KedaConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Kind != nil {
+ in, out := &in.Kind, &out.Kind
+ *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.PeerAuthentication != nil {
+ in, out := &in.PeerAuthentication, &out.PeerAuthentication
+ *out = new(ManagedEnvironment_Properties_PeerAuthentication_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.PeerTrafficConfiguration != nil {
+ in, out := &in.PeerTrafficConfiguration, &out.PeerTrafficConfiguration
+ *out = new(ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ProvisioningState != nil {
+ in, out := &in.ProvisioningState, &out.ProvisioningState
+ *out = new(ManagedEnvironment_Properties_ProvisioningState_STATUS)
+ **out = **in
+ }
+ if in.StaticIp != nil {
+ in, out := &in.StaticIp, &out.StaticIp
+ *out = new(string)
+ **out = **in
+ }
+ 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.VnetConfiguration != nil {
+ in, out := &in.VnetConfiguration, &out.VnetConfiguration
+ *out = new(VnetConfiguration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.WorkloadProfiles != nil {
+ in, out := &in.WorkloadProfiles, &out.WorkloadProfiles
+ *out = make([]WorkloadProfile_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ZoneRedundant != nil {
+ in, out := &in.ZoneRedundant, &out.ZoneRedundant
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_STATUS.
+func (in *ManagedEnvironment_STATUS) DeepCopy() *ManagedEnvironment_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_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 *ManagedEnvironment_Spec) DeepCopyInto(out *ManagedEnvironment_Spec) {
+ *out = *in
+ if in.AppLogsConfiguration != nil {
+ in, out := &in.AppLogsConfiguration, &out.AppLogsConfiguration
+ *out = new(AppLogsConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.CustomDomainConfiguration != nil {
+ in, out := &in.CustomDomainConfiguration, &out.CustomDomainConfiguration
+ *out = new(CustomDomainConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.DaprAIConnectionString != nil {
+ in, out := &in.DaprAIConnectionString, &out.DaprAIConnectionString
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+ if in.DaprAIInstrumentationKey != nil {
+ in, out := &in.DaprAIInstrumentationKey, &out.DaprAIInstrumentationKey
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+ if in.InfrastructureResourceGroup != nil {
+ in, out := &in.InfrastructureResourceGroup, &out.InfrastructureResourceGroup
+ *out = new(string)
+ **out = **in
+ }
+ if in.Kind != nil {
+ in, out := &in.Kind, &out.Kind
+ *out = new(string)
+ **out = **in
+ }
+ if in.Location != nil {
+ in, out := &in.Location, &out.Location
+ *out = new(string)
+ **out = **in
+ }
+ if in.OperatorSpec != nil {
+ in, out := &in.OperatorSpec, &out.OperatorSpec
+ *out = new(ManagedEnvironmentOperatorSpec)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Owner != nil {
+ in, out := &in.Owner, &out.Owner
+ *out = new(genruntime.KnownResourceReference)
+ **out = **in
+ }
+ if in.PeerAuthentication != nil {
+ in, out := &in.PeerAuthentication, &out.PeerAuthentication
+ *out = new(ManagedEnvironment_Properties_PeerAuthentication_Spec)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.PeerTrafficConfiguration != nil {
+ in, out := &in.PeerTrafficConfiguration, &out.PeerTrafficConfiguration
+ *out = new(ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec)
+ (*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.VnetConfiguration != nil {
+ in, out := &in.VnetConfiguration, &out.VnetConfiguration
+ *out = new(VnetConfiguration)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.WorkloadProfiles != nil {
+ in, out := &in.WorkloadProfiles, &out.WorkloadProfiles
+ *out = make([]WorkloadProfile, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.ZoneRedundant != nil {
+ in, out := &in.ZoneRedundant, &out.ZoneRedundant
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedEnvironment_Spec.
+func (in *ManagedEnvironment_Spec) DeepCopy() *ManagedEnvironment_Spec {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedEnvironment_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 *ManagedServiceIdentity) DeepCopyInto(out *ManagedServiceIdentity) {
+ *out = *in
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(ManagedServiceIdentityType)
+ **out = **in
+ }
+ if in.UserAssignedIdentities != nil {
+ in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities
+ *out = make([]UserAssignedIdentityDetails, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedServiceIdentity.
+func (in *ManagedServiceIdentity) DeepCopy() *ManagedServiceIdentity {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedServiceIdentity)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ManagedServiceIdentity_STATUS) DeepCopyInto(out *ManagedServiceIdentity_STATUS) {
+ *out = *in
+ if in.PrincipalId != nil {
+ in, out := &in.PrincipalId, &out.PrincipalId
+ *out = new(string)
+ **out = **in
+ }
+ if in.TenantId != nil {
+ in, out := &in.TenantId, &out.TenantId
+ *out = new(string)
+ **out = **in
+ }
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(ManagedServiceIdentityType_STATUS)
+ **out = **in
+ }
+ if in.UserAssignedIdentities != nil {
+ in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities
+ *out = make(map[string]UserAssignedIdentity_STATUS, len(*in))
+ for key, val := range *in {
+ (*out)[key] = *val.DeepCopy()
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedServiceIdentity_STATUS.
+func (in *ManagedServiceIdentity_STATUS) DeepCopy() *ManagedServiceIdentity_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ManagedServiceIdentity_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 *Mtls) DeepCopyInto(out *Mtls) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mtls.
+func (in *Mtls) DeepCopy() *Mtls {
+ if in == nil {
+ return nil
+ }
+ out := new(Mtls)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Mtls_STATUS) DeepCopyInto(out *Mtls_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mtls_STATUS.
+func (in *Mtls_STATUS) DeepCopy() *Mtls_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Mtls_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 *Nonce) DeepCopyInto(out *Nonce) {
+ *out = *in
+ if in.NonceExpirationInterval != nil {
+ in, out := &in.NonceExpirationInterval, &out.NonceExpirationInterval
+ *out = new(string)
+ **out = **in
+ }
+ if in.ValidateNonce != nil {
+ in, out := &in.ValidateNonce, &out.ValidateNonce
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Nonce.
+func (in *Nonce) DeepCopy() *Nonce {
+ if in == nil {
+ return nil
+ }
+ out := new(Nonce)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Nonce_STATUS) DeepCopyInto(out *Nonce_STATUS) {
+ *out = *in
+ if in.NonceExpirationInterval != nil {
+ in, out := &in.NonceExpirationInterval, &out.NonceExpirationInterval
+ *out = new(string)
+ **out = **in
+ }
+ if in.ValidateNonce != nil {
+ in, out := &in.ValidateNonce, &out.ValidateNonce
+ *out = new(bool)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Nonce_STATUS.
+func (in *Nonce_STATUS) DeepCopy() *Nonce_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Nonce_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 *OpenIdConnectClientCredential) DeepCopyInto(out *OpenIdConnectClientCredential) {
+ *out = *in
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Method != nil {
+ in, out := &in.Method, &out.Method
+ *out = new(OpenIdConnectClientCredential_Method)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectClientCredential.
+func (in *OpenIdConnectClientCredential) DeepCopy() *OpenIdConnectClientCredential {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectClientCredential)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *OpenIdConnectClientCredential_STATUS) DeepCopyInto(out *OpenIdConnectClientCredential_STATUS) {
+ *out = *in
+ if in.ClientSecretSettingName != nil {
+ in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Method != nil {
+ in, out := &in.Method, &out.Method
+ *out = new(OpenIdConnectClientCredential_Method_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectClientCredential_STATUS.
+func (in *OpenIdConnectClientCredential_STATUS) DeepCopy() *OpenIdConnectClientCredential_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectClientCredential_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 *OpenIdConnectConfig) DeepCopyInto(out *OpenIdConnectConfig) {
+ *out = *in
+ if in.AuthorizationEndpoint != nil {
+ in, out := &in.AuthorizationEndpoint, &out.AuthorizationEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.CertificationUri != nil {
+ in, out := &in.CertificationUri, &out.CertificationUri
+ *out = new(string)
+ **out = **in
+ }
+ if in.Issuer != nil {
+ in, out := &in.Issuer, &out.Issuer
+ *out = new(string)
+ **out = **in
+ }
+ if in.TokenEndpoint != nil {
+ in, out := &in.TokenEndpoint, &out.TokenEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.WellKnownOpenIdConfiguration != nil {
+ in, out := &in.WellKnownOpenIdConfiguration, &out.WellKnownOpenIdConfiguration
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectConfig.
+func (in *OpenIdConnectConfig) DeepCopy() *OpenIdConnectConfig {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectConfig)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *OpenIdConnectConfig_STATUS) DeepCopyInto(out *OpenIdConnectConfig_STATUS) {
+ *out = *in
+ if in.AuthorizationEndpoint != nil {
+ in, out := &in.AuthorizationEndpoint, &out.AuthorizationEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.CertificationUri != nil {
+ in, out := &in.CertificationUri, &out.CertificationUri
+ *out = new(string)
+ **out = **in
+ }
+ if in.Issuer != nil {
+ in, out := &in.Issuer, &out.Issuer
+ *out = new(string)
+ **out = **in
+ }
+ if in.TokenEndpoint != nil {
+ in, out := &in.TokenEndpoint, &out.TokenEndpoint
+ *out = new(string)
+ **out = **in
+ }
+ if in.WellKnownOpenIdConfiguration != nil {
+ in, out := &in.WellKnownOpenIdConfiguration, &out.WellKnownOpenIdConfiguration
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectConfig_STATUS.
+func (in *OpenIdConnectConfig_STATUS) DeepCopy() *OpenIdConnectConfig_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectConfig_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 *OpenIdConnectLogin) DeepCopyInto(out *OpenIdConnectLogin) {
+ *out = *in
+ if in.NameClaimType != nil {
+ in, out := &in.NameClaimType, &out.NameClaimType
+ *out = new(string)
+ **out = **in
+ }
+ if in.Scopes != nil {
+ in, out := &in.Scopes, &out.Scopes
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectLogin.
+func (in *OpenIdConnectLogin) DeepCopy() *OpenIdConnectLogin {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectLogin)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *OpenIdConnectLogin_STATUS) DeepCopyInto(out *OpenIdConnectLogin_STATUS) {
+ *out = *in
+ if in.NameClaimType != nil {
+ in, out := &in.NameClaimType, &out.NameClaimType
+ *out = new(string)
+ **out = **in
+ }
+ if in.Scopes != nil {
+ in, out := &in.Scopes, &out.Scopes
+ *out = make([]string, len(*in))
+ copy(*out, *in)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectLogin_STATUS.
+func (in *OpenIdConnectLogin_STATUS) DeepCopy() *OpenIdConnectLogin_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectLogin_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 *OpenIdConnectRegistration) DeepCopyInto(out *OpenIdConnectRegistration) {
+ *out = *in
+ if in.ClientCredential != nil {
+ in, out := &in.ClientCredential, &out.ClientCredential
+ *out = new(OpenIdConnectClientCredential)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.OpenIdConnectConfiguration != nil {
+ in, out := &in.OpenIdConnectConfiguration, &out.OpenIdConnectConfiguration
+ *out = new(OpenIdConnectConfig)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectRegistration.
+func (in *OpenIdConnectRegistration) DeepCopy() *OpenIdConnectRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *OpenIdConnectRegistration_STATUS) DeepCopyInto(out *OpenIdConnectRegistration_STATUS) {
+ *out = *in
+ if in.ClientCredential != nil {
+ in, out := &in.ClientCredential, &out.ClientCredential
+ *out = new(OpenIdConnectClientCredential_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.OpenIdConnectConfiguration != nil {
+ in, out := &in.OpenIdConnectConfiguration, &out.OpenIdConnectConfiguration
+ *out = new(OpenIdConnectConfig_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIdConnectRegistration_STATUS.
+func (in *OpenIdConnectRegistration_STATUS) DeepCopy() *OpenIdConnectRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(OpenIdConnectRegistration_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 *QueueScaleRule) DeepCopyInto(out *QueueScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.QueueLength != nil {
+ in, out := &in.QueueLength, &out.QueueLength
+ *out = new(int)
+ **out = **in
+ }
+ if in.QueueName != nil {
+ in, out := &in.QueueName, &out.QueueName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueScaleRule.
+func (in *QueueScaleRule) DeepCopy() *QueueScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(QueueScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *QueueScaleRule_STATUS) DeepCopyInto(out *QueueScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.QueueLength != nil {
+ in, out := &in.QueueLength, &out.QueueLength
+ *out = new(int)
+ **out = **in
+ }
+ if in.QueueName != nil {
+ in, out := &in.QueueName, &out.QueueName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueScaleRule_STATUS.
+func (in *QueueScaleRule_STATUS) DeepCopy() *QueueScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(QueueScaleRule_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 *RegistryCredentials) DeepCopyInto(out *RegistryCredentials) {
+ *out = *in
+ if in.IdentityReference != nil {
+ in, out := &in.IdentityReference, &out.IdentityReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.PasswordSecretRef != nil {
+ in, out := &in.PasswordSecretRef, &out.PasswordSecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.Server != nil {
+ in, out := &in.Server, &out.Server
+ *out = new(string)
+ **out = **in
+ }
+ if in.Username != nil {
+ in, out := &in.Username, &out.Username
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryCredentials.
+func (in *RegistryCredentials) DeepCopy() *RegistryCredentials {
+ if in == nil {
+ return nil
+ }
+ out := new(RegistryCredentials)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *RegistryCredentials_STATUS) DeepCopyInto(out *RegistryCredentials_STATUS) {
+ *out = *in
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(string)
+ **out = **in
+ }
+ if in.PasswordSecretRef != nil {
+ in, out := &in.PasswordSecretRef, &out.PasswordSecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.Server != nil {
+ in, out := &in.Server, &out.Server
+ *out = new(string)
+ **out = **in
+ }
+ if in.Username != nil {
+ in, out := &in.Username, &out.Username
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryCredentials_STATUS.
+func (in *RegistryCredentials_STATUS) DeepCopy() *RegistryCredentials_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(RegistryCredentials_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 *Scale) DeepCopyInto(out *Scale) {
+ *out = *in
+ if in.MaxReplicas != nil {
+ in, out := &in.MaxReplicas, &out.MaxReplicas
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinReplicas != nil {
+ in, out := &in.MinReplicas, &out.MinReplicas
+ *out = new(int)
+ **out = **in
+ }
+ if in.Rules != nil {
+ in, out := &in.Rules, &out.Rules
+ *out = make([]ScaleRule, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Scale.
+func (in *Scale) DeepCopy() *Scale {
+ if in == nil {
+ return nil
+ }
+ out := new(Scale)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ScaleRule) DeepCopyInto(out *ScaleRule) {
+ *out = *in
+ if in.AzureQueue != nil {
+ in, out := &in.AzureQueue, &out.AzureQueue
+ *out = new(QueueScaleRule)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Custom != nil {
+ in, out := &in.Custom, &out.Custom
+ *out = new(CustomScaleRule)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Http != nil {
+ in, out := &in.Http, &out.Http
+ *out = new(HttpScaleRule)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Tcp != nil {
+ in, out := &in.Tcp, &out.Tcp
+ *out = new(TcpScaleRule)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleRule.
+func (in *ScaleRule) DeepCopy() *ScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(ScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ScaleRuleAuth) DeepCopyInto(out *ScaleRuleAuth) {
+ *out = *in
+ if in.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.TriggerParameter != nil {
+ in, out := &in.TriggerParameter, &out.TriggerParameter
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleRuleAuth.
+func (in *ScaleRuleAuth) DeepCopy() *ScaleRuleAuth {
+ if in == nil {
+ return nil
+ }
+ out := new(ScaleRuleAuth)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ScaleRuleAuth_STATUS) DeepCopyInto(out *ScaleRuleAuth_STATUS) {
+ *out = *in
+ if in.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+ if in.TriggerParameter != nil {
+ in, out := &in.TriggerParameter, &out.TriggerParameter
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleRuleAuth_STATUS.
+func (in *ScaleRuleAuth_STATUS) DeepCopy() *ScaleRuleAuth_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ScaleRuleAuth_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 *ScaleRule_STATUS) DeepCopyInto(out *ScaleRule_STATUS) {
+ *out = *in
+ if in.AzureQueue != nil {
+ in, out := &in.AzureQueue, &out.AzureQueue
+ *out = new(QueueScaleRule_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Custom != nil {
+ in, out := &in.Custom, &out.Custom
+ *out = new(CustomScaleRule_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Http != nil {
+ in, out := &in.Http, &out.Http
+ *out = new(HttpScaleRule_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Tcp != nil {
+ in, out := &in.Tcp, &out.Tcp
+ *out = new(TcpScaleRule_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleRule_STATUS.
+func (in *ScaleRule_STATUS) DeepCopy() *ScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ScaleRule_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 *Scale_STATUS) DeepCopyInto(out *Scale_STATUS) {
+ *out = *in
+ if in.MaxReplicas != nil {
+ in, out := &in.MaxReplicas, &out.MaxReplicas
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinReplicas != nil {
+ in, out := &in.MinReplicas, &out.MinReplicas
+ *out = new(int)
+ **out = **in
+ }
+ if in.Rules != nil {
+ in, out := &in.Rules, &out.Rules
+ *out = make([]ScaleRule_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Scale_STATUS.
+func (in *Scale_STATUS) DeepCopy() *Scale_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Scale_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 *Secret) DeepCopyInto(out *Secret) {
+ *out = *in
+ if in.IdentityReference != nil {
+ in, out := &in.IdentityReference, &out.IdentityReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.KeyVaultUrl != nil {
+ in, out := &in.KeyVaultUrl, &out.KeyVaultUrl
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Value != nil {
+ in, out := &in.Value, &out.Value
+ *out = new(genruntime.SecretReference)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Secret.
+func (in *Secret) DeepCopy() *Secret {
+ if in == nil {
+ return nil
+ }
+ out := new(Secret)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *SecretVolumeItem) DeepCopyInto(out *SecretVolumeItem) {
+ *out = *in
+ if in.Path != nil {
+ in, out := &in.Path, &out.Path
+ *out = new(string)
+ **out = **in
+ }
+ if in.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretVolumeItem.
+func (in *SecretVolumeItem) DeepCopy() *SecretVolumeItem {
+ if in == nil {
+ return nil
+ }
+ out := new(SecretVolumeItem)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *SecretVolumeItem_STATUS) DeepCopyInto(out *SecretVolumeItem_STATUS) {
+ *out = *in
+ if in.Path != nil {
+ in, out := &in.Path, &out.Path
+ *out = new(string)
+ **out = **in
+ }
+ if in.SecretRef != nil {
+ in, out := &in.SecretRef, &out.SecretRef
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretVolumeItem_STATUS.
+func (in *SecretVolumeItem_STATUS) DeepCopy() *SecretVolumeItem_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(SecretVolumeItem_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 *Secret_STATUS) DeepCopyInto(out *Secret_STATUS) {
+ *out = *in
+ if in.Identity != nil {
+ in, out := &in.Identity, &out.Identity
+ *out = new(string)
+ **out = **in
+ }
+ if in.KeyVaultUrl != nil {
+ in, out := &in.KeyVaultUrl, &out.KeyVaultUrl
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Secret_STATUS.
+func (in *Secret_STATUS) DeepCopy() *Secret_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Secret_STATUS)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Service) DeepCopyInto(out *Service) {
+ *out = *in
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
+func (in *Service) DeepCopy() *Service {
+ if in == nil {
+ return nil
+ }
+ out := new(Service)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ServiceBind) DeepCopyInto(out *ServiceBind) {
+ *out = *in
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.ServiceReference != nil {
+ in, out := &in.ServiceReference, &out.ServiceReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBind.
+func (in *ServiceBind) DeepCopy() *ServiceBind {
+ if in == nil {
+ return nil
+ }
+ out := new(ServiceBind)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *ServiceBind_STATUS) DeepCopyInto(out *ServiceBind_STATUS) {
+ *out = *in
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.ServiceId != nil {
+ in, out := &in.ServiceId, &out.ServiceId
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBind_STATUS.
+func (in *ServiceBind_STATUS) DeepCopy() *ServiceBind_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(ServiceBind_STATUS)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Service_STATUS) DeepCopyInto(out *Service_STATUS) {
+ *out = *in
+ if in.Type != nil {
+ in, out := &in.Type, &out.Type
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service_STATUS.
+func (in *Service_STATUS) DeepCopy() *Service_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Service_STATUS)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *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 *TcpScaleRule) DeepCopyInto(out *TcpScaleRule) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *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 TcpScaleRule.
+func (in *TcpScaleRule) DeepCopy() *TcpScaleRule {
+ if in == nil {
+ return nil
+ }
+ out := new(TcpScaleRule)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TcpScaleRule_STATUS) DeepCopyInto(out *TcpScaleRule_STATUS) {
+ *out = *in
+ if in.Auth != nil {
+ in, out := &in.Auth, &out.Auth
+ *out = make([]ScaleRuleAuth_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.Metadata != nil {
+ in, out := &in.Metadata, &out.Metadata
+ *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 TcpScaleRule_STATUS.
+func (in *TcpScaleRule_STATUS) DeepCopy() *TcpScaleRule_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(TcpScaleRule_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 *Template) DeepCopyInto(out *Template) {
+ *out = *in
+ if in.Containers != nil {
+ in, out := &in.Containers, &out.Containers
+ *out = make([]Container, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.InitContainers != nil {
+ in, out := &in.InitContainers, &out.InitContainers
+ *out = make([]BaseContainer, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.RevisionSuffix != nil {
+ in, out := &in.RevisionSuffix, &out.RevisionSuffix
+ *out = new(string)
+ **out = **in
+ }
+ if in.Scale != nil {
+ in, out := &in.Scale, &out.Scale
+ *out = new(Scale)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ServiceBinds != nil {
+ in, out := &in.ServiceBinds, &out.ServiceBinds
+ *out = make([]ServiceBind, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.TerminationGracePeriodSeconds != nil {
+ in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.Volumes != nil {
+ in, out := &in.Volumes, &out.Volumes
+ *out = make([]Volume, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Template.
+func (in *Template) DeepCopy() *Template {
+ if in == nil {
+ return nil
+ }
+ out := new(Template)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *Template_STATUS) DeepCopyInto(out *Template_STATUS) {
+ *out = *in
+ if in.Containers != nil {
+ in, out := &in.Containers, &out.Containers
+ *out = make([]Container_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.InitContainers != nil {
+ in, out := &in.InitContainers, &out.InitContainers
+ *out = make([]BaseContainer_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.RevisionSuffix != nil {
+ in, out := &in.RevisionSuffix, &out.RevisionSuffix
+ *out = new(string)
+ **out = **in
+ }
+ if in.Scale != nil {
+ in, out := &in.Scale, &out.Scale
+ *out = new(Scale_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.ServiceBinds != nil {
+ in, out := &in.ServiceBinds, &out.ServiceBinds
+ *out = make([]ServiceBind_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.TerminationGracePeriodSeconds != nil {
+ in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
+ *out = new(int)
+ **out = **in
+ }
+ if in.Volumes != nil {
+ in, out := &in.Volumes, &out.Volumes
+ *out = make([]Volume_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Template_STATUS.
+func (in *Template_STATUS) DeepCopy() *Template_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Template_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 *TokenStore) DeepCopyInto(out *TokenStore) {
+ *out = *in
+ if in.AzureBlobStorage != nil {
+ in, out := &in.AzureBlobStorage, &out.AzureBlobStorage
+ *out = new(BlobStorageTokenStore)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.TokenRefreshExtensionHours != nil {
+ in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours
+ *out = new(float64)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenStore.
+func (in *TokenStore) DeepCopy() *TokenStore {
+ if in == nil {
+ return nil
+ }
+ out := new(TokenStore)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TokenStore_STATUS) DeepCopyInto(out *TokenStore_STATUS) {
+ *out = *in
+ if in.AzureBlobStorage != nil {
+ in, out := &in.AzureBlobStorage, &out.AzureBlobStorage
+ *out = new(BlobStorageTokenStore_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.TokenRefreshExtensionHours != nil {
+ in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours
+ *out = new(float64)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenStore_STATUS.
+func (in *TokenStore_STATUS) DeepCopy() *TokenStore_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(TokenStore_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 *TrafficWeight) DeepCopyInto(out *TrafficWeight) {
+ *out = *in
+ if in.Label != nil {
+ in, out := &in.Label, &out.Label
+ *out = new(string)
+ **out = **in
+ }
+ if in.LatestRevision != nil {
+ in, out := &in.LatestRevision, &out.LatestRevision
+ *out = new(bool)
+ **out = **in
+ }
+ if in.RevisionName != nil {
+ in, out := &in.RevisionName, &out.RevisionName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Weight != nil {
+ in, out := &in.Weight, &out.Weight
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficWeight.
+func (in *TrafficWeight) DeepCopy() *TrafficWeight {
+ if in == nil {
+ return nil
+ }
+ out := new(TrafficWeight)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TrafficWeight_STATUS) DeepCopyInto(out *TrafficWeight_STATUS) {
+ *out = *in
+ if in.Label != nil {
+ in, out := &in.Label, &out.Label
+ *out = new(string)
+ **out = **in
+ }
+ if in.LatestRevision != nil {
+ in, out := &in.LatestRevision, &out.LatestRevision
+ *out = new(bool)
+ **out = **in
+ }
+ if in.RevisionName != nil {
+ in, out := &in.RevisionName, &out.RevisionName
+ *out = new(string)
+ **out = **in
+ }
+ if in.Weight != nil {
+ in, out := &in.Weight, &out.Weight
+ *out = new(int)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficWeight_STATUS.
+func (in *TrafficWeight_STATUS) DeepCopy() *TrafficWeight_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(TrafficWeight_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 *Twitter) DeepCopyInto(out *Twitter) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(TwitterRegistration)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Twitter.
+func (in *Twitter) DeepCopy() *Twitter {
+ if in == nil {
+ return nil
+ }
+ out := new(Twitter)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TwitterRegistration) DeepCopyInto(out *TwitterRegistration) {
+ *out = *in
+ if in.ConsumerKey != nil {
+ in, out := &in.ConsumerKey, &out.ConsumerKey
+ *out = new(string)
+ **out = **in
+ }
+ if in.ConsumerSecretSettingName != nil {
+ in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwitterRegistration.
+func (in *TwitterRegistration) DeepCopy() *TwitterRegistration {
+ if in == nil {
+ return nil
+ }
+ out := new(TwitterRegistration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *TwitterRegistration_STATUS) DeepCopyInto(out *TwitterRegistration_STATUS) {
+ *out = *in
+ if in.ConsumerKey != nil {
+ in, out := &in.ConsumerKey, &out.ConsumerKey
+ *out = new(string)
+ **out = **in
+ }
+ if in.ConsumerSecretSettingName != nil {
+ in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwitterRegistration_STATUS.
+func (in *TwitterRegistration_STATUS) DeepCopy() *TwitterRegistration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(TwitterRegistration_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 *Twitter_STATUS) DeepCopyInto(out *Twitter_STATUS) {
+ *out = *in
+ if in.Enabled != nil {
+ in, out := &in.Enabled, &out.Enabled
+ *out = new(bool)
+ **out = **in
+ }
+ if in.Registration != nil {
+ in, out := &in.Registration, &out.Registration
+ *out = new(TwitterRegistration_STATUS)
+ (*in).DeepCopyInto(*out)
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Twitter_STATUS.
+func (in *Twitter_STATUS) DeepCopy() *Twitter_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Twitter_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 *UserAssignedIdentityDetails) DeepCopyInto(out *UserAssignedIdentityDetails) {
+ *out = *in
+ out.Reference = in.Reference
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentityDetails.
+func (in *UserAssignedIdentityDetails) DeepCopy() *UserAssignedIdentityDetails {
+ if in == nil {
+ return nil
+ }
+ out := new(UserAssignedIdentityDetails)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *UserAssignedIdentity_STATUS) DeepCopyInto(out *UserAssignedIdentity_STATUS) {
+ *out = *in
+ if in.ClientId != nil {
+ in, out := &in.ClientId, &out.ClientId
+ *out = new(string)
+ **out = **in
+ }
+ if in.PrincipalId != nil {
+ in, out := &in.PrincipalId, &out.PrincipalId
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentity_STATUS.
+func (in *UserAssignedIdentity_STATUS) DeepCopy() *UserAssignedIdentity_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(UserAssignedIdentity_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 *VnetConfiguration) DeepCopyInto(out *VnetConfiguration) {
+ *out = *in
+ if in.DockerBridgeCidr != nil {
+ in, out := &in.DockerBridgeCidr, &out.DockerBridgeCidr
+ *out = new(string)
+ **out = **in
+ }
+ if in.InfrastructureSubnetReference != nil {
+ in, out := &in.InfrastructureSubnetReference, &out.InfrastructureSubnetReference
+ *out = new(genruntime.ResourceReference)
+ **out = **in
+ }
+ if in.Internal != nil {
+ in, out := &in.Internal, &out.Internal
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PlatformReservedCidr != nil {
+ in, out := &in.PlatformReservedCidr, &out.PlatformReservedCidr
+ *out = new(string)
+ **out = **in
+ }
+ if in.PlatformReservedDnsIP != nil {
+ in, out := &in.PlatformReservedDnsIP, &out.PlatformReservedDnsIP
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetConfiguration.
+func (in *VnetConfiguration) DeepCopy() *VnetConfiguration {
+ if in == nil {
+ return nil
+ }
+ out := new(VnetConfiguration)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *VnetConfiguration_STATUS) DeepCopyInto(out *VnetConfiguration_STATUS) {
+ *out = *in
+ if in.DockerBridgeCidr != nil {
+ in, out := &in.DockerBridgeCidr, &out.DockerBridgeCidr
+ *out = new(string)
+ **out = **in
+ }
+ if in.InfrastructureSubnetId != nil {
+ in, out := &in.InfrastructureSubnetId, &out.InfrastructureSubnetId
+ *out = new(string)
+ **out = **in
+ }
+ if in.Internal != nil {
+ in, out := &in.Internal, &out.Internal
+ *out = new(bool)
+ **out = **in
+ }
+ if in.PlatformReservedCidr != nil {
+ in, out := &in.PlatformReservedCidr, &out.PlatformReservedCidr
+ *out = new(string)
+ **out = **in
+ }
+ if in.PlatformReservedDnsIP != nil {
+ in, out := &in.PlatformReservedDnsIP, &out.PlatformReservedDnsIP
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetConfiguration_STATUS.
+func (in *VnetConfiguration_STATUS) DeepCopy() *VnetConfiguration_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(VnetConfiguration_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 *Volume) DeepCopyInto(out *Volume) {
+ *out = *in
+ if in.MountOptions != nil {
+ in, out := &in.MountOptions, &out.MountOptions
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]SecretVolumeItem, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.StorageName != nil {
+ in, out := &in.StorageName, &out.StorageName
+ *out = new(string)
+ **out = **in
+ }
+ if in.StorageType != nil {
+ in, out := &in.StorageType, &out.StorageType
+ *out = new(Volume_StorageType)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume.
+func (in *Volume) DeepCopy() *Volume {
+ if in == nil {
+ return nil
+ }
+ out := new(Volume)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *VolumeMount) DeepCopyInto(out *VolumeMount) {
+ *out = *in
+ if in.MountPath != nil {
+ in, out := &in.MountPath, &out.MountPath
+ *out = new(string)
+ **out = **in
+ }
+ if in.SubPath != nil {
+ in, out := &in.SubPath, &out.SubPath
+ *out = new(string)
+ **out = **in
+ }
+ if in.VolumeName != nil {
+ in, out := &in.VolumeName, &out.VolumeName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeMount.
+func (in *VolumeMount) DeepCopy() *VolumeMount {
+ if in == nil {
+ return nil
+ }
+ out := new(VolumeMount)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *VolumeMount_STATUS) DeepCopyInto(out *VolumeMount_STATUS) {
+ *out = *in
+ if in.MountPath != nil {
+ in, out := &in.MountPath, &out.MountPath
+ *out = new(string)
+ **out = **in
+ }
+ if in.SubPath != nil {
+ in, out := &in.SubPath, &out.SubPath
+ *out = new(string)
+ **out = **in
+ }
+ if in.VolumeName != nil {
+ in, out := &in.VolumeName, &out.VolumeName
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeMount_STATUS.
+func (in *VolumeMount_STATUS) DeepCopy() *VolumeMount_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(VolumeMount_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 *Volume_STATUS) DeepCopyInto(out *Volume_STATUS) {
+ *out = *in
+ if in.MountOptions != nil {
+ in, out := &in.MountOptions, &out.MountOptions
+ *out = new(string)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.Secrets != nil {
+ in, out := &in.Secrets, &out.Secrets
+ *out = make([]SecretVolumeItem_STATUS, len(*in))
+ for i := range *in {
+ (*in)[i].DeepCopyInto(&(*out)[i])
+ }
+ }
+ if in.StorageName != nil {
+ in, out := &in.StorageName, &out.StorageName
+ *out = new(string)
+ **out = **in
+ }
+ if in.StorageType != nil {
+ in, out := &in.StorageType, &out.StorageType
+ *out = new(Volume_StorageType_STATUS)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume_STATUS.
+func (in *Volume_STATUS) DeepCopy() *Volume_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(Volume_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 *WorkloadProfile) DeepCopyInto(out *WorkloadProfile) {
+ *out = *in
+ if in.MaximumCount != nil {
+ in, out := &in.MaximumCount, &out.MaximumCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinimumCount != nil {
+ in, out := &in.MinimumCount, &out.MinimumCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.WorkloadProfileType != nil {
+ in, out := &in.WorkloadProfileType, &out.WorkloadProfileType
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadProfile.
+func (in *WorkloadProfile) DeepCopy() *WorkloadProfile {
+ if in == nil {
+ return nil
+ }
+ out := new(WorkloadProfile)
+ in.DeepCopyInto(out)
+ return out
+}
+
+// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
+func (in *WorkloadProfile_STATUS) DeepCopyInto(out *WorkloadProfile_STATUS) {
+ *out = *in
+ if in.MaximumCount != nil {
+ in, out := &in.MaximumCount, &out.MaximumCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.MinimumCount != nil {
+ in, out := &in.MinimumCount, &out.MinimumCount
+ *out = new(int)
+ **out = **in
+ }
+ if in.Name != nil {
+ in, out := &in.Name, &out.Name
+ *out = new(string)
+ **out = **in
+ }
+ if in.WorkloadProfileType != nil {
+ in, out := &in.WorkloadProfileType, &out.WorkloadProfileType
+ *out = new(string)
+ **out = **in
+ }
+}
+
+// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadProfile_STATUS.
+func (in *WorkloadProfile_STATUS) DeepCopy() *WorkloadProfile_STATUS {
+ if in == nil {
+ return nil
+ }
+ out := new(WorkloadProfile_STATUS)
+ in.DeepCopyInto(out)
+ return out
+}
diff --git a/v2/api/app/versions_matrix.md b/v2/api/app/versions_matrix.md
new file mode 100644
index 00000000000..d749b667bba
--- /dev/null
+++ b/v2/api/app/versions_matrix.md
@@ -0,0 +1,245 @@
+| Type Definitions in package "app" | v1api20240301 |
+|--------------------------------------------------------------------------|---------------|
+| APIVersion | v1api20240301 |
+| AllowedAudiencesValidation | v1api20240301 |
+| AllowedAudiencesValidation_STATUS | v1api20240301 |
+| AllowedPrincipals | v1api20240301 |
+| AllowedPrincipals_STATUS | v1api20240301 |
+| AppLogsConfiguration | v1api20240301 |
+| AppLogsConfiguration_STATUS | v1api20240301 |
+| AppRegistration | v1api20240301 |
+| AppRegistration_STATUS | v1api20240301 |
+| Apple | v1api20240301 |
+| AppleRegistration | v1api20240301 |
+| AppleRegistration_STATUS | v1api20240301 |
+| Apple_STATUS | v1api20240301 |
+| AuthConfig | v1api20240301 |
+| AuthConfig_STATUS | v1api20240301 |
+| AuthConfig_Spec | v1api20240301 |
+| AuthPlatform | v1api20240301 |
+| AuthPlatform_STATUS | v1api20240301 |
+| AzureActiveDirectory | v1api20240301 |
+| AzureActiveDirectoryLogin | v1api20240301 |
+| AzureActiveDirectoryLogin_STATUS | v1api20240301 |
+| AzureActiveDirectoryRegistration | v1api20240301 |
+| AzureActiveDirectoryRegistration_STATUS | v1api20240301 |
+| AzureActiveDirectoryValidation | v1api20240301 |
+| AzureActiveDirectoryValidation_STATUS | v1api20240301 |
+| AzureActiveDirectory_STATUS | v1api20240301 |
+| AzureStaticWebApps | v1api20240301 |
+| AzureStaticWebAppsRegistration | v1api20240301 |
+| AzureStaticWebAppsRegistration_STATUS | v1api20240301 |
+| AzureStaticWebApps_STATUS | v1api20240301 |
+| BaseContainer | v1api20240301 |
+| BaseContainer_STATUS | v1api20240301 |
+| BlobStorageTokenStore | v1api20240301 |
+| BlobStorageTokenStore_STATUS | v1api20240301 |
+| ClientRegistration | v1api20240301 |
+| ClientRegistration_STATUS | v1api20240301 |
+| Configuration | v1api20240301 |
+| Configuration_ActiveRevisionsMode | v1api20240301 |
+| Configuration_ActiveRevisionsMode_STATUS | v1api20240301 |
+| Configuration_STATUS | v1api20240301 |
+| Container | v1api20240301 |
+| ContainerApp | v1api20240301 |
+| ContainerAppProbe | v1api20240301 |
+| ContainerAppProbe_HttpGet | v1api20240301 |
+| ContainerAppProbe_HttpGet_HttpHeaders | v1api20240301 |
+| ContainerAppProbe_HttpGet_HttpHeaders_STATUS | v1api20240301 |
+| ContainerAppProbe_HttpGet_STATUS | v1api20240301 |
+| ContainerAppProbe_HttpGet_Scheme | v1api20240301 |
+| ContainerAppProbe_HttpGet_Scheme_STATUS | v1api20240301 |
+| ContainerAppProbe_STATUS | v1api20240301 |
+| ContainerAppProbe_TcpSocket | v1api20240301 |
+| ContainerAppProbe_TcpSocket_STATUS | v1api20240301 |
+| ContainerAppProbe_Type | v1api20240301 |
+| ContainerAppProbe_Type_STATUS | v1api20240301 |
+| ContainerApp_Properties_ProvisioningState_STATUS | v1api20240301 |
+| ContainerApp_Properties_STATUS | v1api20240301 |
+| ContainerApp_Properties_Spec | v1api20240301 |
+| ContainerApp_STATUS | v1api20240301 |
+| ContainerApp_Spec | v1api20240301 |
+| ContainerApps_AuthConfig_Properties_STATUS | v1api20240301 |
+| ContainerApps_AuthConfig_Properties_Spec | v1api20240301 |
+| ContainerResources | v1api20240301 |
+| ContainerResources_STATUS | v1api20240301 |
+| Container_STATUS | v1api20240301 |
+| CookieExpiration | v1api20240301 |
+| CookieExpiration_Convention | v1api20240301 |
+| CookieExpiration_Convention_STATUS | v1api20240301 |
+| CookieExpiration_STATUS | v1api20240301 |
+| CorsPolicy | v1api20240301 |
+| CorsPolicy_STATUS | v1api20240301 |
+| CustomDomain | v1api20240301 |
+| CustomDomainConfiguration | v1api20240301 |
+| CustomDomainConfiguration_STATUS | v1api20240301 |
+| CustomDomain_BindingType | v1api20240301 |
+| CustomDomain_BindingType_STATUS | v1api20240301 |
+| CustomDomain_STATUS | v1api20240301 |
+| CustomOpenIdConnectProvider | v1api20240301 |
+| CustomOpenIdConnectProvider_STATUS | v1api20240301 |
+| CustomScaleRule | v1api20240301 |
+| CustomScaleRule_STATUS | v1api20240301 |
+| Dapr | v1api20240301 |
+| DaprConfiguration_STATUS | v1api20240301 |
+| Dapr_AppProtocol | v1api20240301 |
+| Dapr_AppProtocol_STATUS | v1api20240301 |
+| Dapr_LogLevel | v1api20240301 |
+| Dapr_LogLevel_STATUS | v1api20240301 |
+| Dapr_STATUS | v1api20240301 |
+| DefaultAuthorizationPolicy | v1api20240301 |
+| DefaultAuthorizationPolicy_STATUS | v1api20240301 |
+| EncryptionSettings | v1api20240301 |
+| EncryptionSettings_STATUS | v1api20240301 |
+| EnvironmentVar | v1api20240301 |
+| EnvironmentVar_STATUS | v1api20240301 |
+| ExtendedLocation | v1api20240301 |
+| ExtendedLocationType | v1api20240301 |
+| ExtendedLocationType_STATUS | v1api20240301 |
+| ExtendedLocation_STATUS | v1api20240301 |
+| Facebook | v1api20240301 |
+| Facebook_STATUS | v1api20240301 |
+| ForwardProxy | v1api20240301 |
+| ForwardProxy_Convention | v1api20240301 |
+| ForwardProxy_Convention_STATUS | v1api20240301 |
+| ForwardProxy_STATUS | v1api20240301 |
+| GitHub | v1api20240301 |
+| GitHub_STATUS | v1api20240301 |
+| GlobalValidation | v1api20240301 |
+| GlobalValidation_STATUS | v1api20240301 |
+| GlobalValidation_UnauthenticatedClientAction | v1api20240301 |
+| GlobalValidation_UnauthenticatedClientAction_STATUS | v1api20240301 |
+| Google | v1api20240301 |
+| Google_STATUS | v1api20240301 |
+| HttpScaleRule | v1api20240301 |
+| HttpScaleRule_STATUS | v1api20240301 |
+| HttpSettings | v1api20240301 |
+| HttpSettingsRoutes | v1api20240301 |
+| HttpSettingsRoutes_STATUS | v1api20240301 |
+| HttpSettings_STATUS | v1api20240301 |
+| IdentityProviders | v1api20240301 |
+| IdentityProviders_STATUS | v1api20240301 |
+| Ingress | v1api20240301 |
+| IngressPortMapping | v1api20240301 |
+| IngressPortMapping_STATUS | v1api20240301 |
+| Ingress_ClientCertificateMode | v1api20240301 |
+| Ingress_ClientCertificateMode_STATUS | v1api20240301 |
+| Ingress_STATUS | v1api20240301 |
+| Ingress_StickySessions | v1api20240301 |
+| Ingress_StickySessions_Affinity | v1api20240301 |
+| Ingress_StickySessions_Affinity_STATUS | v1api20240301 |
+| Ingress_StickySessions_STATUS | v1api20240301 |
+| Ingress_Transport | v1api20240301 |
+| Ingress_Transport_STATUS | v1api20240301 |
+| IpSecurityRestrictionRule | v1api20240301 |
+| IpSecurityRestrictionRule_Action | v1api20240301 |
+| IpSecurityRestrictionRule_Action_STATUS | v1api20240301 |
+| IpSecurityRestrictionRule_STATUS | v1api20240301 |
+| Job | v1api20240301 |
+| JobConfiguration | v1api20240301 |
+| JobConfiguration_EventTriggerConfig | v1api20240301 |
+| JobConfiguration_EventTriggerConfig_STATUS | v1api20240301 |
+| JobConfiguration_ManualTriggerConfig | v1api20240301 |
+| JobConfiguration_ManualTriggerConfig_STATUS | v1api20240301 |
+| JobConfiguration_STATUS | v1api20240301 |
+| JobConfiguration_ScheduleTriggerConfig | v1api20240301 |
+| JobConfiguration_ScheduleTriggerConfig_STATUS | v1api20240301 |
+| JobConfiguration_TriggerType | v1api20240301 |
+| JobConfiguration_TriggerType_STATUS | v1api20240301 |
+| JobScale | v1api20240301 |
+| JobScaleRule | v1api20240301 |
+| JobScaleRule_STATUS | v1api20240301 |
+| JobScale_STATUS | v1api20240301 |
+| JobTemplate | v1api20240301 |
+| JobTemplate_STATUS | v1api20240301 |
+| Job_Properties_ProvisioningState_STATUS | v1api20240301 |
+| Job_Properties_STATUS | v1api20240301 |
+| Job_Properties_Spec | v1api20240301 |
+| Job_STATUS | v1api20240301 |
+| Job_Spec | v1api20240301 |
+| JwtClaimChecks | v1api20240301 |
+| JwtClaimChecks_STATUS | v1api20240301 |
+| KedaConfiguration_STATUS | v1api20240301 |
+| LogAnalyticsConfiguration | v1api20240301 |
+| LogAnalyticsConfiguration_STATUS | v1api20240301 |
+| Login | v1api20240301 |
+| LoginRoutes | v1api20240301 |
+| LoginRoutes_STATUS | v1api20240301 |
+| LoginScopes | v1api20240301 |
+| LoginScopes_STATUS | v1api20240301 |
+| Login_STATUS | v1api20240301 |
+| ManagedEnvironment | v1api20240301 |
+| ManagedEnvironment_Properties_PeerAuthentication_STATUS | v1api20240301 |
+| ManagedEnvironment_Properties_PeerAuthentication_Spec | v1api20240301 |
+| ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_STATUS | v1api20240301 |
+| ManagedEnvironment_Properties_PeerTrafficConfiguration_Encryption_Spec | v1api20240301 |
+| ManagedEnvironment_Properties_PeerTrafficConfiguration_STATUS | v1api20240301 |
+| ManagedEnvironment_Properties_PeerTrafficConfiguration_Spec | v1api20240301 |
+| ManagedEnvironment_Properties_ProvisioningState_STATUS | v1api20240301 |
+| ManagedEnvironment_Properties_STATUS | v1api20240301 |
+| ManagedEnvironment_Properties_Spec | v1api20240301 |
+| ManagedEnvironment_STATUS | v1api20240301 |
+| ManagedEnvironment_Spec | v1api20240301 |
+| ManagedServiceIdentity | v1api20240301 |
+| ManagedServiceIdentityType | v1api20240301 |
+| ManagedServiceIdentityType_STATUS | v1api20240301 |
+| ManagedServiceIdentity_STATUS | v1api20240301 |
+| Mtls | v1api20240301 |
+| Mtls_STATUS | v1api20240301 |
+| Nonce | v1api20240301 |
+| Nonce_STATUS | v1api20240301 |
+| OpenIdConnectClientCredential | v1api20240301 |
+| OpenIdConnectClientCredential_Method | v1api20240301 |
+| OpenIdConnectClientCredential_Method_STATUS | v1api20240301 |
+| OpenIdConnectClientCredential_STATUS | v1api20240301 |
+| OpenIdConnectConfig | v1api20240301 |
+| OpenIdConnectConfig_STATUS | v1api20240301 |
+| OpenIdConnectLogin | v1api20240301 |
+| OpenIdConnectLogin_STATUS | v1api20240301 |
+| OpenIdConnectRegistration | v1api20240301 |
+| OpenIdConnectRegistration_STATUS | v1api20240301 |
+| QueueScaleRule | v1api20240301 |
+| QueueScaleRule_STATUS | v1api20240301 |
+| RegistryCredentials | v1api20240301 |
+| RegistryCredentials_STATUS | v1api20240301 |
+| Scale | v1api20240301 |
+| ScaleRule | v1api20240301 |
+| ScaleRuleAuth | v1api20240301 |
+| ScaleRuleAuth_STATUS | v1api20240301 |
+| ScaleRule_STATUS | v1api20240301 |
+| Scale_STATUS | v1api20240301 |
+| Secret | v1api20240301 |
+| SecretVolumeItem | v1api20240301 |
+| SecretVolumeItem_STATUS | v1api20240301 |
+| Secret_STATUS | v1api20240301 |
+| Service | v1api20240301 |
+| ServiceBind | v1api20240301 |
+| ServiceBind_STATUS | v1api20240301 |
+| Service_STATUS | v1api20240301 |
+| SystemData_CreatedByType_STATUS | v1api20240301 |
+| SystemData_LastModifiedByType_STATUS | v1api20240301 |
+| SystemData_STATUS | v1api20240301 |
+| TcpScaleRule | v1api20240301 |
+| TcpScaleRule_STATUS | v1api20240301 |
+| Template | v1api20240301 |
+| Template_STATUS | v1api20240301 |
+| TokenStore | v1api20240301 |
+| TokenStore_STATUS | v1api20240301 |
+| TrafficWeight | v1api20240301 |
+| TrafficWeight_STATUS | v1api20240301 |
+| Twitter | v1api20240301 |
+| TwitterRegistration | v1api20240301 |
+| TwitterRegistration_STATUS | v1api20240301 |
+| Twitter_STATUS | v1api20240301 |
+| UserAssignedIdentityDetails | v1api20240301 |
+| UserAssignedIdentity_STATUS | v1api20240301 |
+| VnetConfiguration | v1api20240301 |
+| VnetConfiguration_STATUS | v1api20240301 |
+| Volume | v1api20240301 |
+| VolumeMount | v1api20240301 |
+| VolumeMount_STATUS | v1api20240301 |
+| Volume_STATUS | v1api20240301 |
+| Volume_StorageType | v1api20240301 |
+| Volume_StorageType_STATUS | v1api20240301 |
+| WorkloadProfile | v1api20240301 |
+| WorkloadProfile_STATUS | v1api20240301 |
diff --git a/v2/azure-arm.yaml b/v2/azure-arm.yaml
index 4f5e6baeb02..6ee85c30473 100644
--- a/v2/azure-arm.yaml
+++ b/v2/azure-arm.yaml
@@ -1172,6 +1172,54 @@ objectModelConfiguration:
VirtualNetworkConfiguration:
SubnetResourceId:
$armReference: true
+ app:
+ 2024-03-01:
+ ContainerApp:
+ $export: true
+ $supportedFrom: v2.12.0
+ $generatedConfigs:
+ EventStreamEndpoint: $.Status.EventStreamEndpoint
+ Fqdn: $.Status.LatestRevisionFqdn
+ ContainerApps_AuthConfig:
+ $exportAs: AuthConfig
+ $supportedFrom: v2.12.0
+ RegistryCredentials:
+ passwordSecretRef:
+ $isSecret: false
+ Identity:
+ $armReference: true
+ ServiceBind:
+ ServiceId:
+ $armReference: true
+ Secret:
+ Identity:
+ $armReference: true
+ ContainerApp_Spec:
+ ManagedBy:
+ $armReference: true
+ ContainerApp_Properties_Spec:
+ EnvironmentId:
+ $armReference: true
+ ManagedEnvironmentId:
+ $armReference: true
+ CustomDomain:
+ CertificateId:
+ $armReference: true
+ OpenIdConnectConfig:
+ TokenEndpoint:
+ $isSecret: false
+ ManagedEnvironment:
+ $export: true
+ $supportedFrom: v2.12.0
+ VnetConfiguration:
+ InfrastructureSubnetId:
+ $armReference: true
+ Job:
+ $export: true
+ $supportedFrom: v2.12.0
+ Job_Properties_Spec:
+ EnvironmentId:
+ $armReference: true
appconfiguration:
2022-05-01:
ConfigurationStore:
diff --git a/v2/internal/controllers/app_containerapp_20230301_test.go b/v2/internal/controllers/app_containerapp_20230301_test.go
new file mode 100644
index 00000000000..adcf198bf39
--- /dev/null
+++ b/v2/internal/controllers/app_containerapp_20230301_test.go
@@ -0,0 +1,127 @@
+/*
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT license.
+*/
+
+package controllers_test
+
+import (
+ "testing"
+
+ . "github.com/onsi/gomega"
+
+ app "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301"
+ resources "github.com/Azure/azure-service-operator/v2/api/resources/v1api20200601"
+ "github.com/Azure/azure-service-operator/v2/internal/testcommon"
+ "github.com/Azure/azure-service-operator/v2/internal/util/to"
+)
+
+func Test_App_ContainerApps_CRUD(t *testing.T) {
+ t.Parallel()
+
+ tc := globalTestContext.ForTest(t)
+
+ rg := tc.CreateTestResourceGroupAndWait()
+
+ managedEnv := newManagedEnvironment(tc, rg)
+ tc.CreateResourcesAndWait(managedEnv)
+
+ containerApp := newContainerApp(tc, managedEnv, rg)
+
+ tc.CreateResourceAndWait(containerApp)
+
+ tc.Expect(containerApp.Status.Id).ToNot(BeNil())
+ armId := *containerApp.Status.Id
+
+ old := containerApp.DeepCopy()
+ containerApp.Spec.Tags = map[string]string{"foo": "bar"}
+ tc.PatchResourceAndWait(old, containerApp)
+
+ tc.RunParallelSubtests(
+ testcommon.Subtest{
+ Name: "AuthConfig CRUD",
+ Test: func(tc *testcommon.KubePerTestContext) {
+ ContainerApps_AuthConfig_CRUD(tc, containerApp)
+ },
+ },
+ )
+
+ tc.DeleteResourceAndWait(containerApp)
+
+ // Ensure that the resource was really deleted in Azure
+ exists, _, err := tc.AzureClient.CheckExistenceWithGetByID(
+ tc.Ctx,
+ armId,
+ string(app.APIVersion_Value))
+ tc.Expect(err).ToNot(HaveOccurred())
+ tc.Expect(exists).To(BeFalse())
+}
+
+func ContainerApps_AuthConfig_CRUD(tc *testcommon.KubePerTestContext, containerApp *app.ContainerApp) {
+ authConfig := &app.AuthConfig{
+ ObjectMeta: tc.MakeObjectMetaWithName("current"),
+ Spec: app.AuthConfig_Spec{
+ HttpSettings: &app.HttpSettings{
+ RequireHttps: to.Ptr(true),
+ },
+ Owner: testcommon.AsOwner(containerApp),
+ },
+ }
+
+ tc.CreateResourceAndWait(authConfig)
+}
+
+func newContainerApp(tc *testcommon.KubePerTestContext, managedEnv *app.ManagedEnvironment, rg *resources.ResourceGroup) *app.ContainerApp {
+ containerApp := &app.ContainerApp{
+ ObjectMeta: tc.MakeObjectMeta("app"),
+ Spec: app.ContainerApp_Spec{
+ Configuration: &app.Configuration{
+ Ingress: &app.Ingress{
+ AllowInsecure: to.Ptr(false),
+ TargetPort: to.Ptr(80),
+ },
+ },
+ EnvironmentReference: tc.MakeReferenceFromResource(managedEnv),
+ Location: tc.AzureRegion,
+ Owner: testcommon.AsOwner(rg),
+ Template: &app.Template{
+ Containers: []app.Container{
+ {
+ Image: to.Ptr("nginx:latest"),
+ Name: to.Ptr("nginx"),
+ VolumeMounts: []app.VolumeMount{
+ {
+ MountPath: to.Ptr("/usr/share/nginx/html"),
+ VolumeName: to.Ptr("shared"),
+ },
+ },
+ },
+ },
+ InitContainers: []app.BaseContainer{
+ {
+ Args: []string{
+ "-c",
+ "echo Hello World",
+ },
+ Command: []string{"/bin/sh"},
+ Image: to.Ptr("debian:latest"),
+ Name: to.Ptr("debian"),
+ VolumeMounts: []app.VolumeMount{
+ {
+ MountPath: to.Ptr("/shared"),
+ VolumeName: to.Ptr("shared"),
+ },
+ },
+ },
+ },
+ Volumes: []app.Volume{
+ {
+ Name: to.Ptr("shared"),
+ StorageType: to.Ptr(app.Volume_StorageType_EmptyDir),
+ },
+ },
+ },
+ },
+ }
+ return containerApp
+}
diff --git a/v2/internal/controllers/app_job_20230301_test.go b/v2/internal/controllers/app_job_20230301_test.go
new file mode 100644
index 00000000000..8125ae79984
--- /dev/null
+++ b/v2/internal/controllers/app_job_20230301_test.go
@@ -0,0 +1,73 @@
+/*
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT license.
+*/
+
+package controllers_test
+
+import (
+ "testing"
+
+ . "github.com/onsi/gomega"
+
+ app "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301"
+ "github.com/Azure/azure-service-operator/v2/internal/testcommon"
+ "github.com/Azure/azure-service-operator/v2/internal/util/to"
+)
+
+func Test_App_Job_CRUD(t *testing.T) {
+ t.Parallel()
+
+ tc := globalTestContext.ForTest(t)
+
+ rg := tc.CreateTestResourceGroupAndWait()
+
+ managedEnv := newManagedEnvironment(tc, rg)
+ tc.CreateResourcesAndWait(managedEnv)
+
+ job := &app.Job{
+ ObjectMeta: tc.MakeObjectMeta("job"),
+ Spec: app.Job_Spec{
+ Configuration: &app.JobConfiguration{
+ EventTriggerConfig: nil,
+ ManualTriggerConfig: &app.JobConfiguration_ManualTriggerConfig{
+ Parallelism: to.Ptr(1),
+ ReplicaCompletionCount: to.Ptr(1),
+ },
+ ReplicaRetryLimit: to.Ptr(10),
+ ReplicaTimeout: to.Ptr(10),
+ TriggerType: to.Ptr(app.JobConfiguration_TriggerType_Manual),
+ },
+ EnvironmentReference: tc.MakeReferenceFromResource(managedEnv),
+ Location: tc.AzureRegion,
+ Owner: testcommon.AsOwner(rg),
+ Template: &app.JobTemplate{
+ Containers: []app.Container{
+ {
+ Image: to.Ptr("mcr.microsoft.com/k8se/quickstart-jobs:latest"),
+ Name: to.Ptr("testcontainerappsjob"),
+ },
+ },
+ },
+ },
+ }
+
+ tc.CreateResourcesAndWait(job)
+
+ tc.Expect(job.Status.Id).ToNot(BeNil())
+ armId := *job.Status.Id
+
+ old := job.DeepCopy()
+ job.Spec.Tags = map[string]string{"foo": "bar"}
+ tc.PatchResourceAndWait(old, job)
+
+ tc.DeleteResourceAndWait(job)
+
+ // Ensure that the resource was really deleted in Azure
+ exists, _, err := tc.AzureClient.CheckExistenceWithGetByID(
+ tc.Ctx,
+ armId,
+ string(app.APIVersion_Value))
+ tc.Expect(err).ToNot(HaveOccurred())
+ tc.Expect(exists).To(BeFalse())
+}
diff --git a/v2/internal/controllers/app_managedenvironment_20230301_test.go b/v2/internal/controllers/app_managedenvironment_20230301_test.go
new file mode 100644
index 00000000000..0e3b0f81421
--- /dev/null
+++ b/v2/internal/controllers/app_managedenvironment_20230301_test.go
@@ -0,0 +1,64 @@
+/*
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT license.
+*/
+
+package controllers_test
+
+import (
+ "testing"
+
+ . "github.com/onsi/gomega"
+
+ app "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301"
+ resources "github.com/Azure/azure-service-operator/v2/api/resources/v1api20200601"
+ "github.com/Azure/azure-service-operator/v2/internal/testcommon"
+ "github.com/Azure/azure-service-operator/v2/internal/util/to"
+)
+
+func Test_App_ManagedEnvironment_CRUD(t *testing.T) {
+ t.Parallel()
+
+ tc := globalTestContext.ForTest(t)
+
+ rg := tc.CreateTestResourceGroupAndWait()
+
+ managedEnv := newManagedEnvironment(tc, rg)
+ tc.CreateResourcesAndWait(managedEnv)
+
+ tc.Expect(managedEnv.Status.Id).ToNot(BeNil())
+ armId := *managedEnv.Status.Id
+
+ old := managedEnv.DeepCopy()
+ managedEnv.Spec.Tags = map[string]string{"foo": "bar"}
+ tc.PatchResourceAndWait(old, managedEnv)
+
+ tc.DeleteResourceAndWait(managedEnv)
+
+ // Ensure that the resource was really deleted in Azure
+ exists, _, err := tc.AzureClient.CheckExistenceWithGetByID(
+ tc.Ctx,
+ armId,
+ string(app.APIVersion_Value))
+ tc.Expect(err).ToNot(HaveOccurred())
+ tc.Expect(exists).To(BeFalse())
+}
+
+func newManagedEnvironment(tc *testcommon.KubePerTestContext, rg *resources.ResourceGroup) *app.ManagedEnvironment {
+ managedEnv := &app.ManagedEnvironment{
+ ObjectMeta: tc.MakeObjectMeta("env"),
+ Spec: app.ManagedEnvironment_Spec{
+ Location: tc.AzureRegion,
+ Owner: testcommon.AsOwner(rg),
+ WorkloadProfiles: []app.WorkloadProfile{
+ {
+ MaximumCount: to.Ptr(2),
+ MinimumCount: to.Ptr(1),
+ Name: to.Ptr("profile1"),
+ WorkloadProfileType: to.Ptr("D4"),
+ },
+ },
+ },
+ }
+ return managedEnv
+}
diff --git a/v2/internal/controllers/controller_resources_gen.go b/v2/internal/controllers/controller_resources_gen.go
index 2bbfcc794a7..e73a404ff91 100644
--- a/v2/internal/controllers/controller_resources_gen.go
+++ b/v2/internal/controllers/controller_resources_gen.go
@@ -14,6 +14,9 @@ import (
apimanagement_v20220801s "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20220801/storage"
apimanagement_v20230501p "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20230501preview"
apimanagement_v20230501ps "github.com/Azure/azure-service-operator/v2/api/apimanagement/v1api20230501preview/storage"
+ app_customizations "github.com/Azure/azure-service-operator/v2/api/app/customizations"
+ app_v20240301 "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301"
+ app_v20240301s "github.com/Azure/azure-service-operator/v2/api/app/v1api20240301/storage"
appconfiguration_customizations "github.com/Azure/azure-service-operator/v2/api/appconfiguration/customizations"
appconfiguration_v20220501 "github.com/Azure/azure-service-operator/v2/api/appconfiguration/v1api20220501"
appconfiguration_v20220501s "github.com/Azure/azure-service-operator/v2/api/appconfiguration/v1api20220501/storage"
@@ -390,6 +393,68 @@ func getKnownStorageTypes() []*registration.StorageType {
},
},
})
+ result = append(result, ®istration.StorageType{Obj: new(app_v20240301s.AuthConfig)})
+ result = append(result, ®istration.StorageType{
+ Obj: new(app_v20240301s.ContainerApp),
+ Indexes: []registration.Index{
+ {
+ Key: ".spec.configuration.secrets.value",
+ Func: indexAppContainerAppValue,
+ },
+ },
+ Watches: []registration.Watch{
+ {
+ Type: &v1.Secret{},
+ MakeEventHandler: watchSecretsFactory([]string{".spec.configuration.secrets.value"}, &app_v20240301s.ContainerAppList{}),
+ },
+ },
+ })
+ result = append(result, ®istration.StorageType{
+ Obj: new(app_v20240301s.Job),
+ Indexes: []registration.Index{
+ {
+ Key: ".spec.configuration.secrets.value",
+ Func: indexAppJobValue,
+ },
+ },
+ Watches: []registration.Watch{
+ {
+ Type: &v1.Secret{},
+ MakeEventHandler: watchSecretsFactory([]string{".spec.configuration.secrets.value"}, &app_v20240301s.JobList{}),
+ },
+ },
+ })
+ result = append(result, ®istration.StorageType{
+ Obj: new(app_v20240301s.ManagedEnvironment),
+ Indexes: []registration.Index{
+ {
+ Key: ".spec.customDomainConfiguration.certificatePassword",
+ Func: indexAppManagedEnvironmentCertificatePassword,
+ },
+ {
+ Key: ".spec.customDomainConfiguration.certificateValue",
+ Func: indexAppManagedEnvironmentCertificateValue,
+ },
+ {
+ Key: ".spec.daprAIConnectionString",
+ Func: indexAppManagedEnvironmentDaprAIConnectionString,
+ },
+ {
+ Key: ".spec.daprAIInstrumentationKey",
+ Func: indexAppManagedEnvironmentDaprAIInstrumentationKey,
+ },
+ {
+ Key: ".spec.appLogsConfiguration.logAnalyticsConfiguration.sharedKey",
+ Func: indexAppManagedEnvironmentSharedKey,
+ },
+ },
+ Watches: []registration.Watch{
+ {
+ Type: &v1.Secret{},
+ MakeEventHandler: watchSecretsFactory([]string{".spec.appLogsConfiguration.logAnalyticsConfiguration.sharedKey", ".spec.customDomainConfiguration.certificatePassword", ".spec.customDomainConfiguration.certificateValue", ".spec.daprAIConnectionString", ".spec.daprAIInstrumentationKey"}, &app_v20240301s.ManagedEnvironmentList{}),
+ },
+ },
+ })
result = append(result, ®istration.StorageType{Obj: new(appconfiguration_v20220501s.ConfigurationStore)})
result = append(result, ®istration.StorageType{
Obj: new(authorization_v20220401s.RoleAssignment),
@@ -1460,6 +1525,18 @@ func getKnownTypes() []client.Object {
new(apimanagement_v20230501ps.ProductPolicy),
new(apimanagement_v20230501ps.Service),
new(apimanagement_v20230501ps.Subscription))
+ result = append(
+ result,
+ new(app_v20240301.AuthConfig),
+ new(app_v20240301.ContainerApp),
+ new(app_v20240301.Job),
+ new(app_v20240301.ManagedEnvironment))
+ result = append(
+ result,
+ new(app_v20240301s.AuthConfig),
+ new(app_v20240301s.ContainerApp),
+ new(app_v20240301s.Job),
+ new(app_v20240301s.ManagedEnvironment))
result = append(result, new(appconfiguration_v20220501.ConfigurationStore))
result = append(result, new(appconfiguration_v20220501s.ConfigurationStore))
result = append(result, new(authorization_v20200801p.RoleAssignment))
@@ -2335,6 +2412,8 @@ func createScheme() *runtime.Scheme {
_ = apimanagement_v20220801s.AddToScheme(scheme)
_ = apimanagement_v20230501p.AddToScheme(scheme)
_ = apimanagement_v20230501ps.AddToScheme(scheme)
+ _ = app_v20240301.AddToScheme(scheme)
+ _ = app_v20240301s.AddToScheme(scheme)
_ = appconfiguration_v20220501.AddToScheme(scheme)
_ = appconfiguration_v20220501s.AddToScheme(scheme)
_ = authorization_v20200801p.AddToScheme(scheme)
@@ -2523,6 +2602,10 @@ func getResourceExtensions() []genruntime.ResourceExtension {
result = append(result, &apimanagement_customizations.ProductPolicyExtension{})
result = append(result, &apimanagement_customizations.ServiceExtension{})
result = append(result, &apimanagement_customizations.SubscriptionExtension{})
+ result = append(result, &app_customizations.AuthConfigExtension{})
+ result = append(result, &app_customizations.ContainerAppExtension{})
+ result = append(result, &app_customizations.JobExtension{})
+ result = append(result, &app_customizations.ManagedEnvironmentExtension{})
result = append(result, &appconfiguration_customizations.ConfigurationStoreExtension{})
result = append(result, &authorization_customizations.RoleAssignmentExtension{})
result = append(result, &authorization_customizations.RoleDefinitionExtension{})
@@ -3008,6 +3091,116 @@ func indexApimanagementSubscriptionSecondaryKey(rawObj client.Object) []string {
return obj.Spec.SecondaryKey.Index()
}
+// indexAppContainerAppValue an index function for app_v20240301s.ContainerApp .spec.configuration.secrets.value
+func indexAppContainerAppValue(rawObj client.Object) []string {
+ obj, ok := rawObj.(*app_v20240301s.ContainerApp)
+ if !ok {
+ return nil
+ }
+ var result []string
+ if obj.Spec.Configuration == nil {
+ return nil
+ }
+ for _, secretItem := range obj.Spec.Configuration.Secrets {
+ if secretItem.Value == nil {
+ continue
+ }
+ result = append(result, secretItem.Value.Index()...)
+ }
+ return result
+}
+
+// indexAppJobValue an index function for app_v20240301s.Job .spec.configuration.secrets.value
+func indexAppJobValue(rawObj client.Object) []string {
+ obj, ok := rawObj.(*app_v20240301s.Job)
+ if !ok {
+ return nil
+ }
+ var result []string
+ if obj.Spec.Configuration == nil {
+ return nil
+ }
+ for _, secretItem := range obj.Spec.Configuration.Secrets {
+ if secretItem.Value == nil {
+ continue
+ }
+ result = append(result, secretItem.Value.Index()...)
+ }
+ return result
+}
+
+// indexAppManagedEnvironmentCertificatePassword an index function for app_v20240301s.ManagedEnvironment .spec.customDomainConfiguration.certificatePassword
+func indexAppManagedEnvironmentCertificatePassword(rawObj client.Object) []string {
+ obj, ok := rawObj.(*app_v20240301s.ManagedEnvironment)
+ if !ok {
+ return nil
+ }
+ if obj.Spec.CustomDomainConfiguration == nil {
+ return nil
+ }
+ if obj.Spec.CustomDomainConfiguration.CertificatePassword == nil {
+ return nil
+ }
+ return obj.Spec.CustomDomainConfiguration.CertificatePassword.Index()
+}
+
+// indexAppManagedEnvironmentCertificateValue an index function for app_v20240301s.ManagedEnvironment .spec.customDomainConfiguration.certificateValue
+func indexAppManagedEnvironmentCertificateValue(rawObj client.Object) []string {
+ obj, ok := rawObj.(*app_v20240301s.ManagedEnvironment)
+ if !ok {
+ return nil
+ }
+ if obj.Spec.CustomDomainConfiguration == nil {
+ return nil
+ }
+ if obj.Spec.CustomDomainConfiguration.CertificateValue == nil {
+ return nil
+ }
+ return obj.Spec.CustomDomainConfiguration.CertificateValue.Index()
+}
+
+// indexAppManagedEnvironmentDaprAIConnectionString an index function for app_v20240301s.ManagedEnvironment .spec.daprAIConnectionString
+func indexAppManagedEnvironmentDaprAIConnectionString(rawObj client.Object) []string {
+ obj, ok := rawObj.(*app_v20240301s.ManagedEnvironment)
+ if !ok {
+ return nil
+ }
+ if obj.Spec.DaprAIConnectionString == nil {
+ return nil
+ }
+ return obj.Spec.DaprAIConnectionString.Index()
+}
+
+// indexAppManagedEnvironmentDaprAIInstrumentationKey an index function for app_v20240301s.ManagedEnvironment .spec.daprAIInstrumentationKey
+func indexAppManagedEnvironmentDaprAIInstrumentationKey(rawObj client.Object) []string {
+ obj, ok := rawObj.(*app_v20240301s.ManagedEnvironment)
+ if !ok {
+ return nil
+ }
+ if obj.Spec.DaprAIInstrumentationKey == nil {
+ return nil
+ }
+ return obj.Spec.DaprAIInstrumentationKey.Index()
+}
+
+// indexAppManagedEnvironmentSharedKey an index function for app_v20240301s.ManagedEnvironment .spec.appLogsConfiguration.logAnalyticsConfiguration.sharedKey
+func indexAppManagedEnvironmentSharedKey(rawObj client.Object) []string {
+ obj, ok := rawObj.(*app_v20240301s.ManagedEnvironment)
+ if !ok {
+ return nil
+ }
+ if obj.Spec.AppLogsConfiguration == nil {
+ return nil
+ }
+ if obj.Spec.AppLogsConfiguration.LogAnalyticsConfiguration == nil {
+ return nil
+ }
+ if obj.Spec.AppLogsConfiguration.LogAnalyticsConfiguration.SharedKey == nil {
+ return nil
+ }
+ return obj.Spec.AppLogsConfiguration.LogAnalyticsConfiguration.SharedKey.Index()
+}
+
// indexAuthorizationRoleAssignmentPrincipalIdFromConfig an index function for authorization_v20220401s.RoleAssignment .spec.principalIdFromConfig
func indexAuthorizationRoleAssignmentPrincipalIdFromConfig(rawObj client.Object) []string {
obj, ok := rawObj.(*authorization_v20220401s.RoleAssignment)
diff --git a/v2/internal/controllers/recordings/Test_App_ContainerApps_CRUD.yaml b/v2/internal/controllers/recordings/Test_App_ContainerApps_CRUD.yaml
new file mode 100644
index 00000000000..07792b286d8
--- /dev/null
+++ b/v2/internal/controllers/recordings/Test_App_ContainerApps_CRUD.yaml
@@ -0,0 +1,4667 @@
+---
+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-fiwzcu","tags":{"CreatedAt":"2001-02-03T04:05:06Z"}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "93"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - fb0e77019e04df624092d3494f237a72faddc0238acb07d9e9f5e0f45002c07a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu?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-fiwzcu","name":"asotest-rg-fiwzcu","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-Ms-Ratelimit-Remaining-Subscription-Global-Writes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 81F66F06EABE42C9867A1B3363CEE8E7 Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:06Z'
+ status: 200 OK
+ code: 200
+ duration: 945.943125ms
+ - 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-fiwzcu?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-fiwzcu","name":"asotest-rg-fiwzcu","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-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7276DE6C127044C1BD54C9BC39E87454 Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:17Z'
+ status: 200 OK
+ code: 200
+ duration: 283.110959ms
+ - id: 2
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 167
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-env-xhzbsz","properties":{"workloadProfiles":[{"maximumCount":2,"minimumCount":1,"name":"profile1","workloadProfileType":"D4"}]}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "167"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - a7aac9d2b2cc66a283f385778c362a323a622a679e4869a1cdc555e5fc0f4eec
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1656
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","name":"asotest-env-xhzbsz","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T06:46:46.0309149","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T08:48:25.244711"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"livelypebble-cc11cd8b.westus2.azurecontainerapps.io","staticIp":"4.155.164.110","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/managedEnvironments/asotest-env-xhzbsz/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1656"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "99"
+ X-Msedge-Ref:
+ - 'Ref A: 23BF2A863D7F415499F4BABC5F866116 Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:24Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.658287333s
+ - id: 3
+ 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-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1656
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","name":"asotest-env-xhzbsz","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T06:46:46.0309149","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T08:48:25.244711"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"livelypebble-cc11cd8b.westus2.azurecontainerapps.io","staticIp":"4.155.164.110","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/managedEnvironments/asotest-env-xhzbsz/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1656"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 153ABB1EE1FF4B7994E819751AB8FE27 Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:27Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 925.082709ms
+ - id: 4
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 678
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-app-vseeno","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "678"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 55449eda8e3cb13f1fdcb7d8fdb9bd903da01a6b502f29bd7dfc24e1980bd949
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 3368
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerapps/asotest-app-vseeno","name":"asotest-app-vseeno","type":"Microsoft.App/containerApps","location":"West US 2","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":"InProgress","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","4.155.163.4"],"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":null,"ingress":{"fqdn":null,"external":false,"targetPort":80,"exposedPort":null,"transport":null,"traffic":null,"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":100,"service":null},"template":{"revisionSuffix":null,"terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":null,"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/39f3d0b2-80e7-44bd-8997-da67391fe902?api-version=2024-03-01&azureAsyncOperation=true&t=638718365179538876&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QdXpKcPW0OyDMynFBIfNUExIlqMKDUc6KydnPcP2TCTo8DKPiRA3AJU4Oc8OQN-zvO-rKU4CS-VD_EtJcltwgnQlNuNQiTNTEiUun_C0j7tMWotH4wRqNXOD3eDdzG8gKdJMjbTCYXd0ccQc4k4uPsXnDuRnaDgYfJTF7mcta4b_t1G0iuOOhcJTiX6uI3nF7KJBNwhPslNvYw8zBI4KyF4xP-YVK8rif3UiPYDcgwXmhrjjVEbU8KIod3B-lueki2jZ9bL8r6_hL-Wa4h9zASSmP4OX_1HxJ3FXoP_yqTD4-u71Pyl81FCV4YhRyoE5qOGLtY05z3XXAPKQLR0zfw&h=JDH3P5UgIKWQ1rc_EobtcKi87hJOJ_-RnH8tpmbo9V4
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "3368"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: 1BF187E6FAF941F3AAE8066C5BB151FE Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:34Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 832.839667ms
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/39f3d0b2-80e7-44bd-8997-da67391fe902?api-version=2024-03-01&azureAsyncOperation=true&t=638718365179538876&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QdXpKcPW0OyDMynFBIfNUExIlqMKDUc6KydnPcP2TCTo8DKPiRA3AJU4Oc8OQN-zvO-rKU4CS-VD_EtJcltwgnQlNuNQiTNTEiUun_C0j7tMWotH4wRqNXOD3eDdzG8gKdJMjbTCYXd0ccQc4k4uPsXnDuRnaDgYfJTF7mcta4b_t1G0iuOOhcJTiX6uI3nF7KJBNwhPslNvYw8zBI4KyF4xP-YVK8rif3UiPYDcgwXmhrjjVEbU8KIod3B-lueki2jZ9bL8r6_hL-Wa4h9zASSmP4OX_1HxJ3FXoP_yqTD4-u71Pyl81FCV4YhRyoE5qOGLtY05z3XXAPKQLR0zfw&h=JDH3P5UgIKWQ1rc_EobtcKi87hJOJ_-RnH8tpmbo9V4
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 279
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/39f3d0b2-80e7-44bd-8997-da67391fe902","name":"39f3d0b2-80e7-44bd-8997-da67391fe902","status":"InProgress","startTime":"2025-01-07T08:48:37.5750116"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "279"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 50A27D435C54470096098B981397EFB5 Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:44Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 809.258458ms
+ - 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:
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/39f3d0b2-80e7-44bd-8997-da67391fe902?api-version=2024-03-01&azureAsyncOperation=true&t=638718365179538876&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QdXpKcPW0OyDMynFBIfNUExIlqMKDUc6KydnPcP2TCTo8DKPiRA3AJU4Oc8OQN-zvO-rKU4CS-VD_EtJcltwgnQlNuNQiTNTEiUun_C0j7tMWotH4wRqNXOD3eDdzG8gKdJMjbTCYXd0ccQc4k4uPsXnDuRnaDgYfJTF7mcta4b_t1G0iuOOhcJTiX6uI3nF7KJBNwhPslNvYw8zBI4KyF4xP-YVK8rif3UiPYDcgwXmhrjjVEbU8KIod3B-lueki2jZ9bL8r6_hL-Wa4h9zASSmP4OX_1HxJ3FXoP_yqTD4-u71Pyl81FCV4YhRyoE5qOGLtY05z3XXAPKQLR0zfw&h=JDH3P5UgIKWQ1rc_EobtcKi87hJOJ_-RnH8tpmbo9V4
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 278
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/39f3d0b2-80e7-44bd-8997-da67391fe902","name":"39f3d0b2-80e7-44bd-8997-da67391fe902","status":"Succeeded","startTime":"2025-01-07T08:48:37.5750116"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "278"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F7B27B2F14FF4F2BA56C9B3443714B65 Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:50Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 723.577417ms
+ - id: 7
+ 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-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 4088
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerapps/asotest-app-vseeno","name":"asotest-app-vseeno","type":"Microsoft.App/containerApps","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T08:48:36.9850874","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T08:48:36.9850874"},"properties":{"provisioningState":"Succeeded","runningStatus":"Running","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","4.155.163.4"],"latestRevisionName":"asotest-app-vseeno--dc2qceu","latestReadyRevisionName":"asotest-app-vseeno--dc2qceu","latestRevisionFqdn":"asotest-app-vseeno--dc2qceu.internal.livelypebble-cc11cd8b.westus2.azurecontainerapps.io","customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":"Single","ingress":{"fqdn":"asotest-app-vseeno.internal.livelypebble-cc11cd8b.westus2.azurecontainerapps.io","external":false,"targetPort":80,"exposedPort":0,"transport":"Auto","traffic":[{"weight":100,"latestRevision":true}],"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":100,"service":null},"template":{"revisionSuffix":"","terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":{"minReplicas":null,"maxReplicas":10,"rules":null},"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/containerApps/asotest-app-vseeno/eventstream","delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "4088"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 329C2991AA954D0A9E79364C3FCF847D Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:51Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 978.000292ms
+ - id: 8
+ 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-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 4088
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerapps/asotest-app-vseeno","name":"asotest-app-vseeno","type":"Microsoft.App/containerApps","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T08:48:36.9850874","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T08:48:36.9850874"},"properties":{"provisioningState":"Succeeded","runningStatus":"Running","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","4.155.163.4"],"latestRevisionName":"asotest-app-vseeno--dc2qceu","latestReadyRevisionName":"asotest-app-vseeno--dc2qceu","latestRevisionFqdn":"asotest-app-vseeno--dc2qceu.internal.livelypebble-cc11cd8b.westus2.azurecontainerapps.io","customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":"Single","ingress":{"fqdn":"asotest-app-vseeno.internal.livelypebble-cc11cd8b.westus2.azurecontainerapps.io","external":false,"targetPort":80,"exposedPort":0,"transport":"Auto","traffic":[{"weight":100,"latestRevision":true}],"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":100,"service":null},"template":{"revisionSuffix":"","terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":{"minReplicas":null,"maxReplicas":10,"rules":null},"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/containerApps/asotest-app-vseeno/eventstream","delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "4088"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: ABA253795F6A495C83530CF56F7D0257 Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:53Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 981.471375ms
+ - id: 9
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 699
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-app-vseeno","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}},"tags":{"foo":"bar"}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "699"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 3b7e060bee6d007cc7faed240c49cf9f2eef018b070ec5c6600e01a69d8b0690
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 3389
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerapps/asotest-app-vseeno","name":"asotest-app-vseeno","type":"Microsoft.App/containerApps","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T08:48:36.9850874","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2001-02-03T04:05:06Z"},"properties":{"provisioningState":"InProgress","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","4.155.163.4"],"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":null,"ingress":{"fqdn":null,"external":false,"targetPort":80,"exposedPort":null,"transport":null,"traffic":null,"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":null,"service":null},"template":{"revisionSuffix":null,"terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":null,"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/59edf3c6-d615-4493-9da1-0a08ff70706d?api-version=2024-03-01&azureAsyncOperation=true&t=638718365424190947&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=zHrFs0vbnu9jbAra939zVAQBDt61e3pAXvTVzlDj4r95-xEHRHisiuBEOmZy_fCBp5TF5YpJ8_GptzqzIKycRPmmm0lu48RItR4bjotiOC-w75kckB2ZXJYDqP8C5VbrU3w_E_4Cnyx-80ohdtt8eGcZD6zOHxb-yVUY-ngmAldmLcJd0jsawrgIJUTZJMiwsXASp5lgu4rwCagxp4sRVJ8SQ2hqU8Mk_YYH_7SFKYn7sH0QGk8rpuz3PHb2wdTHBpcbW_lShxApGsa_MFK0GstkUdZdlFcxLNrzr3Q6yjHvzHLqfOZ-N6GjENjx-ZWqWbkg_9JBvFURIDRc8L3pIg&h=lLvdN2YHtdfL2MJ-sF4w15woaNX0bAMS1erIFjThG0U
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "3389"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: E872CB26166B437CA3DE9F7ED8B498E0 Ref B: MAA201060515017 Ref C: 2025-01-07T08:48:58Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 476.550583ms
+ - id: 10
+ 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.App/locations/westus2/containerappOperationStatuses/59edf3c6-d615-4493-9da1-0a08ff70706d?api-version=2024-03-01&azureAsyncOperation=true&t=638718365424190947&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=zHrFs0vbnu9jbAra939zVAQBDt61e3pAXvTVzlDj4r95-xEHRHisiuBEOmZy_fCBp5TF5YpJ8_GptzqzIKycRPmmm0lu48RItR4bjotiOC-w75kckB2ZXJYDqP8C5VbrU3w_E_4Cnyx-80ohdtt8eGcZD6zOHxb-yVUY-ngmAldmLcJd0jsawrgIJUTZJMiwsXASp5lgu4rwCagxp4sRVJ8SQ2hqU8Mk_YYH_7SFKYn7sH0QGk8rpuz3PHb2wdTHBpcbW_lShxApGsa_MFK0GstkUdZdlFcxLNrzr3Q6yjHvzHLqfOZ-N6GjENjx-ZWqWbkg_9JBvFURIDRc8L3pIg&h=lLvdN2YHtdfL2MJ-sF4w15woaNX0bAMS1erIFjThG0U
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 279
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/59edf3c6-d615-4493-9da1-0a08ff70706d","name":"59edf3c6-d615-4493-9da1-0a08ff70706d","status":"InProgress","startTime":"2025-01-07T08:49:00.3993511"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "279"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 176241E75C134C45B0E509574DB27DBF Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:07Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 813.406959ms
+ - id: 11
+ 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.App/locations/westus2/containerappOperationStatuses/59edf3c6-d615-4493-9da1-0a08ff70706d?api-version=2024-03-01&azureAsyncOperation=true&t=638718365424190947&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=zHrFs0vbnu9jbAra939zVAQBDt61e3pAXvTVzlDj4r95-xEHRHisiuBEOmZy_fCBp5TF5YpJ8_GptzqzIKycRPmmm0lu48RItR4bjotiOC-w75kckB2ZXJYDqP8C5VbrU3w_E_4Cnyx-80ohdtt8eGcZD6zOHxb-yVUY-ngmAldmLcJd0jsawrgIJUTZJMiwsXASp5lgu4rwCagxp4sRVJ8SQ2hqU8Mk_YYH_7SFKYn7sH0QGk8rpuz3PHb2wdTHBpcbW_lShxApGsa_MFK0GstkUdZdlFcxLNrzr3Q6yjHvzHLqfOZ-N6GjENjx-ZWqWbkg_9JBvFURIDRc8L3pIg&h=lLvdN2YHtdfL2MJ-sF4w15woaNX0bAMS1erIFjThG0U
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 279
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/59edf3c6-d615-4493-9da1-0a08ff70706d","name":"59edf3c6-d615-4493-9da1-0a08ff70706d","status":"InProgress","startTime":"2025-01-07T08:49:00.3993511"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "279"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 295D9AC271FB4A0BA6D8FCAADCA27D0A Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:11Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 750.514084ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/59edf3c6-d615-4493-9da1-0a08ff70706d?api-version=2024-03-01&azureAsyncOperation=true&t=638718365424190947&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=zHrFs0vbnu9jbAra939zVAQBDt61e3pAXvTVzlDj4r95-xEHRHisiuBEOmZy_fCBp5TF5YpJ8_GptzqzIKycRPmmm0lu48RItR4bjotiOC-w75kckB2ZXJYDqP8C5VbrU3w_E_4Cnyx-80ohdtt8eGcZD6zOHxb-yVUY-ngmAldmLcJd0jsawrgIJUTZJMiwsXASp5lgu4rwCagxp4sRVJ8SQ2hqU8Mk_YYH_7SFKYn7sH0QGk8rpuz3PHb2wdTHBpcbW_lShxApGsa_MFK0GstkUdZdlFcxLNrzr3Q6yjHvzHLqfOZ-N6GjENjx-ZWqWbkg_9JBvFURIDRc8L3pIg&h=lLvdN2YHtdfL2MJ-sF4w15woaNX0bAMS1erIFjThG0U
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 278
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/59edf3c6-d615-4493-9da1-0a08ff70706d","name":"59edf3c6-d615-4493-9da1-0a08ff70706d","status":"Succeeded","startTime":"2025-01-07T08:49:00.3993511"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "278"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4A608B1C092C481C9A0623EE58C7FBD8 Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:16Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 810.6505ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 4110
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerapps/asotest-app-vseeno","name":"asotest-app-vseeno","type":"Microsoft.App/containerApps","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T08:48:36.9850874","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T08:48:59.8408805"},"properties":{"provisioningState":"Succeeded","runningStatus":"Running","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","4.155.163.4"],"latestRevisionName":"asotest-app-vseeno--dc2qceu","latestReadyRevisionName":"asotest-app-vseeno--dc2qceu","latestRevisionFqdn":"asotest-app-vseeno--dc2qceu.internal.livelypebble-cc11cd8b.westus2.azurecontainerapps.io","customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":"Single","ingress":{"fqdn":"asotest-app-vseeno.internal.livelypebble-cc11cd8b.westus2.azurecontainerapps.io","external":false,"targetPort":80,"exposedPort":0,"transport":"Auto","traffic":[{"weight":100,"latestRevision":true}],"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":null,"service":null},"template":{"revisionSuffix":"","terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":{"minReplicas":null,"maxReplicas":10,"rules":null},"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/containerApps/asotest-app-vseeno/eventstream","delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "4110"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 002E78337E45472381BF6CBAF824F5BC Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:18Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 691.395541ms
+ - 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:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 4110
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerapps/asotest-app-vseeno","name":"asotest-app-vseeno","type":"Microsoft.App/containerApps","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T08:48:36.9850874","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T08:48:59.8408805"},"properties":{"provisioningState":"Succeeded","runningStatus":"Running","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","4.155.163.4"],"latestRevisionName":"asotest-app-vseeno--dc2qceu","latestReadyRevisionName":"asotest-app-vseeno--dc2qceu","latestRevisionFqdn":"asotest-app-vseeno--dc2qceu.internal.livelypebble-cc11cd8b.westus2.azurecontainerapps.io","customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":"Single","ingress":{"fqdn":"asotest-app-vseeno.internal.livelypebble-cc11cd8b.westus2.azurecontainerapps.io","external":false,"targetPort":80,"exposedPort":0,"transport":"Auto","traffic":[{"weight":100,"latestRevision":true}],"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":null,"service":null},"template":{"revisionSuffix":"","terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":{"minReplicas":null,"maxReplicas":10,"rules":null},"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/containerApps/asotest-app-vseeno/eventstream","delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "4110"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16498"
+ X-Msedge-Ref:
+ - 'Ref A: CF9BC61EE7574BB487CF1D50836E8808 Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:19Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 497.3125ms
+ - id: 15
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 70
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"name":"current","properties":{"httpSettings":{"requireHttps":true}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "70"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4e5136ae09790cc249f6f2d7562c94985d5b0205bcbf6a47ad13aa79dfd82739
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno/authConfigs/current?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 288
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno/authConfigs/current","name":"current","type":"Microsoft.App/containerapps/authconfigs","properties":{"httpSettings":{"requireHttps":true}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "288"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Writes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 6EE5E0B87A884BE1BA57434394CBB705 Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 529.592258ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno/authConfigs/current?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 312
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno/authConfigs/current","name":"current","type":"Microsoft.App/containerapps/authconfigs","properties":{"httpSettings":{"requireHttps":true},"encryptionSettings":{}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "312"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 78018717F38E46BB81A984C9C949280A Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:30Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 944.089625ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno?api-version=2024-03-01
+ method: DELETE
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationResults/95190c1f-c8a8-4da2-9bf7-b926fa4ed913?api-version=2024-03-01&t=638718365769642843&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=xObcarrag783_bBv2zDXmO7Bsp-RafmsQJU936fta6NvFiHzHWePoQQ_DvMGuqvPJPaJqbOP8piLt_ekBwyxsJ1QFxfqtSLfo9Ia760Iap8UPhd4SLkfjW4yhHAGhTQLQDicTyys00xKzmkBI_2DS9GiVKDowdh9MOMgMtiRDIo8cctfsedTRWUdUBw4a57jsXtfNHzfFMBiynRfnFtWwVyNNYtE0kDAfTdRUTonpVWaOJFpTKjbgp6npsJO44aA3Fvr3uP4rOkxMHd2gJBQTvNQ0VzYai5RlF1YdOsI1C02ytRoZl2Ww1M62clM8ACI750Ka6n7s0mUySkZLKIE0Q&h=Gkd-9xvTQJM_9h_MceaPI4oLLn_yZPjD0b1RBeZe6qY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Deletes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 37EA188990AF45B0B24B1218118D10CA Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:33Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 305.460876ms
+ - 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:
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationResults/95190c1f-c8a8-4da2-9bf7-b926fa4ed913?api-version=2024-03-01&t=638718365769642843&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=xObcarrag783_bBv2zDXmO7Bsp-RafmsQJU936fta6NvFiHzHWePoQQ_DvMGuqvPJPaJqbOP8piLt_ekBwyxsJ1QFxfqtSLfo9Ia760Iap8UPhd4SLkfjW4yhHAGhTQLQDicTyys00xKzmkBI_2DS9GiVKDowdh9MOMgMtiRDIo8cctfsedTRWUdUBw4a57jsXtfNHzfFMBiynRfnFtWwVyNNYtE0kDAfTdRUTonpVWaOJFpTKjbgp6npsJO44aA3Fvr3uP4rOkxMHd2gJBQTvNQ0VzYai5RlF1YdOsI1C02ytRoZl2Ww1M62clM8ACI750Ka6n7s0mUySkZLKIE0Q&h=Gkd-9xvTQJM_9h_MceaPI4oLLn_yZPjD0b1RBeZe6qY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: -1
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4D9803CC079E482690F2B24C3144261E Ref B: MAA201060515017 Ref C: 2025-01-07T08:49:55Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 204 No Content
+ code: 204
+ duration: 855.575084ms
+ - id: 19
+ 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-fiwzcu/providers/Microsoft.App/containerapps/asotest-app-vseeno?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 235
+ uncompressed: false
+ body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.App/containerApps/asotest-app-vseeno'' under resource group ''asotest-rg-fiwzcu'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}'
+ headers:
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "235"
+ 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: C4E459824076492996BAB26514F9E127 Ref B: MAA201060515017 Ref C: 2025-01-07T08:50:00Z'
+ status: 404 Not Found
+ code: 404
+ duration: 266.653208ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu?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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Deletes:
+ - "12000"
+ X-Msedge-Ref:
+ - 'Ref A: 54805B373C654723BF51460280ABFA2F Ref B: MAA201060515017 Ref C: 2025-01-07T08:50:00Z'
+ status: 202 Accepted
+ code: 202
+ duration: 795.004083ms
+ - 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/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366302749528&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=mnQcqFlXRDpIKNz8g9ZFlJZduZpbwbrFsboB4oj5MXTvTACqmDMyu0h355fngH-pZKlY_WzDw4FYe3g69sSrgqOZXTUBymRAfmj-lwMcJKMxIycmfvQxYnPcJ6AJrvJNx0Bw8DTExsNnraBZ86kqy7r5GUPaWasrPBb9xdnwrEUAX70RS-dAK4OCU1FcFm0xiBkS5o-r-gsVdIc_6UWkyel10blyesUNr20ryl4CcC_TSCG7qCVQjMh-G567XCjBWUoY-XFfrpZMTtJ_VQRyAhvrX0byN0gCpA_MH4oxXwzjoBRZ1H2TP1-SveGKclgkfMgNIq7FSHbmeiN2L8ZJLQ&h=MgyjcizQnN18bZ5OhmPPQvHEpKy68o4J2TD9akKL0CY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B529E1AAC91D4B27AB8B7990DB5396BD Ref B: MAA201060515017 Ref C: 2025-01-07T08:50:29Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.106785417s
+ - 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:
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366480345797&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=TfZjCZTrD-nLdCwVGTlm17BE4bc6Y76oKICUYKLIMiqmZqnDlAbrfCkRMh3l73dhKb9AQjnsa_P5VfD031_xH7s_S4cgiTmX9Fd5Vq941tJ0QW0fO6N5EN4DislAfBcPOz0fiKDxHPZbxI6UA2eDuIHZDhJD0s_rASnCfvlkoE04pcgmbAvxj9kgtc4CoYm_9gJJ2c6-wPOgx_nPdbFCuwRbZ9uZFGy359zT9-iBjH6OwGULSlc4oClmAQ0wA1-YmYIqBe1OiWh-1MZHmJrgDoKtgIYckuRji1w7L_yutldPO5N4FeBxkyr4gDVP3Hki-NGDsAo5jLZlr3wd3hJskQ&h=IaikcXFgwOxB3X5YE7MpU4D13uMal6-vu-hsZspdU9g
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 007AE2DB887E41ECA191C4609B1453BA Ref B: MAA201060515017 Ref C: 2025-01-07T08:50:46Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.144160875s
+ - id: 23
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366653490719&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Cflxst6c5nHETeAI2H1tzqshg5NG_yJ85WWCZTGNMX__aIxfKrtE1_jqDQSUN1clZEqnA-6gm96uI7lfx7Dn7nV-isukvComv1S-XxKLICiMe2ApnxPnmvqFoTDy-k2J00P-ZF6CLfvczlAFeieXpYIJC2l4JTU4DsdRXn8xqHAPtgJkTZUCpokhO3GvDXvGk37msPm8gN5dr2pVAt6dofccr_e7Lns3M0vP6LruXeoW4YRMRYoeK4pjTX3iAkAUaD4_HVAUb_gYwwyoWcw7I-YTpYrKm6uWRieM1YCAm-qO0_oqEiS38wZ2TjK_9sg16YlaWg1ojTKWohzA7We3Dg&h=U9rL9nGqtSU-mIgPWvw5d9iRcpk6B5ea0GLb8BY0s7Q
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 00833ABFC0C648DB92A35D32D23B0184 Ref B: MAA201060515017 Ref C: 2025-01-07T08:51:04Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.163414458s
+ - 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:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366828203987&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=lp7YGcYPdABmOqmDiI-lTSPVeaPFK3Vo7YtCxJndYFyippB345PO1nIH4zN8mhMGfyk2akMt-5gmlgk0t8MA1Odrwx4TZG4tFmPN8D6jwDXJAAZdnaimWDswPpXAXhB2BmnB8dZfXQyRumvYngBXx04gUC1krkr-x5makj1ieadESpVEtWPIAtPVXTlC1k3pthoCLfm4mHuvvHDRisXv2he2tMr-2Ug7L2VMmwYD0Mj9dZPQEIDAT_-DW27j4zwZ0OXCsUrW7m9ctP1raYjRrNIbcD2uS6VZyFx-os0Onn4YRZyChSWK2MBYxqzzk4rdRauUgheAtfBsTNP1XDqsHA&h=Ttp_P4Oor-5qcmDgXXHzRPNc2BL9nHZQUtcAgonPn0Y
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 76ED427573B84296B93448265A2A1BB2 Ref B: MAA201060515017 Ref C: 2025-01-07T08:51:21Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.075434375s
+ - 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:
+ - "4"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718367000162571&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=mZ8fqtluB2NufszhOOAzEn3n_RNwEkS3ZXC6Uab2QS2VzOMK5H0zkvROVxWIi1T2zoqzaRHmS5JO0SgH3vYhwfL86VXb35MPDCPUqLfuLM9ZxF35RYZ6_TorBIHr8jRnfOPHdvEXkzrm9k4jeVG_3GBv9RmaImZh3_pvzBEUG7kYStp8yxxfGgXQ_FQWxpKMsN1KJVVE1Tvw7ozSuxe5mx8liriM6rc1SRYg253jVXOHy3i_9DeKMwS6iPfL9MI89ShuOmKq8vl5iGuLPvCzEBit20PCpK3Chb0zV2ddP1yFO_yfpu1ugkrlYa1wFsKr-8rR1crkkSJ68SRQUNn1rw&h=wa5ToQCiCpxxs0blk8hyJS7jzMl48sU3Eqjnl_oWGsQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 75A44BBCAC004336911B1F811B3D9D6B Ref B: MAA201060515017 Ref C: 2025-01-07T08:51:38Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.098250791s
+ - 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:
+ - "5"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718367172400199&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=tE6DcZ_FLHTNSyMJRyGMwidm_IbaGTfx-WCiWJwF8Gx5A-kEOX4l997COL-tF-P4V-2az4ItyYhtFnpYHNIyOMnNr-PDYzgRtTOIPCgUR3rLrJ4d3AqI0fkVVwdDR3z6oXygxBjacq-6fHZHrJ_-taxJ81jEaIKORikhC3qfvWqyybXaf7HvBgpgjC1kgILv8IcjB8eAgnr6P7iY_uz8IzRnoBCMlPO5aloILA3w6d-EGtHhge6QzhbiWPZgOfRpt4gE05k87iBnlk6tNws3YaRDpNlRm9nIaP0_m_WzSKBmTW-ykGHIFAjemdpHCl1vZ4g-OBOpQKmBeztXcgsveg&h=50lV4_Lnlk_mmWfHjKKLrrTWigcSNilduhCLzmrS2Ak
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 180AACC23BA641FF81EA6EE4D6075024 Ref B: MAA201060515017 Ref C: 2025-01-07T08:51:56Z'
+ status: 202 Accepted
+ code: 202
+ duration: 137.142458ms
+ - 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:
+ - "6"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718367345418765&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=vpkzfOXcpv3M2OAOB7L7ApcgVMNNCq6TRfTFcnYIMajG0JQusDhrXSKF0U4-EZGD988dPaq7OfxFouaOOrTU08zGQ77N-MdBH0-g6aY5ri4sCo-TJQt8ThScGZW4-N3ggdkTpjKQZk_a_Z43sDZ31CcoJezV7lLITqnneSaMH8ejMfABz55ppfFK0umoYIABkmCnW_Ydr7_kN7J_s-F18b9V1E-tXdLjJBtnbrtKy4hgf5PPNLLfxiujGcNGjLbe3MktwHn2cgN3WCdZu6nEtdLCcxzEA4gpFk3Q6DlJ7o1-dly--cm4srL6xdbNK9UQNT1wmQX5z72pj9a2nR2Lfg&h=amYEff3jzz6nhP8DHT1li_D_FbN6hJAjv07FRWyuZKs
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2BE392A35EC64D63BDF03A4F5C64F5D2 Ref B: MAA201060515017 Ref C: 2025-01-07T08:52:13Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.188026875s
+ - 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:
+ - "7"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718367521057999&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=ZmWdRfHTyLvyIJaHCwmRpTM_BOkActPlZhqX_bBl5RabsnRzgm5KbLwDR9JxXd-1wQFIaL5fVvVQl4gPjQ8CxoloVJInNZJwhfQD3NJv6SzzOy9lt30-KppKfJT01PXh9Y7NSbfJtSa7EQuro1hcWvQ1_Kr2Ru80ocO4od1xMosVAbqkz21fU7Ojpg7DJ3dSrthLFLLReil3_vykmvTxeQBc1S0uPwln2tG4tA3xTST3qcITpUufRuDeTgbJtZtPvMjWUTZkdi_p_x4dXrjFM_8jFh-VYociqSUwW2jBu_-ZoQsQWQegBH1Ih7upla7gO139DpaKrMYXGlOXAjNATQ&h=BhnnxnoAzP4moLLlsgEnaJzR0NqoU5USInEX2YKt9Ic
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 571AC825A5A24735B128D36F8D45F34C Ref B: MAA201060515017 Ref C: 2025-01-07T08:52:31Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.128900583s
+ - 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:
+ - "8"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718367694332852&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=DUCaFQYBrI23EiYQkH8tA47yHApjkZy7QAtBfZk6vprF1xQWZV9ASljLCa1rGMxxs8Q0Iew3zQWns5tiY_bbkHqvHWXWnHHkgci4jiiq4uHrvFVEoFGZS90yH9B-3IGaW0rS75-2Yk1yvQgNHd_CvlRC0iXddMHkK0H4fDNGrKjTLNGMFWneNvln68sxHrRfm-lacqrXTfQPIutrEr3fVerDOUk3r76b1LiUwrltCVkYIVr8E0PZQ6RHgB3N5uGHQegrSjZaa4E7FJsaPGZ5m8O19-3oilT1dBvSvm5D7VouRkEcHn0mdjPJyv8g-cZh4ddoCQ-OpahtldT5OPQZ7w&h=egq_BZtNROxYRX6ajVi8LyyXZo44u2b5RvcdVZeS7Ew
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 950ED5CDCD7241FDBC14367A8BE969D0 Ref B: MAA201060515017 Ref C: 2025-01-07T08:52:48Z'
+ status: 202 Accepted
+ code: 202
+ duration: 245.391257ms
+ - 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:
+ - "9"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718367868502828&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Xz1tOCH9LLz_5Q9fcx37pRN6ranGki-G6avkKOe-CBAJMOLiLjrF7AGXX4PbCBkkJ3-kOmT6xJscSTnQIda4Y8ILoXDMBqEg90mPUAl50bR7AZa6Dp9xeXo5A4fkU44sZnDFHKzQ2A4byjt5UOOZFXmbu-hjaJIgXscQMtLGdFI8QzKxR4YWFK_Jk45pU4ZRyhadYAj_dbM40aUEImAbDovn87jMO4dM0GEGaldB2seGltd61dRtwl1XTcnEfSyg7iSo5GFeanpqvzq27QcKziJ2Ofs7KBnLmGSTChC2Wn1Mtz6qPc77etrNojvtMsv7BX6Uj6LJ3amoeSxM-Xp6aA&h=rrD3N1FDYEJ3SrWARHHtsDmf2FSeE12zQpMMzaSlC5Y
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D6B344CC91AA495B8FB86F563FB3B763 Ref B: MAA201060515017 Ref C: 2025-01-07T08:53:05Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.089480708s
+ - 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:
+ - "10"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718368048279141&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=uHOIxAK6i3Wrs1lx6BPtVoQFm_ocXUCtWSI0XEy4tFUWR8NfTvVg7FdDtq7GZKzpjjQvdziceoD9MO3iumMpeEVVlqPWINFz05jKiKeFbTkqPK9eJoK52CrYKPKhksRcsRPWvEKpY7dEDXdftp2ZeFq0YA6BhdT5xXPK2tBESlHGgy8bzx7BIDTd7H08nS9PVXurNF_zfgJbJTitOWLsg4WFCizSGbplPOJ9efiA8JSypfTse9LUyg0CGzq-JDfNXwjgiLP9q93NZAxFzKfVYuov7f8mmmP4xDnD3NfMlgK_VX6lLVelUqXeUQ6ohjocWWwsBg2hvxr2dc49F5bRAA&h=T_GLlMO0SnZqAeWpJiyqGakZjfb37AiHkhNQEngI9Vw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CC50099E87A240C99F265B47AAD6FED2 Ref B: MAA201060515017 Ref C: 2025-01-07T08:53:23Z'
+ status: 202 Accepted
+ code: 202
+ duration: 163.444375ms
+ - 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:
+ - "11"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718368220728611&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=jDrwgFqkkVGgZC-SaZfXPPyiCsBvBNOgA46xIHTYs4HxJ-k9jPuHjX8Og9Eouv_cH4tlvbKnzLR6xWVKCoezPUrVSt1md455Lx6SIZmfUcHfmnkE-zxkG5ucw0b16QhG0USzRrUFPsYqpBJIGhwJnpendWzFGvX7iw3wlgdDzauyDLvtgzut15e_Kmsg6744CKXgkb_z8WeiAGHiSFaWfCE2iKkKGNzw3j7MgZU9BdeZ5yLoONj389EIw3yxAaTBDM8LhFqVlzLM0zbilbQSEBZf8tUJ71zg_GS4rHUKaIBqF5kY5nyJOFuVXn9v0IMf0re_ll4FN123lZesdj1h2w&h=zETaGBDb-GaAXa_G0IO5n8wtfVmLgfm7edSNlV8tfu4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 6DD4F108155242119FB3DACBA4AAA001 Ref B: MAA201060515017 Ref C: 2025-01-07T08:53:41Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.09365575s
+ - 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:
+ - "12"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718368393073243&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=K6GcEGSc0uDdw-Vd3QV3NXYNpj5TMUZO5VOVu79Bpe6qgHQvRchMvmh3OH8G0g4vksKdkhqfk85dSAbL0747bFLixcErKCNoC_zjb5sP52m8VsriimQJ7y3mipn9qLb5-hDeyaScLR32dLxAcanVoZxl0q5xHTc9V4uAiYSMwjZbDi5Sp1-YSjDDfvfSuoQDjFOkobDw5Ado2SliPm5G7HwjTsl8CkYvq84jMQNNvafPEFR0iB30zaBwhmsVQ9C7W08gjqbsQ-Kp3alVolja4NYJzpqjCjugpuGXMar9La7AL0F389VraqGzbx3yfdeqR5myzizo4z3zkHQ28OUbeQ&h=iYV2gmVrPF2u8Fwx2ewCPbAGugxPSDUFIC5OqgmPkRo
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 200E9EF5108A4306A65909C03E26DE9B Ref B: MAA201060515017 Ref C: 2025-01-07T08:53:58Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.150683958s
+ - 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:
+ - "13"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718368566233362&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=zk_tdcDycBmjN6VlWqZQ31QHbUihckpB8HIIuZ3t40GNNrULWJ3mWrXw96Wf9FwbCUWvE1gozo9lb3ewdL7_fXcoFgofNrkeZ3MimxYHYgNLZHRKaAqqN-Xwa7WcsMgc61Xc5prJ1Gez-492LdobCULXnHnDLgA8bXyVRO-3wL9Z3-ohWiSB3y7L_Hjie-ZlaUkJYuOhnabcf2a2AjI6D5z9HpZyVUEnW35mYs6tuTtElMBlgE8Y8hwPx8o1YYiXRA6uUB5B_QdSMmu3ixcz-chUH5AkQa3yxBdQFihGeSSXLDX_sGPryw4-dFmEzBeC0EY2qxqoaxyc0DsRwaXYrA&h=6XwrbjVa9YI3Vt8NVW4Eq3kF_YvM0P32PjZC3HAiSGU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 92ED0498C52C4A16955E2FF38B8D668E Ref B: MAA201060515017 Ref C: 2025-01-07T08:54:15Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.143647916s
+ - 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:
+ - "14"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718368744227217&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Fh22TtxQIMZNPVQvbVja2bnwaufASlX7dio7WBojJ8Kjgu5FGOAocce85pSYZwI1SnYgSHV7UXng-F-DfQ2TCkLUElYKTlsCuS2S2APUm-XAW9sdqF4tuTKFMSipNuyKpzkqm4A_9gbnFwSM_mMu1Afl3GO8VQVnhpMIDo7j3pimvkGyU4cF-PyKh-M5trlDONypFLRmUzlAgex-JcXwhKM9YTGtHkpEWKkLl_CS9hTtdwkGsfwGDfH5dDzTHx2-WuJRn0xJdI-5MrrANVHwwYNiQ744JiAJDR1cZ1I0aktQS2jPMwOpQBC903bft2B9gmz7Fibi_PnvMXZEiHaR6A&h=1XFFXaYPxLuYQyBCpDfESUmruofXAlXwOe5rhnREBBU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D142DDCB00174E8AA9B056F9A6478C89 Ref B: MAA201060515017 Ref C: 2025-01-07T08:54:33Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.0913225s
+ - 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:
+ - "15"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718368916635873&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=g4dACqQN0DXb7EWKtnxVzPjZd0LDRD8qy1voWpaEHWAs85myuwTBIombDtGc68VCaYmc5gNIWB6apoY1iP763UHa5-0i_6nD_6Yf-HX0PwlKc_uVe8aHHCoGuVdLvjoJ5ZjY3wnwGgivmVEm46tdXrgL4-HLhRE-9VGNXUWFmWKNCN7q_eB4MKZtCyl0fvQ94Xek3XVe0Lb-Luk1mJWqjUUhoJSWNaAs85iNVl5hMA4oKdx6StCd1pPqK-mRiYhfPeIGKT5w9sf7YwOuXSVHpvKDiQfi_4Gt2Tna5ayjHxsjoPvlJRN8clGFfkxnFxHh3Rk42cwM8uu99swHuB9tLQ&h=s5S0ke6Uiepy3eUWf9mGXSAlpNT4vJJYDHiFAs0mjQc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 46787AEA14D149229DED95D44E307CED Ref B: MAA201060515017 Ref C: 2025-01-07T08:54:50Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.116365209s
+ - 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:
+ - "16"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718369088953776&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=RREp5d8JiyC2nwM0EGIWAPPBwrAqnyMUIUcxm-6ZgCk_NgMog-XSn3ShIJD6PRECLCWKP4eAv51WQ9ZoqIlkqdh-gxWfZiJ0K5ZD5jt2ozUySei5gV7vExNed-WETCvnjmzGwSykot2DEsp3pi5AhgQqqmcA7y0MBR4tQ4S1aLVb2VNH4i5eB2nard3bc1gYg5wiVaD6o5jv_dAA5LTLLdzsjWkOYAulRCSKvgBibjSZjwAKf55BWjtO9aPdXeu2WsfGyzwSqu6eVPFrMXb0spTgt-qkrq_xxEAqFnPVmsZfeJIpsRJjOzIj2LMKEWzgsqqcfFYyNSNBjG8L1UWFSQ&h=-BQ0AFL_76zKO-q0cvjb3ASTHc4bvJBoA4eE5ccEDK0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9AFE2CB6B07F4E5F911F0487C4C01454 Ref B: MAA201060515017 Ref C: 2025-01-07T08:55:07Z'
+ status: 202 Accepted
+ code: 202
+ duration: 181.833916ms
+ - 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:
+ - "17"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718369258463829&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=v1ny49hKcg8MGYcYm5FXw7rM5nnXEfXeAbSGX35kXsjz3f4GtJD4CqCOpPhVRnkV2TTVAdPTCmqiWKXxR8QfbJwG5ETLUOenIzqGSzNG9gIZWKzTOyKN2BTWG1PcI-0u4TIO0345L5RG3Clqxp_ZD_9qkMNFb00uUsBf-Gkrl0dpk0LIlXiOEp_5G_v4yI06ozFPzbeunUoZe6caPyrsp6Rc5bo8vrdjBwob-wn8n5Eb3ldC-vrQQ1wQ1MUNKnngdiTWGIFgYa2xwVD8wdRWvBFc5QPXt6byF_sN9ymeaTQtG7ZlOcPkyD05Ajl531q60uhBOpxF6lELDFxkdK_S3A&h=sYyZc0rFL6Cm9cLy5H-l_mnXJxkmolPjKXG8wDh3ojw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: DD75686CC3134BB7924553B7773FFE0C Ref B: MAA201060515017 Ref C: 2025-01-07T08:55:25Z'
+ status: 202 Accepted
+ code: 202
+ duration: 692.52875ms
+ - 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:
+ - "18"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718369430450539&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=z2oj4cCeLML2FbO5v2y05-k33BuEudyOI4RKoXjZQp-4FEMJElO0pWgOEQlTpkAvwAUBy6dqOll_LoLhXJHBVHKBb4sYJJLYIk78OJFOsc1IEIQL5DaDFviaDqcfE6x7FLVzs5wUhefZyTTDRh8VZ4Axapkd03SuKhGKS9mlXZKls0X-i4vHtVAkumY3gBhk_3YGy1aJ60vbgO1ZTYDb_m0FZLsAsN75LptfY96LU2gXmxyybfX42i7DnQ3T4UhWW3KRwkeZDkgM-cgsB95rWl0PfnUzpudh-J8_8-igRxbu1yg5-3J2onN7hK2s3eJN__n_QcGmIgHa1fOGqxyWpw&h=nzXszuzusb1l23s9S2h79NXTi-bZKQ1OhogthduCNJ0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: BF4A92D0BCC346908A56D3876CBC0C89 Ref B: MAA201060515017 Ref C: 2025-01-07T08:55:41Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.171928417s
+ - 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:
+ - "19"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718369597242600&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=WGkloQogNhD4ddZWq91bor5oSUTpX527pMhhvzxb2ybcEM-UMjDg3WEgo7jZa1KedzpEaQ9bVTsjtJNaAMtfVxp9eJ0IpRLL66jQB7TVYFpipT5SMWzBTLmLHNdhJWZQvQ0PBczdVgrm7a05L3Ysnlv3whJe7If49ZpBbJNLF0vhdwKX3uXH1Nvl2hKa0C08cHxjmSaLIiMSlUlH_UqEx1887Ttj0nbcO3Gi6JYZUOT0VN63sz_F2Gil65ujP7_Ie113dWySR7c549pNCBUzc-bTw6RQy0cFNid13tV-tdCf0NeP65nWkTlf0up1CsBTlP7SEkqGzdec9j0YqDy-qQ&h=pJoQGTbzepnE8aVTPMnIckJj_PA6QmX1zhvBr-qxI3w
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3F93095BDE40417F9DBDC704BA703536 Ref B: MAA201060515017 Ref C: 2025-01-07T08:55:59Z'
+ status: 202 Accepted
+ code: 202
+ duration: 515.798167ms
+ - 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:
+ - "20"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718369763977486&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=kxT9zf_SDET-vNQLIe4nOESSObKKKTc1PEBqXCNONkRqvReo5k-sZR8_fLW_lgs4L9M6d1vkMBSVzwBkMhCidIsIaqVl7akOAlU4F4CEh3YxPz4WqLCPxDyKmpPX-fxz6lfgylH0JR43zQ-mGDm3TIzDUTMGipGykdVACwcQRs0f5VLn6Z1jcJKQ9E40E-ylqYhsKqBbnZ8d1McT824CJhtvnX49zNVyt_zQahBdyv3KThQvWYDfSO367QDt8hGnfFzkNKNPOg3oXrsQwRIFHcF6tRvdPteok_nPDR_hYBCuyC-2ZW4iuoYg8d8YqHUtFpR-fX9YgJJtgGIpcup3Hw&h=nVmPWgFR3BCTZthGSVKcH5wYkxflkaA5GkLPtqDtqz0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 5EAE61C239D64725A145D0EFE0161A69 Ref B: MAA201060515017 Ref C: 2025-01-07T08:56:15Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.096427166s
+ - 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:
+ - "21"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718369935665862&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=oiOCf7WYEqwHh5ZIr3fGve2kBUuiqg8RIyE6CodfrmfEB7RWxBaFHSYIAA1shVdcMkZOBwGEg3Y5791LGsF3sQ_WhXhgxgMj6Vb-MF8VtIuyFL36-CIUtqcjKysn5LBKKrq1jY_qhz8AVBAVCzsHTvyWPpSqQnPkY1dKENEdmaznBhtU1NrbeR9MTIToXoZApJ6ej3nXF42kFn-Ap0kGXaXbvP1Pp86x_l1a3zFk4WB-NXoYtypkIi5Y35AL434bUbzuPwhfXfYR8wub7tUFgP8qXZdfDDvL-_qTnS294cCCW0k9TSAzXKAv3dFUMXe1XJ3qF4TyavFr_JkbaaGN9w&h=KQggTKDtp-LwTgXIq0WWsq68MMTNC1hGu6mMQuKnQZE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: A7FA69FD74AB4D7BACA504CCB5BA0F0F Ref B: MAA201060515017 Ref C: 2025-01-07T08:56:32Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.07187675s
+ - 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:
+ - "22"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718370103493234&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=LFQ0PJew8OukKmzAW2hN4jt9EHqjqKM8-5Os0NaDlsYtf2y3ZGH8MXEFuEKrjL7AE7HRswjG80xQ6WJUFHUoKVYHiGzhz7OuSO0MBbL8fYWp4FlFBK7bS2zgzq9eSZC0fkkJC3YRzokJKYNJ29dPv9vpOlBkymRf_GDCerbLjmAfCt9YEvTlJeQiS0VDs0BSUznLIj_pcnwEaQwJGiG6N4HnoM9mAdeviw6Iaz9zhUL528zEzOvHpR5L9tg9IsXZLe3PsocyMacLbLedlJCD2nrn69gcrI-MBKdxMGvONfotHI1AZyguZhLMVo-ovVRLBNuKyZntrD3kUwlTxuM-Ng&h=AGznLjZR16KcagIGoWqbMFLx130vrz2PScjVMySr6Rs
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0A522590B4C84C459D9E593F11F03556 Ref B: MAA201060515017 Ref C: 2025-01-07T08:56:49Z'
+ status: 202 Accepted
+ code: 202
+ duration: 577.549125ms
+ - 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:
+ - "23"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718370271828309&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=bXdsuNxFuC81e1Bt9xcuu8MKUB-hbb4HiuriDJd17seOqPVoVagcpn1Ij14VKp5-k7fil-xjyWlKydRRLfJMc1Z83xeTXINT_wALbahO0ZIXLcyhbKo1Jcgrd_nY9k1OOwYGVA-8L4Rcf3U82280KdiHtgKfzK8zQ2XR9N9gFGn7JO2TOEtOWaGElQ75oN1hluHnbb9nCx-Df8Rfhln04pRySaEutCi8DabdDI6lReJecglbycV4Gnex0NJaI4JigvkK3t1Em4SjlhvOAXdzdILD0CWl4-DoAfzVusoaVBSEsfrDCPdmkOkSBfUpJ0DUk0xQ44MZGN_BCUiWcO8pAQ&h=j4voD022VhdImlOEUz6PjV7QV7QL5rBHP5kr_QQ5YGw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FE604C5B7BF541F28B27CE1D7E3DADEF Ref B: MAA201060515017 Ref C: 2025-01-07T08:57:06Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.226398834s
+ - 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:
+ - "24"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718370446462215&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=pZb_0Ot9sYfmBLPbA1vkFj4qPgQzO7wCih9TUXcJ211ZrfHEpew2Ad9a_AIqKfkcVLBbjIvj35MCUlJ0U1LiJMOQxBrCAGOpKlZ3JameNoTf4QXUF-CNXZdKwTTWMv5bSFBysWn3Ojy1F3i7-Ai2n56BUFopcGF9apUTNJXqENByZ29gIFa531cKqqvLPnELg2Ap280yJDlR-jwtNziNmbAzmNVF3GoukDbIcyrYaCVhFRCds9IJIC4w_-XeQ_hQbA7SlNib6Re_il2nZ293NODbyNHV2rVjMUjfCSbdipnTCtjtdlC83Gk6c0Y2ttAo-rCcFJ2SbItm51--BeeEXw&h=zdcL3zNpIDgoAJe7cbB6RTQsv2fc6aBMaSdkfrY-svU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4E328A72AD3542788C256352FDC5CDBB Ref B: MAA201060515017 Ref C: 2025-01-07T08:57:23Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.179360333s
+ - 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:
+ - "25"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718370620554052&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=TwF971vq_UMFuW8t5Qw16t6XgljDaqMU85hGX7Y0IGk2ILnlyKOfAuKWNdzpWlN_qlov0AzL5lDZcBXYvClQp6d_vITYTAOd4lMgE76DfHVaoizCYzVh5qYUy7qGP73csxLPekyg4uk1qsWPrYG-YJ1blHm7cxxTDcPSrx17T4UBXsrsBMblz_8rCpq91kb6DhkefoMSfWGWMFnQN99JpLTq6cNMcxN2gUeDFQ2UykN8nFnFrN2lj3QqMDA4j1Fb4IR8EJRHmHpbcZf-ba4GUJ6D-0bO9mtEHLUg8uIDnm-4hdZibJGdgo6P26-P7VwAQlnM0eoLuUJUvZzQflhVlw&h=88Yz4O-QUM5F_LSxS20dFs3gbnl2I4e2X9lpG2cnp4o
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CB99B72E616C4563B6440222F8E8191A Ref B: MAA201060515017 Ref C: 2025-01-07T08:57:40Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.198154083s
+ - 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:
+ - "26"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718370797267508&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=I4da4yp9sU0tBY2x8NI4ky6kJM63H9RYtibpTT11wbymBilb6vlsn7AO0qaVYTYLcGW3K7TKKXekvFPIF1sHL8o_3O1ytAijuO45IaEV73JS8EiQHF_2rIkcpcundPVtJSuU8HcRHcRsZwRgh1Ov-BNCXk3lOsolawM-wGfPH8siUZldwDtVNGkXiCch8Sy4XESQ0BZ9TVFzfA90fftDlmBNFnzZzLboTTejyq-rlp-vsHhZVYMRBnLsQ5NmBfLLm1XUJnMUsCB9maJQoeZ4DmnEoz3O7H6q2D2zuLsobssqw3M7B0ermImR8zQY587yVguvelXENvaGt9Z4C_DwCA&h=9VtqV3ffrQ7jfEdX925cSvRweWvBpUME2x4WnXII1J8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F0CDB1B18EA74ACEA7144C05D084AF03 Ref B: MAA201060515017 Ref C: 2025-01-07T08:57:58Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.117847917s
+ - 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:
+ - "27"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718370971706777&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=c1Zb9Zd3dCaQrdM2LwNclf5rDM1qasFHAZgdCyrhp65xayQtbw85ItrcsU-vNR3fSvBcC6lnLafGV7JF62-qgbCy0M_tnFMRj79WlMPR1R6LBOWOCjudTDATuBfSL8q2JWGoUhuAcNeYZE1ZDnmq1A6zm2UpijHgcYXGxm6Uz7mXqD4qhqfO4dpfXvfF1zHzXABa17uJ8UbLdjhU7RjhdCMR4vmyqsSMS639o_YjltQKH39zMocEQUQ1-075_PUJdgiPRXf_kC0UJqAvUN57HEB7tkYywX3e4t6wU8bktGZG9zpbkHadnBB8Gm042QI3ivKssdpyufeUMO_bLAVCgQ&h=68WY6ISJJ35LoNyB7t811l2cGQ4UtEgKVNsgclGBgbs
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 627C6FB8A7D44E2F95716CC71EC71553 Ref B: MAA201060515017 Ref C: 2025-01-07T08:58:16Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.140427667s
+ - 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:
+ - "28"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718371144458895&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Gy46El2KdKcO4byw6L3NlxwGJzWaWJoVerxMsQckQ57dCJCwLdduLCdGSn1gHenJX_Wd6D1CRBkomHGD4lJ1PF234-JByPAyar7YsTpFbzgcBWSzsclkt4KPiTD6wPiZM58MH6uLjgHGlqs1_TvvjXWbfDdicrZxIgQkpihshHQqcoPJoodsaARK3G5SJM_LizhCHOQ4QJlkKEpPO4PNMb2zUEtuzy5Ggn_iuvGqp_druIVS237ayoA_cimoOymQuq34gjrsFGNp5ETBC8Qp0ZV4AhqN5tHtL3jhJqY8SfMe8_HDslBCPRjfyu9vrgFXja2huBbzaEaSL-Z6ocJSoQ&h=yc_1BipNiYIj7Pe086EguJiA5e4L53eliXdDWFVxGoo
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E4BA1A36CC0D4EA2A8548DAC415BF851 Ref B: MAA201060515017 Ref C: 2025-01-07T08:58:33Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.103547583s
+ - 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:
+ - "29"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718371321218534&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=IWnlvn_j8lkRnEmXxsW2EYuzo_JcUfXp4C9aHhmzerPnTh_4RVTKM3ahvIbmgVF9E9am31MpfzHMJN8Q_6V_C-nyCDV9B0NtFwGuBaHdx0iunk0kzVoEmwkDg44o6Z0u-9JIn2_7--ISV6pI11KHfmCs2aJtUU2slzOW5LPdmEkQQs5E6ma8NuUrss9ybepmLm8WWRkxAkEgDGlAkQ0ugwf5S1GM82aRuEshBIoyXGDqnMTd1PxVIfX8pjdaEI_shWZ-t6G_h6ghMrsRT-yhJnmMDAwM3n780BGfs7Gem7ayWEb3eXH9riSByEelgMEDUMEFhLPavo4yDNaNG_86KA&h=fcTbvMFRiy2V4mdHrRdlGWcgkEyROrkzweX4aVRYpdc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8711E8921C4E4AD0AE3814D7B2E775C7 Ref B: MAA201060515017 Ref C: 2025-01-07T08:58:51Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.13779375s
+ - 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:
+ - "30"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718371493558574&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=mtO7mklI3ogj3asKPxw3FiXAOnqYKuuuBgfaf-cTXmN9Y_vXlivBGGC7y0nx4o8vYmQUcEkKkVp1C85mPfyaCiwM9rc0PbM-MXGlDJ7VojR8OVtDLtw8ZXna2zHGgWdI-S_9hROUmFAxkBUe1wBz_QuphBxDqBPz9DPArT-toAn5Y_A4gr1_CPfVum2-gRRHWxcXtnUYtzaEpS9wRPOJkkSmiFY7A1aBnls6iOFLFJraRSJ6c7txDHH7jSFqyyo_7Pjj_sQn_ZFimApy_00zK8nGG4LChg0gq6uTdbYSMJHf9qOEmF2yk0JjNi7EUm7jqzE4g2N304GMGtCjCGsWUQ&h=csbcfuDSPgKbDKh8I2hBlevYD9O3JU2GwvrK7b-PTuE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E782198CD0024F4993560E1FAEAE8DB8 Ref B: MAA201060515017 Ref C: 2025-01-07T08:59:08Z'
+ status: 202 Accepted
+ code: 202
+ duration: 123.900292ms
+ - 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:
+ - "31"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718371670615355&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=WxOm95AT7fqlb2GVg7BjkadhtR8pL4MYEbOueJpdF9G7pxBjNByupSKX3SIZGqxyHnULdQBojCGz89Mh1q7uYaOqbyYQEC9xqiAoLVZAz5JiD-OGWVVaTUo7RAzxGpXBl4k46TSJ3W9S7WL8H3svPe_EA74uqb2x1468YAzjCSw8Z1F-RUKNGlxWr8z9_UrMnnn_m8CHPMiHZYYJw8ypFLYxJDqWjw6dRQHxuGdzOR4bGXsmFvulM_W3SEe1TB3q83YsHoEM-4Bc6yYQRlE3LetX6tvo04iGTEO6DkrKT6UDxcqYHKjurVT4GwBU7KsdrQ-pfA4XN0yvDle--sQrrw&h=GvWQeN5aFRRHJMSdpVOjZlnSuBkjUwV4Bbu9l3b5BUA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B9BA9EDE86034A06A144841AB6B0872E Ref B: MAA201060515017 Ref C: 2025-01-07T08:59:26Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.154448125s
+ - 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:
+ - "32"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718371844610338&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=gWrbFSZEXtJjKTKGnNJSGTVCALpNYPrjr5Gsu-tBGkeuetiiAvzM2Vx2tu20YTDGuxhABK1ZxGRdjcS7rZgbGYmF3HGIaCrM5te741CdQDg3k9vIc95tlLZLTaNZWmIxLtnmFiWcV_di1av78Z_N4B6CkwnE5Z_nX1kBaXNNot8lrV2LGP-AsTSPNA03t3de7OPsA2dHmBolcmGUjAJBQ-sZ8OzMtb9I5mD69-yUl06FQZCSrloAxlN_6fvSUkfJ2gSU-KHoq0hSfC_DmvFPKy8ilcIkI7KN46gwa1XbiSowKRbQsHw4TXBwbQG2AwtuizFtuCmZm1v80eKJ98MNzQ&h=FOzYGwRICNkusbEBbLLIcDq4Vci7VFHHCBe6H6PKIjA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4E96711CE0904AB299BBF9ED68036D46 Ref B: MAA201060515017 Ref C: 2025-01-07T08:59:43Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.177341291s
+ - 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:
+ - "33"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718372019443897&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=gv0UN_iIz4A3K8H8G0lmo6UoKopMGN8ICq7kXVy5m7aWS99DIuYgs5u0YZ9rQ3d-3rXiqBLK_BLS8I4zqCKLq57QloXm9xfxfyrHx_4fRxTynHBCOpJ1rvAbwSzPO0fIdXdciWExiCmcbLM7FHZl668kvQisuBD3FEaZMxCBBpXVdK9R4qFZmNHB9pkml_XMfnmWebyeKearIPQWErLBY6J8RG8CLFV3_Fq612JfhaWQVgVzoC1ZDJLp-yIRfH8cp3UaLE2iGLinKxm56huqZU60WaCm0IN2axt6CYdO4LQaBmAVy9BUo3u2JPA17e3eNw1CwkdjTHqzoDJZGED0Ig&h=Mzmu-j2HnZiMPYpjkWFN8cs7WBuveuGdKlg9QNjtPtI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F057FBB5DEB347BE960775449C26CA6C Ref B: MAA201060515017 Ref C: 2025-01-07T09:00:00Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.31205525s
+ - 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:
+ - "34"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718372194582220&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=taqiNfz20zUAasYQ1_7QmNI_o0qM9XG0jiCLKMFCVkqwgCAVk9Kp3IcohUjSTLUYfSaqE_I2UavYullF3x_u7vfrzVupW3_K8GgMpBtPaICpjITsHtzCjC6xd3bj--MsvNNbU0Do1qYGnkgeA7IeyaLD-YMBQ85rv823HwQRjaz7bkAxcon6MjHNg_abipD883-8m8cv_ZTIzToLiG7UzC02jxl69Uvw5nt4lwFA15zNbu_3CEEdw-NZl7fphD-oaTzRYuLhdw6K8s4UkLs6tCGfDdEbIDTU7Fr4DjPSrZHmCK1HPEk1O4h75GmbVNFgc3X2c0rSkqCNvMkejtzzEg&h=6iaiNIQGUjeyx5V2qlR_hOewWcHYODEwhVQTqs29EOk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 34BA0147788D4633BA8FC81CA2B1DC39 Ref B: MAA201060515017 Ref C: 2025-01-07T09:00:18Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.186637541s
+ - 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:
+ - "35"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718372368770328&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Sf1si1GBbHW_MUCmcn3UbvLJX3JECeKk8RoRRnEZWxWe-btc86qOwBG6T3mw0eGsVR6wDJwsPm2EBUY1vfkCu5wdpdrnLn6KUn1PTHlDH3bx5laSOcqSoaX11pic--nQ51HTvMgBmRq6G1m_0O8IkH-LCGLW3INEOZNI9co_1dYJh_IbVsqTr5xzMn_buMH3Qyt8PW9tsa3a-FV6fOw6pPBXegu5JJoyOsMvexMQRsihRJ6ahs6xq684robYqK1qXWmyTyIRxTuMnY7Fx7K5h9hBzVgEkmQwmqm8VRHb9iPtmRAC1WOEUN_6byzBL9nE7uOlkktAV-OYQyZq4nB21Q&h=oK4WD1jSdBG2f-Z5R-kEXiJixWtl1Qn_psNvVirF6nw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B3179C493E7A4380AEA4C39BB1AF69AE Ref B: MAA201060515017 Ref C: 2025-01-07T09:00:35Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.112859541s
+ - 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:
+ - "36"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718372542802636&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=ng_XAO1-H124cdLkyWNywpfRvvXj5cILCaG3pofwCIxy3LIZXTMbcstSA_tR-Mc2PIbvwPIgGidhWHNumi2qXsLi1SjOQkv2yQL1-KfaWoP4TQmHyCioXhV_n3Y3zhVTTPyMX8MjNgEIcjqVTaT0qUradRmwBtFFwG1H7vKUAtX5hXZV94DixrCdJqWV5loUVc_8oPsKMid3_z8Hmtuse3AYAwwz7EodeGea044N_4P4Q8zYGI-KSmPfdaWVlEi2sTnJzfQ0q0k4BMTzxYhbTUTjMTkMdsP0rTXGQEzGwasC83V2dTcZVH0kh6OS3MxHZhL8UfOh7oI_jqWVL98Euw&h=HDR1oRovHnMkMExw62vttSEYGXmIoAaKy2Bfladg96s
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0147813D87DE498BB428EAADF5DA3C18 Ref B: MAA201060515017 Ref C: 2025-01-07T09:00:53Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.080624917s
+ - 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:
+ - "37"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718372714449565&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=up0_avz0EQ7rtrNvMavGCSZneOco0dhOMVVqlcEuDW3zJzsLca92w_bYuJzO0wTg4g2Ei19FBhPC7y5MFIZ1lAaeJKXsSXzxtPHsC6nzeVl0E_yit0vJEKwYETh2FVrwY5tn7_Dr6pid-F7_1h1qzgnE8mBRZBRiKdLLjQYE_gCWS4oJi5w8rKUYyp_djK-Yl1l0FzLY_03NlLi3hQsFBleS2PYq5W_JBmdoAhUVscLV0uzIackQiqYkJ3R7fa32BHpk65kXnwQajG3v1UapscVcw5eCBaG_m1eY7wuSQVhTHqnCrF3vzlpmgZxBn3CK318qx7GkAfWqHyYJdaNSPQ&h=4qeL8xl3c7OlNN6-SzqgTeEYljw9DGNMNpjdhjyHLIo
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B76F6A2383584C70844344C507E0EE45 Ref B: MAA201060515017 Ref C: 2025-01-07T09:01:10Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.102329292s
+ - 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:
+ - "38"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718372889166599&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=iMJEMycnLplKqSm2BzgWxQq2MvYnemIZplje9KMUwwIXHGlpbb6HUgFzrHeOgP1btRuAgwQkQOTYBt5kpWGlTUQ0-uBDVcObu-weSWZpak7aVQouXT8IjYBzvXBq7RFZsWHScXvKpjSKiApoxapHvrrYBJC06TYoRGeLGkkukaBs2D3tBNu1-V91EuTlo-8rxR0Q0lCwvMPkk7UJpCDceAsum-lnuMrp3NCap1boyhsFmbO9iOjPPD1lANhmUTJkwYz4a9GQJaH3EmZU5gbkryzxNyZcpF-QC-yLilnlcwWgpBWjBHnqEkUMrypESJeaLOCd0yNgFcMsltujrFTxTQ&h=RScYXH51-fldyfIiMs5Dg0JHcsgFMQGZ7Dn2YaiUiKA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4072C63ABE9049CA8DD1ADF9C66E2D51 Ref B: MAA201060515017 Ref C: 2025-01-07T09:01:27Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.151924833s
+ - 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:
+ - "39"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718373062017147&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VAgw28lzpfcblx1_XrijnNIumKbdzEkQsznGBAKa2Rc9bvGigKkotzzBUQyO3rphWYl00yA-7Q82hPfrPUD4fKtwHKXqNPpVJLa2kVkg5UtCgakorALDBbW_eO1PwhoIBvx5BOgZ8nWNKTr2GQxPiRXt6CqOYkSoWwXqKgqk8e3yWfxjUE2ewsu-_s9PU0p6ej7NRjsXaBy4o46B1Rg_O7vFSQFmuGTzItMXUJ5S0ZH4jDhf2-V8zYanm0AMSLJziHbonUdlySEKvAD_8f4_9PFlx7HAxYp6Baf-T3lTdxdmYFzWTJbBoNqQQbBbtVJ3jkCkvNxkQmx0eveNayB5gw&h=wyZe1-c8lqT3ix_F8UhqrAFckbDu9gDOMBUXQnarqtE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 940EC971B21D48F8A735F2A7E9DBBE54 Ref B: MAA201060515017 Ref C: 2025-01-07T09:01:45Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.066498041s
+ - 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:
+ - "40"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718373233798965&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=RXZxl4FsB0L74wECIQKlHeVS_H7G4Z5dSuaaizy8hHmMUEP1XU-IxxgVy2LoHzA4znWbDRGw4ao45bOWvLTWEW7sLGhrPPbBwJdREvfvOi3v9f_YckBTnIDvuAa10OIvrvdb1x-uEWTWqGTKpKqxHNpTaKCryj3TuagcIWfnNb1EWVqjzsq27FTNTESbR7vUphD3_mey4mpOPUjvbs_p1qVqwgcarN8UDz5OevBuJNy-214Bynkvex5k51GYcmwTh1I-0WUAa-XRytPEk_onFJ3KEmR32ieDxgeg0jjLKyohVkXQJNrrkezJNCi4p_VjmC7ODDv3UHiWSSGG3KGkfw&h=kzIeONI34LxAkBhDkumpp91l-kTFE70ORkInRMcNe3I
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 6C359102AB414C27BF5A062C972664B0 Ref B: MAA201060515017 Ref C: 2025-01-07T09:02:02Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.10541275s
+ - 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:
+ - "41"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718373405703101&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=d1mjpdkGmRlnqLBGLpSHx7JMDC964BjJFeDRNbOzU6PxZUO3CIW48CC16pgN1von2cqNhusjnJGd77kyTKysio-ZDlkCMDLgqXidaEHkuW-_CGZPEGkYGkfweJiv-t-aa-w3gv9fh6GKvSGAkRhUzuznmitzaqJdswJuPrMNpSoMdspWMcklOgt2s-7bd0_ibBu1r7si3Ajv5moimJAh0E6_5oM0S8dK1_G-UAMfmVQChGbXo-DxcofXca07i1QKmPBjwxvntaE6AqdCHdRn67t57HAbI5RHytlU630dVDChhjOGDQGZ9ixUSA0OZZ08L1avDWjJ-fo8rXw5Dnsphg&h=AyoYhfCIQyyYY3CDCM9fsXkesd1BwvWvxBSpmVPo78U
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 878659B3EC3A47AC8D8C6200CE5BA484 Ref B: MAA201060515017 Ref C: 2025-01-07T09:02:19Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.073506542s
+ - 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:
+ - "42"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718373577171196&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=RPyi2M-yTtEUhOQ0PTolGGRxIPTA8hCUfL50z5VkISS3bp8Bz5Jh_G1dCnuLqHMI8x2d-EnTbL4rX4uGsD-vP3EkeTLUqcqzd9JYMGgIoQzso2zNc_QUAUBagTtIVcJV3mvzuoniKFQge-NkEtZ4dPbDpJUyFlXBOxCnL-z0FNcxIitD8Vz7usuM2LNPE3QZHjTZ0RRkw80H3sCqK0njQgtJHI1-af-k0VHWlUbz6boA76zqHJpsbgQbxLb8VK_hwkv1-51nGgW_lt8-QQG7rDWS_gTMpFkuxgg6nc5MF8__bX3e5KXhziy3TT--AR8yl6huk_tL3G_UpTpQN9k6HA&h=qPC9Y10sXi7Dm4ExYNCHc-LKpC7_IgEOK67WzQDfkp0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 220ED5A6A4154300985E466D4053258E Ref B: MAA201060515017 Ref C: 2025-01-07T09:02:36Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.059749458s
+ - 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:
+ - "43"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718373749814847&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Lh8VMYmU30Nmcz_8udP0Fq1KP3Gr4zAz0hTPdLWLRLlxiliHgwG8XTSKwdyjpDbLfLhtwrJQ7LI2Cb_WvfmpmH30RLOAHHipsd8NUlqJ6pux0Z4kbZ5rWWUspxQ_RKcAFhv5qTWasN1FdTpp5TLkCKRxlopGbLyBCMk3DpOb7q16QofZTcuQXP7LEkqicGryAE0sgnlccX-gsowq4W9tk6WUYVDjM5TBerh60adNItJVRjw8hwCYwWMWTwjtfd7mdJlEGvNFgSpJDQ-jgkCOVZnj8hjwDpP_MSkT-KM-h9E4HfPuaJ8BgeC89P7h-tSJowVvUIrqu6ajhDp4D_VZ3A&h=qXvsqtrfYvKjfhIsnpcZofPLYKqHzKNT4XECeAlZHCY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FC66C7304A174625A9E35032A606BE2D Ref B: MAA201060515017 Ref C: 2025-01-07T09:02:53Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.075589709s
+ - 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:
+ - "44"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718373925238412&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=SnK6DpD5XdDKXDDuvOtOmaiB7ZVnOwBWRtuIUbk6xbGiU7WdWhLeF82EZv_Qq210jRdZ1H7yUPis069c1hr1LE7gmbsW_-amc9gSEJTV6ANeGz57u2N1Ivi57PmIdhSkUTu_myJoIiXDxdTOmspUBi7Dssx2pYKjBU9s52g3dkEhGxI-_jvqlOXwPlJoOJ902hgDosE3UMynlGloM6gXYomfq6Q-79ZKRjB5XcvmyXbHURNcJK_uKHR1J2ZUfLOQ0GPfelZ4vt5w3WiG1l4fRmaE6VA3P4qT0UGFqafyb4NR1YuaXKIMOtzetHiGgw4IE4BNpWVnCm4cyvhV6K3EHA&h=2dfXG2XLGZnEiBItw1zHpjSJHdRDqf0ZzCYXU5SvIMs
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D556F9B4D66E44DC811C00C2A2600ED4 Ref B: MAA201060515017 Ref C: 2025-01-07T09:03:11Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.268703667s
+ - 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:
+ - "45"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718374100037792&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=GzQD6j_NZIGWHqSfQAIljs3vt3DuUcJkkuO6D4gBYa9IzGUblsHdb8OnKfuzA3LF02xxHoUaxVKTEWdwy6gzM70Xas8KDH5cLTYePZL_cqGpFJ0LPPKm3lpB5rzz9Ol5qwfFmz9UYWvuQyJ6h2iRCcKxzPA5qAJ_BgfyT7SNwEssEMOGcLux3Rs0znBgiPa2tFbRtmAKMk6NAi1kTQSRKaitaEQDMkFud0khnB1ywbwPlkZg38OxzAJgDN3zpp7xg5wyhzsiIKhCJ9kPVsbQh3-3hKUztOLV3P2v5OnRVrMbR0Hqg98NWe6kh10FWbhjcY_GkmVmH8FEMxznoK4plQ&h=Lhrjsn8npwT2bUXk_2yeTIsbE4mbTGzZpZNLWB4UWyc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0F142F51314B4A2DBBCAA3612BA8C50C Ref B: MAA201060515017 Ref C: 2025-01-07T09:03:28Z'
+ status: 202 Accepted
+ code: 202
+ duration: 125.164291ms
+ - 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:
+ - "46"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718374272531299&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Cwnasfl32kHP0mVyRcJC9rRNxaF6yryyQRqgmllph_Y9lUkC3nRAngGOQGaHFhQ0LtjNXbHwuqtsstVByitF6uZYkxFzFx3hn3TgRpaAWCljkPSBiByOC5BcakNRbpwZi4pgQJ33qrs0bjp3W5gtIcywFJnMtFFUE9ZbDVT2_7mkyQoq_Wvh3ice4SadZrUUdRtU78BnAJuCsJqtJErhyfIYU1znY1rhG7rHncICdw_imv3PgxkFFHikWzo2s3rSlt6uYQfzAtnQsBNqukBEa0SelBhkiCuv2AzALFZDg75gvGeEL9lhtEZTlRYEPHBiQzd1LnAfo62nK8PGHGrnmQ&h=d-e52zH4XBJK6CwFIrbhCH1R967jCDfKAic4443M66k
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D0F811B1AA6B4951A16DC85EA9A15690 Ref B: MAA201060515017 Ref C: 2025-01-07T09:03:46Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.091124625s
+ - 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:
+ - "47"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718374444779466&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=qfb0MqSjk2N00z9jlPWNDVyQ7JkKnumCVxEAOEE06B6TmDwDo-IOO-7QmUmhJafnrcm_vlju7swH38rtCd-VWaCkSrzoZ9XXet-AyQAFdJCXKMHT6FiSB95-qvf1tldkXgZ38vvZRMhSpKQ6wtA1r0jE2g2i9ju2_HNF4wjSMBiRmj4_lRZMs2ajKVWM8Kh_DUu9kLboWjX02T6FF5U5IHk8FI_aC9WLUtMA5Y6UtSOmEvrvmciglOfy4fCmvoUK1xLk299kCj7zYMTYr04o5zcxOzXVhm8c_qYeN5rx31k9PcMk-TvykncBKdfsoRNeQFFsB7gY_1ga9_-QYYBUBg&h=id49loLcALIA1TmxxN3V7k0ncB5BTWkaxqtloB8Ian0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B9407AFE82E04887AD1BEC49DAD97F6D Ref B: MAA201060515017 Ref C: 2025-01-07T09:04:03Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.137590583s
+ - 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:
+ - "48"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718374617382474&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=eoYNr-shupZkFyR3-FHh3hUNEiYoPqTeWHeyN7WWgro6nv7VkcnAXNjaLix8iUSHECNGhkxcg3YJI_HcWK1atgbodlno6quNyIUN_BylWuQZD67gnIz1tlkpKzGWeNpe8V3khZQmkcjpSriQOmntxv-TNszO3uCP9Y1dHvTaqvBph9nnnzA-KYQEna8sKXg_v1niWJgbC0DRcgnssfgf3JqjqhByLEKyUbIHFe1MOrthJlP1Pq8-VMkJjYB0wPV35KK9Qu4aVHFMiTL9FIf_jH1WR6h305weNKKPo9upnaRXi8u2yxnVXCWNojwdp2Vch509jOEkti1qja8EaxV17g&h=UcvCLUFgATFyZCygPNibN7LWRqKReO2uHLiHRkjDazU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 10B09DAB8FDE44DAAEDBB32DC52E1FF8 Ref B: MAA201060515017 Ref C: 2025-01-07T09:04:20Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.113107083s
+ - 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:
+ - "49"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718374793027098&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=dBfqdldbHdA3YBsaSbIWMIgSUW5_71UWpH8e2EoAD0v_e61P0xeRFdOtOPWJWvr573BHMyii-VKLmKy-i7jsKJbf4a7sj_Dbws-oBNwxwvIbEhmum0jQ1jmtFbAU0dB_KsFUUb6-UDyiDwxcgQhuIfC8bGUEjUzJi9WyuxX3ZlG9nnJLtfl-fScgSrtpKmS-jLtjx52Nn6Bf6l6FjUOxsrv5TNC1UIJ_RKQh1UAuc0_-PYF-6cgZLmFcn-zgVFYeDB06i_Z5DzYdSwIXaa2d72Nr6Y7mn815ddu-VsHwe1_AjapQot1h7sUxfZiynhXbA8eZs4kcZ0wTFEliaduxbg&h=3tTQe041N7WfM4Jl32_g-DegYfqvLiDmoi_W3NdQumc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 588DFC0F986A466DB28F3316B4B9A385 Ref B: MAA201060515017 Ref C: 2025-01-07T09:04:38Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.109231125s
+ - 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:
+ - "50"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718374965723175&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=X_AZcHZBr1_du4yxz__lOaNWmE0fyRon3awJTS0_XmD8KJ3uj-qCWg8O_kZXNr5YVSn3Vgv16xExsZj4MYGvo9QxIMz_mAiuKaloXPAWgLQvIYCWH8W_zspJGAM5BW0ZEqg_GCCsIt38yPob1Y3nsA2Xjp4goeG4p23EJgJDAqd8KRkr0V74Qa2EcDuVeBRefYntyGVpssImZvDDt8ckdUgaXm9OKf5Y__ybN7D5ndVA7vvzEgwM5e5OCuNHNdbSDRSkQ6yRyS1XHcdbEO4JbyK-u_YdDEUudykD4CjDM1tf4eG-NQ_WS8djewE1ANDiygthn3ZyzgNSO9QmVTMC8w&h=w0dkLY44CcSsi6YMI1caTPWw3qkUC9kwKuK-kfBKaxY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0115693AC76D410A980EFE16D4D9BB26 Ref B: MAA201060515017 Ref C: 2025-01-07T09:04:55Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.207819583s
+ - 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:
+ - "51"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718375140811291&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=uk2yAyTs5j6wMsBuI5h2KR5TuC5_8P6sFNo6Y2K1sn0DFDUiPjV7rcKvLVryDY52mdkFy5s_I0Y97ZLYXKbvLkuWLjsiNUn6OY0E-XjhSaw_9n-Y0tewVfyKcO-QesWQB8davqllCekbgpuqBmOmowjtsIuyoUXc4RgriQBBBUfwxzHiXWuB_P0R9_BY8U_mGWwfPhouM3_qiMdks0LY9UO-bvNf3BxOUhMSZmRsZ-O0EfcCMxbW7GV3qztRVdyscel6U4NbzzAu8fID0M_T6UKyAT_4pYs8GEHt8SwFUwUls3l0TDk9Aisk97SxoiWEQq0azeQ6AbIk61E1YGzSeg&h=zkz2S9XHo210M00Lb2z34G1jf13MnY5oWJ1WgzarBAU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: AC820CD48A46403EB6CA132E6DDFCFEB Ref B: MAA201060515017 Ref C: 2025-01-07T09:05:13Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.288940667s
+ - 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:
+ - "52"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718375321453663&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=n0JC8zq68zR--_601KKXVGUTdVpTHTE5xJR4wFKVwdEHASllgy0betUnOkhoZjEQeI9j6FMu0HhEFwahHD3mCnjf_HbkXl8cCI49St1b8LveWrPavt-aYAf_i0zw4zOhIuYiav9OeNRIY_mJSsTKxSMlVVIQITvITENMuDbDFJQUmfUhgrWnNGTOBs4QyvGeCGzgwRUymvbXM5TEj_0o_KoRs2XPDXT_OONclXGdhC-3o3QrCWrJHFfxk42o8wuaRkayAXNkVETx1LT_jmtl9Gyo_UnYpGyTyJ04AQwuBOYMCMj_8Q6kIfi6BBXrFk4xB_zc_KvnpMg4ZuF0IfoJTg&h=huIQAQcOT3AysRHzjxcpHDMyzsZdkByOh5Ajke5I_2E
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 778864FACEBE4CFFA9EF692911EF39EC Ref B: MAA201060515017 Ref C: 2025-01-07T09:05:31Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.116907875s
+ - 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:
+ - "53"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718375499342564&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sGP5OLLUxoG5Z9AYJIfMD3PfGOi3PquuE0sRU6Vsf0AywFNkKfOm65R-HxeATK7k3Tsg5RX73RwScs1Bq_r-vevnByauwVvHG7QalPFQMA54wwq6dqmiwqy3TksGZ0hxg0gMFzi1nC7iTUjm1C56Xq6FG3g7UgnErz3Skn8gLdV16BzUcLQu8v9gvauE1Yt9n3tMtlr3sqK5DZlWlr2ImNu2AgvU2_ZiCz91hdx8haI6P9jMv6DvWgRhA5QdJSI_XKFCLbvbA372NII7DDCffuwZkojWltghlKoe-3VK8yfyj9DmAMnbntTEr9wSnzfu5tRK1_7XS0M8TJw18sPoKA&h=lTqPX5VNWVZkh3v0dN_hU5SxP1ctXX_iu2dkBcS3mZA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0EEFD242EB9A4AB0A32761A7AD4A9B93 Ref B: MAA201060515017 Ref C: 2025-01-07T09:05:48Z'
+ status: 202 Accepted
+ code: 202
+ duration: 343.226167ms
+ - 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:
+ - "54"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718375675162541&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VE1FvPugIlCRzrj_gKiYEu0NvfGgOwA_18UQkUdmlLXVW1wXFXY3S_Q1DWJxDlADH1V4CqT3Xxb6QRdqox7hdXy9gD-gA_rCaAersK_bAnR_wwYVwB8PkeG4ad29RYKL5-eWH4S4iWkR9tFEx-6j9rYashOkn3iCNR_HiACfigIljltarGmQGSv3AXqz7OdMSZWD-JA9bcF153zk1R22hEStN1wefUUfKzS4FSxUc-HskCaBNvYWyjZRuhtbUks5NzkdWEVYv-xPdpQzRaGrOh5PiANkf72djmNb6b-kM1P1_-1mgucQjBPBRPunvK-9l_O-OokriITFgeDniJaBrg&h=ra0l_NLrizJXPLP7DwPp516G8xNaovF2zHugHcv1hdE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D38035C324B8422EAED7D307AECD61AF Ref B: MAA201060515017 Ref C: 2025-01-07T09:06:06Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.268004916s
+ - 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:
+ - "55"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718375849884361&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=kuk6SY3qX3Gtxr5iyQHXqh19LYA8EzV8A9jmmgnlvdiYKwfAfwzcDT9Bv4Z8dEC6oiaPlWNiYTaZq3N8vhIxAz52drKhm3Z20eqHhEXP4UsRFGvcphZZEJ1kfX4bJF-yAg76cAcTDZmp7nbmS1e7ojcRrRypbNvpBzmOVNcfdEyuQRwWhJQu81uZqv1F69MHsulusaXxQvJlGjZvZdp_i6qNK3Wxab9m8BuxHZsuwG3tYreez5Z4oGR0A-4QpDbZ_tJTWj0wu9O435aWmXRBk3kEG8zjmfyTGz8ayRNzjDNGEfxNUds-ZTUteqP8Sfo8lhh8WRs-TcUq7nJMY_oY1Q&h=uDxbTkpAWFle_q9qgVlNLnBtNHihKoLUGUmA0RNbv34
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2C595CE65ED54DA2B3AED353A876377B Ref B: MAA201060515017 Ref C: 2025-01-07T09:06:23Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.099793667s
+ - 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:
+ - "56"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718376027149816&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=lJ91CM8662DuRM15SM0Tr3BFImvU5L9BewhCoZ8v0yoJ_0LHr6A2dGfJYtFPSpWT1e-BW3ekF8LKfkKNaKcUCQ890vP9LQ4uKH2ASuyYozg-UOqM2Ve9bgFDMAvBmXjV-h72O0vK-qI_YI-bsrPsnT8bKWrOB4HyJjCsxztsjW5j__dd7MdycKBbgPUIpO9xcwkyaDfKbm7ZRKDOzKI6Yi-2WLKlqh9cUgWnCNuauZ2CB0RCDdDmFL9yiqQQRxmcPEEYhIKg3rfVy5xkcpZm4vSoCXhRvWqH28O8AVm2JgR4U89uR9rBlw13lRZE6da7uU0h8-yi3X-uQhikCK-Q1g&h=aIgM6cRlFb_Yy8gaQzS7sS8VAR5sfLOaLmeyErrHMzY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D68DC3FE8AE64816A2552E8156FEA5EC Ref B: MAA201060515017 Ref C: 2025-01-07T09:06:41Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.248662625s
+ - 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:
+ Test-Request-Attempt:
+ - "57"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718376201409425&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=BdaWrDUe96fokwSU_j0V08AZZRFTvQklWD_N0-zbwv5VqL_h8HsjHKzYnQ_r2uF7Al_nlNOB_Y6km2rVrisNaIxFKiZXZS8vETXnDgADq1qtOZx5JgVji1-9_2lz1o7UOFaWfj9Pay57X2YQW5ZCsrb587byEWR0XllpsLVk0DPiQsvh8mKTwtVFFgkrfkxS6tJz1kirPzWRFAgcHqtkWD4j-q44scH0cyCcNVkxBCQ7M7iB_s2Maj0hIZNgriCGr4mO0bMkl3NNKU-hSgeeYabEW64z9Fi46nwRilhQ1gBFKHuc6mDJ4hCwNXDj4YRcgMQC3-ty54k-N3KyTGN5Qg&h=-wayeS0H1Kc4Z5kvgiSCe6E_i9Kki4Wj9DX_GFLOf-E
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D9B9781930E7443387C9707B73C77F46 Ref B: MAA201060515017 Ref C: 2025-01-07T09:06:59Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.091338584s
+ - 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:
+ Test-Request-Attempt:
+ - "58"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718376375884504&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=WVqgYE8E99Izpc7PLK0vOHJhzVROOnx96dnran515gaZq-UBypZIUCQ_hRhzRMAdOG2mk9nPFjarbK9AtZ4b41pLqQ9Q4Cb6IDXeqapNKyx_Bky_LvlvqwIporNXCN5B24WY4ap7Gjo-ard6WVzFP8Ztwah9QxsLgIrURo_AXWwPdVRhaaw5b1CYSI2J3Xat-TPR43moBeLAe68TcgFhd2BcOOjvHGai73brN99D_wuEJGn9jQLDgXgt7rwV5Dh4sHhbZl4pZevoyyZH0mWvCzH_m0s-BtoyV9E4AXczPHpmYqiNjG25NWbU8XmjEwcNLuo9VUpgK-1WgZhZAPzDfw&h=0ai9cFp_ng94JOWy4s_h9YBbATJQDeoulWkGD4mvLQw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 1CD6A70714314F86840730EB12F797DB Ref B: MAA201060515017 Ref C: 2025-01-07T09:07:16Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.43878625s
+ - 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:
+ - "59"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718376552916727&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=azVD0CB5HMvcdhCuofJxaVc7p3DkglWl6x4MG-OmN0kgxe3HElWqAdjUNB82yZ9IQA5-spCgjne_RfNejgsuGqZZCU2JIb8_-uaFjeqtvvkSBUEh7LF9JcdzV6P7cKQGuMC9QX2w5d-ANZ0ZqBYKqiaOPr_62Is8TdQF2u3nIiPRfQg8z7Idi44X2T9rQBWdxAwfdilj2TAdk70fN7G_xePWLPKhHgaOkhBIYhAfDkPVawv3kAek2fB8dlpHauwcOvzOeIPKvdERq0_kJaMHzkU-FvBaoYfiFuEZLbFeTvx-QnqRle7kgUh_BwVJ1z2gIPAEkLSaKEPjuBEvmRttaw&h=1m7b61ecTjU2itX2ESZEQoDxB0pvoEwKWNbWPV1RULk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 66DEC08CF1024971A9E1871316358956 Ref B: MAA201060515017 Ref C: 2025-01-07T09:07:34Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.170361917s
+ - 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:
+ - "60"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718376732059289&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=O7NaBJCwEJysYrLAhW8l-mr4Vb5tRvWCXNvMJZp0PW5zR1b1lOX43cIN8sqphWm2ZWJ7BuvfEqFSizdHy1UCNEPGPzROfG9oK3k065ZiIHcgq0iUWEe5PgS3TJeKHzRFTwhy77ps91p5RSmGwtaeH02ikKgSctdu7UOKGfE64pb8r18wg-rijEQfmzLaYjrCmbrbUijQUrePejI8x0lfNn8A4fUiehumJ5nqmoBXYUnG_Cq0i4Di-CGsMuhZYMum9FiUU7cOWn1UEq8Qruf4YgXaCjUuQlsk4pplYl4HSAAYS6isJ_PSkTCrwBzaFMKJSPOtw537_6OrWmvzlbV1PA&h=HiVoA8l7TW4QoYIldvSNxsoinATYYfS1q27rI1AX8lQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 84B8CCFA7BB34CC68DF462FC50C1270C Ref B: MAA201060515017 Ref C: 2025-01-07T09:07:52Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.159274875s
+ - 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:
+ - "61"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718376905175785&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=CxHDB8hVvQxWGcVAqpw6IgmZHC9AQ5l2f3qoXkEtbgU5LfBxdAZfFxc_oV3sqPkxC9PdosyuW4yJmq_7SuoQED6JZNYfGO0vg1-FgtQlsWnTQn1Kxt7QKbr6fXMeDZ-WMQ7bkq30xBpKoh8VaBfcIBNCXReNbU0G36Liq_XQrBosbuV2JzpXxaR5bFFcaGSM4V1Yhz3hNdYhTYjaToFLp50qup5pLlqJX8_za7ccnpA0x6p0_tb69rhLhQFihHwCALGLSEdBL0zxdE90JqxSkxbcNyl3cQZT7vZA1WvrozZctVdvG8yjGuvEuJaCm5BmopLQ-2sCMDsomxAJjBKasw&h=io7r-UYk5kfK6wTRWa4GuZ553QVoTMRjmG5fme1IhWk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8310D8CCD4D94F6099C417FFA3B54D0A Ref B: MAA201060515017 Ref C: 2025-01-07T09:08:09Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.123165375s
+ - 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:
+ - "62"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRGSVdaQ1UtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718366073200323&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=voukgZ4KNByqDlmbxeRSSESFS1INEqm4g5l3MOpLvQ8uHz3-Sx7rYSExKwwv7zpx8BQSEb5H1ooYpF_vxbl0UeDzTEVKP97BqidktqWOziX5CTIgf6d-gZb11vPPbvbgjzovbkh_ndLtXoZIHDDAQkHEOgnNmcTuLZOsv4CDrsEZgdHYWKV-sna8dvl5GNyfd2NOgzbwIqN_53YLYqltE6GJ4lk9RwA56DMoly0UwMIBmmMsFZpVCm2kyc1u8mtSfWv7LQ5Jfytdy2Z60Batp7zYybW3lrCXV8ov-ttV-uV0T4VAMfMxy4sCbJ__E9Njtozs7iQB8gOlp5b_j0ofYg&h=bq1JbEmiowJCiFLk3Tf5kwFva3quK8JDTw-PcIHr3Hk
+ 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-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 26327C77C65F4C4C9DFE8A525A4F810A Ref B: MAA201060515017 Ref C: 2025-01-07T09:08:26Z'
+ status: 200 OK
+ code: 200
+ duration: 1.110487791s
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/managedEnvironments/asotest-env-xhzbsz?api-version=2024-03-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-fiwzcu'' 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: 1F1F32364C30404F9887C80291AA62A9 Ref B: MAA201060515017 Ref C: 2025-01-07T09:08:30Z'
+ status: 404 Not Found
+ code: 404
+ duration: 563.962708ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-fiwzcu/providers/Microsoft.App/containerApps/asotest-app-vseeno/authConfigs/current?api-version=2024-03-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-fiwzcu'' 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: 0FD40451936246F9A31A186EC83D8AFE Ref B: MAA201060515017 Ref C: 2025-01-07T09:08:36Z'
+ status: 404 Not Found
+ code: 404
+ duration: 742.024292ms
diff --git a/v2/internal/controllers/recordings/Test_App_Job_CRUD.yaml b/v2/internal/controllers/recordings/Test_App_Job_CRUD.yaml
new file mode 100644
index 00000000000..5e3904a80a6
--- /dev/null
+++ b/v2/internal/controllers/recordings/Test_App_Job_CRUD.yaml
@@ -0,0 +1,4795 @@
+---
+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-lazcos","tags":{"CreatedAt":"2001-02-03T04:05:06Z"}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "93"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - f4002f4925d237c00c1ece89ed24fe4689f8dbddbdb46733394df40429cc0b2f
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos?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-lazcos","name":"asotest-rg-lazcos","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-Ms-Ratelimit-Remaining-Subscription-Global-Writes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 6A4B165DF6BA4B819029DEB90BB32175 Ref B: MAA201060514051 Ref C: 2025-01-07T11:11:17Z'
+ status: 201 Created
+ code: 201
+ duration: 605.473917ms
+ - 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-lazcos?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-lazcos","name":"asotest-rg-lazcos","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-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 89BFB02BDD2A4B70BDB2DB1E4E04A5DB Ref B: MAA201060514051 Ref C: 2025-01-07T11:11:27Z'
+ status: 200 OK
+ code: 200
+ duration: 433.505708ms
+ - id: 2
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 167
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-env-kjfevc","properties":{"workloadProfiles":[{"maximumCount":2,"minimumCount":1,"name":"profile1","workloadProfileType":"D4"}]}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "167"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - fc898f3f0897147a569bfffe2302acad8c7909a9ba2f9b006ca976da1898bc99
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1653
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","name":"asotest-env-kjfevc","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T11:11:37.2066343","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T11:11:37.2066343"},"properties":{"provisioningState":"Waiting","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"grayisland-937767b7.westus2.azurecontainerapps.io","staticIp":"4.149.185.152","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/managedEnvironments/asotest-env-kjfevc/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1653"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "99"
+ X-Msedge-Ref:
+ - 'Ref A: 16934B067A77407DBD2E05DF144A6378 Ref B: MAA201060514051 Ref C: 2025-01-07T11:11:33Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 204.974417ms
+ - id: 3
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310","name":"54c014c5-3f99-422b-9d20-dcb6a2873310","status":"InProgress","startTime":"2025-01-07T11:11:38.4296938"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 204730CF284C44E38949E1F9979BBC1F Ref B: MAA201060514051 Ref C: 2025-01-07T11:11:46Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 860.692ms
+ - 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:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310","name":"54c014c5-3f99-422b-9d20-dcb6a2873310","status":"InProgress","startTime":"2025-01-07T11:11:38.4296938"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4D8AD401E53842219BFB2FF50B3C540D Ref B: MAA201060514051 Ref C: 2025-01-07T11:11:52Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 847.494875ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310","name":"54c014c5-3f99-422b-9d20-dcb6a2873310","status":"InProgress","startTime":"2025-01-07T11:11:38.4296938"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 401136DCE2834B418EDD9A0B83B6FEDC Ref B: MAA201060514051 Ref C: 2025-01-07T11:12:02Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 914.008959ms
+ - 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:
+ Test-Request-Attempt:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310","name":"54c014c5-3f99-422b-9d20-dcb6a2873310","status":"InProgress","startTime":"2025-01-07T11:11:38.4296938"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 44D8B87E53294C57888C3133BD7D7180 Ref B: MAA201060514051 Ref C: 2025-01-07T11:12:20Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 903.288458ms
+ - id: 7
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310","name":"54c014c5-3f99-422b-9d20-dcb6a2873310","status":"InProgress","startTime":"2025-01-07T11:11:38.4296938"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 08FF730D0A5C4EC1BCA8F9BF602BC456 Ref B: MAA201060514051 Ref C: 2025-01-07T11:12:54Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 991.541458ms
+ - id: 8
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310","name":"54c014c5-3f99-422b-9d20-dcb6a2873310","status":"InProgress","startTime":"2025-01-07T11:11:38.4296938"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 25AC29BC43444CC19F3532812DA526EF Ref B: MAA201060514051 Ref C: 2025-01-07T11:13:56Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 931.300167ms
+ - 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:
+ - "6"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310","name":"54c014c5-3f99-422b-9d20-dcb6a2873310","status":"InProgress","startTime":"2025-01-07T11:11:38.4296938"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D62D4E28C68442949A8733890576BA10 Ref B: MAA201060514051 Ref C: 2025-01-07T11:14:58Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 926.705416ms
+ - id: 10
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310?api-version=2024-03-01&azureAsyncOperation=true&t=638718450989878533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=lNL91HptJEyBv-xCnCzOyknhRu_8ZIPiFmNMaLzMgJ__N9ELNopCsnSrdW9W0CQpg-9N2hPzaFDFmy0CMPuK0f3oFOtlrcwY-BBBJPfvbQpg0XMMiVeGKKCb2vIYMxlfF81kq8yvtjBQHsFdLfgszLF9rp4vUPKQerKQzqxRqtmSfgS0b2I2UDHGKXiCgwZTHsvBZCqfYmGQJ2a1_PIek-60r7x8Lph4zU95_rgIF3t-TKhza2e69mZf1E89tEW2q0uH8M7IIhPDCwF86jImUivMDKscEqd0NY-P5_pQvVFMn_aWsAV9jrAmNllbGGfHEBZbqtPDAyZtXKmCkKYckw&h=I_aKZIMWavhMz77QrYX6N2PBAggks90gTkC4wQJji64
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 284
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/54c014c5-3f99-422b-9d20-dcb6a2873310","name":"54c014c5-3f99-422b-9d20-dcb6a2873310","status":"Succeeded","startTime":"2025-01-07T11:11:38.4296938"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "284"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 96DAA3FE88624F9B9EDD94C52943C6DA Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:01Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 838.175542ms
+ - id: 11
+ 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-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1655
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","name":"asotest-env-kjfevc","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T11:11:37.2066343","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T11:11:37.2066343"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"grayisland-937767b7.westus2.azurecontainerapps.io","staticIp":"4.149.185.152","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/managedEnvironments/asotest-env-kjfevc/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1655"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 1CFF3EDEB2584A7FB9FBEBEA14354435 Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:03Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.10677525s
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1655
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","name":"asotest-env-kjfevc","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T11:11:37.2066343","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T11:11:37.2066343"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"grayisland-937767b7.westus2.azurecontainerapps.io","staticIp":"4.149.185.152","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/managedEnvironments/asotest-env-kjfevc/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1655"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4798FEC668D4415C91F6FAADD0BE28B6 Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:05Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.143194375s
+ - id: 13
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 498
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-job-lnflao","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "498"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 798ede1adfebceed32b63dde0addcb0d54c76a477be80fc9bd9993b60a70ab55
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1396
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao","name":"asotest-job-lnflao","type":"Microsoft.App/jobs","location":"West US 2","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":"InProgress","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":""}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/containerApps/asotest-job-lnflao/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/3a32af9b-0bb3-4203-91cc-08f26d60460e?api-version=2024-03-01&azureAsyncOperation=true&t=638718453767722246&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=MJrJH0mr9n7mTPJ_byvIWUThIqyudGMzEpr7jrHU6AmqbuAZl-b6r50kB42MuzEZtI03RHcIhZ7fC_RLTwyxDY2LWtZA8oFxti4HYYISbX2gjWswc7If5nqEgtXTJhbbqsLgOPzaKrpXzCu_TOytAkQFNI-Xw1u6IpuC0DQvQSXaCSVY0euVyCmvGMlR0URnubX2b66WlSIG-LQ1PMTFJ2TfiHUJTsUVKWJ61AVvIYd0UpM83KjjaGnthM9t76qWAg28KRUFsGAEB2IRIyELMs0rXbtn5MYjU07gTVfovz2SKKb6LsOdXiaXH6Kx6Sp8x6ErmUIt5fcuxdFoQNOofQ&h=DsddVQXAmPjE2aZO_cLQIF_ZmnRD764oSnkTGfuoxqk
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1396"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: 7EECA410CF794FA4AA059332947EC2C2 Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:11Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 332.246001ms
+ - 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:
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/3a32af9b-0bb3-4203-91cc-08f26d60460e?api-version=2024-03-01&azureAsyncOperation=true&t=638718453767722246&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=MJrJH0mr9n7mTPJ_byvIWUThIqyudGMzEpr7jrHU6AmqbuAZl-b6r50kB42MuzEZtI03RHcIhZ7fC_RLTwyxDY2LWtZA8oFxti4HYYISbX2gjWswc7If5nqEgtXTJhbbqsLgOPzaKrpXzCu_TOytAkQFNI-Xw1u6IpuC0DQvQSXaCSVY0euVyCmvGMlR0URnubX2b66WlSIG-LQ1PMTFJ2TfiHUJTsUVKWJ61AVvIYd0UpM83KjjaGnthM9t76qWAg28KRUFsGAEB2IRIyELMs0rXbtn5MYjU07gTVfovz2SKKb6LsOdXiaXH6Kx6Sp8x6ErmUIt5fcuxdFoQNOofQ&h=DsddVQXAmPjE2aZO_cLQIF_ZmnRD764oSnkTGfuoxqk
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 282
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/3a32af9b-0bb3-4203-91cc-08f26d60460e","name":"3a32af9b-0bb3-4203-91cc-08f26d60460e","status":"Succeeded","startTime":"2025-01-07T11:16:15.8714358"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "282"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7C1EB9252589496AA33E90BDE74A4078 Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:24Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 810.360709ms
+ - 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:
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1393
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao","name":"asotest-job-lnflao","type":"Microsoft.App/jobs","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T11:16:15.2721627","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T11:16:15.2721627"},"properties":{"provisioningState":"Succeeded","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":""}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/containerApps/asotest-job-lnflao/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1393"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7BDDAA45D8594F54BD07303515D85267 Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 580.174583ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1393
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao","name":"asotest-job-lnflao","type":"Microsoft.App/jobs","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T11:16:15.2721627","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T11:16:15.2721627"},"properties":{"provisioningState":"Succeeded","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":""}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/containerApps/asotest-job-lnflao/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1393"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B6EA2CFDB2824CDB832367CA7A4B2634 Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:27Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.058738667s
+ - id: 17
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 519
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-job-lnflao","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}},"tags":{"foo":"bar"}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "519"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 06a0c17177385cf2adbcddfa88af28d4e4571f112651753257545fd31f8e80a7
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 203
+ uncompressed: false
+ body: '{"error":{"code":"InternalServerError","message":"Internal server error occurred. correlation ID: 70928250-7b39-4e56-83ac-af5b6d1ad4c6","details":null,"target":null,"additionalInfo":null,"traceId":null}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "203"
+ 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:
+ - service
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: AEB7E5B4BDDF4CAEBFC229F3940DB2CA Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:30Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 500 Internal Server Error
+ code: 500
+ duration: 301.121125ms
+ - id: 18
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 519
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-job-lnflao","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}},"tags":{"foo":"bar"}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "519"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 06a0c17177385cf2adbcddfa88af28d4e4571f112651753257545fd31f8e80a7
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1393
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao","name":"asotest-job-lnflao","type":"Microsoft.App/jobs","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T11:16:15.2721627","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2001-02-03T04:05:06Z"},"properties":{"provisioningState":"InProgress","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi"}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/containerApps/asotest-job-lnflao/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/432e8ca9-6e5e-4b3c-9d51-e875da3cc93b?api-version=2024-03-01&azureAsyncOperation=true&t=638718454125227079&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=FHGXyNJe7CoJGCpVL-sqEH4mHaO8Dydf9ApICseOnyS6fMXCjeloIUB4YssHiCY8ub-qbQxmP1YyBnYuvV3b4AF8t3ZyOPHENsvMydFvDdofyrmwDX_tAeU4MT2nZ-VX5zmEoH_magAqIlZrE4mHrm0pddN6TVrefVbdPV39pPesX7IPzpGTIZFy6E7zmP0wA4g1b2pQGq_f8BiPQeo5nYjyNX1kxjtuudtcUNTtvKAwpv-8OlVnuTRALIx5Peq3yvoyc02TayuimulExb1qiDBwu8IPNzVpkteovjx-ArKbjVEn4zFXAPBugr-MQqxLq4IK5_HcwGwB3wh7uFi07A&h=pcBIXEBIp5Cc7OxKVIDeJlSbpnP4NkcwvV94GP7LMNA
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1393"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: 83126266D6C84089A16AC59F4D238178 Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:47Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 383.345417ms
+ - id: 19
+ 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.App/locations/westus2/containerappsjobOperationStatuses/432e8ca9-6e5e-4b3c-9d51-e875da3cc93b?api-version=2024-03-01&azureAsyncOperation=true&t=638718454125227079&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=FHGXyNJe7CoJGCpVL-sqEH4mHaO8Dydf9ApICseOnyS6fMXCjeloIUB4YssHiCY8ub-qbQxmP1YyBnYuvV3b4AF8t3ZyOPHENsvMydFvDdofyrmwDX_tAeU4MT2nZ-VX5zmEoH_magAqIlZrE4mHrm0pddN6TVrefVbdPV39pPesX7IPzpGTIZFy6E7zmP0wA4g1b2pQGq_f8BiPQeo5nYjyNX1kxjtuudtcUNTtvKAwpv-8OlVnuTRALIx5Peq3yvoyc02TayuimulExb1qiDBwu8IPNzVpkteovjx-ArKbjVEn4zFXAPBugr-MQqxLq4IK5_HcwGwB3wh7uFi07A&h=pcBIXEBIp5Cc7OxKVIDeJlSbpnP4NkcwvV94GP7LMNA
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 282
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/432e8ca9-6e5e-4b3c-9d51-e875da3cc93b","name":"432e8ca9-6e5e-4b3c-9d51-e875da3cc93b","status":"Succeeded","startTime":"2025-01-07T11:16:50.0579233"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "282"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4EFB6E95E3BD4ED1B9B9D2C22CA63CC7 Ref B: MAA201060514051 Ref C: 2025-01-07T11:16:59Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 336.022583ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1391
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao","name":"asotest-job-lnflao","type":"Microsoft.App/jobs","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T11:16:15.2721627","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T11:16:49.444499"},"properties":{"provisioningState":"Succeeded","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi"}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/containerApps/asotest-job-lnflao/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1391"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3D9DA363EF834F4E967A297AA5432B52 Ref B: MAA201060514051 Ref C: 2025-01-07T11:17:00Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.101649083s
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1391
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao","name":"asotest-job-lnflao","type":"Microsoft.App/jobs","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T11:16:15.2721627","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T11:16:49.444499"},"properties":{"provisioningState":"Succeeded","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi"}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/containerApps/asotest-job-lnflao/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1391"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B333683192174315A630CFD201B9C7AA Ref B: MAA201060514051 Ref C: 2025-01-07T11:17:02Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.143825541s
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: DELETE
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationResults/042c7592-d446-4121-8bb5-76f36440347a?api-version=2024-03-01&t=638718454278822050&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=XJ6y72CCjY3cTQA2dlZN7w8dYH0ogJiXdIZrl9P_s2CCJi6iIQ5HNzoaCJxnWTLYIlI327lcrVaFjt1_-UwLxoxNBQIm3eygFnbQQ3m_AsTjEyCzprX5Gvu2DpKxEME8-iGemRrGz28dYzKDtdT09RIrMBZPx9QMprhfpgQaIECLAL6Xq8uLkq9vhwipfsR2EKiEXaVAUMWToKM-INDFf403SaIqW-FOw2gZDNTdAUp746xQkeq6rCQ_AyW7WM9V4FWognqinUNB8JAoBmD2-EcLwmrZCBSxCyrUlTYSlG59qNHtlL2AHY0hxIF2iXWmpL6puAUVX1I_5qooBfZ0sA&h=d05K1jBqy8AkZvuhnC-wTzofe2-nabzbBinp3Ot0g_Y
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Deletes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 41BF903F88FA4D11A5AB621F6206A184 Ref B: MAA201060514051 Ref C: 2025-01-07T11:17:06Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 1.579503958s
+ - id: 23
+ 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.App/locations/westus2/containerappsjobOperationResults/042c7592-d446-4121-8bb5-76f36440347a?api-version=2024-03-01&t=638718454278822050&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=XJ6y72CCjY3cTQA2dlZN7w8dYH0ogJiXdIZrl9P_s2CCJi6iIQ5HNzoaCJxnWTLYIlI327lcrVaFjt1_-UwLxoxNBQIm3eygFnbQQ3m_AsTjEyCzprX5Gvu2DpKxEME8-iGemRrGz28dYzKDtdT09RIrMBZPx9QMprhfpgQaIECLAL6Xq8uLkq9vhwipfsR2EKiEXaVAUMWToKM-INDFf403SaIqW-FOw2gZDNTdAUp746xQkeq6rCQ_AyW7WM9V4FWognqinUNB8JAoBmD2-EcLwmrZCBSxCyrUlTYSlG59qNHtlL2AHY0hxIF2iXWmpL6puAUVX1I_5qooBfZ0sA&h=d05K1jBqy8AkZvuhnC-wTzofe2-nabzbBinp3Ot0g_Y
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: -1
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8B59B902A76A44829C1E745427751B29 Ref B: MAA201060514051 Ref C: 2025-01-07T11:17:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 204 No Content
+ code: 204
+ duration: 787.035958ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "4"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/jobs/asotest-job-lnflao?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 226
+ uncompressed: false
+ body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.App/jobs/asotest-job-lnflao'' under resource group ''asotest-rg-lazcos'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}'
+ headers:
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "226"
+ 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: 2816B97C480F4FDEB4F3F158B3A98DB7 Ref B: MAA201060514051 Ref C: 2025-01-07T11:17:33Z'
+ status: 404 Not Found
+ code: 404
+ duration: 391.919417ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos?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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Deletes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 105EBBDCD033469186610F60BCF32955 Ref B: MAA201060514051 Ref C: 2025-01-07T11:17:34Z'
+ status: 202 Accepted
+ code: 202
+ duration: 667.671542ms
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454823335555&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Nnk3HL_a_WM_0ePbYki7zRWcWLVrdDsvOcy-hlP_4fOv2Otye0MVqwIjM4RjSV1vj_oQgx79KqeHhIiGNwnffXgOrc7QCSiIeZo7b4yV3Qv3TCvuywp0aHQB72OivnRIIm5VZGVaGroo1FcHmDJ6-xSXshKes6W_AbTeNCPFg1u_pPNt2qddtxqGeucS3Lq1bGwHDbO1vVb_FtnQ_ofQIAotFpwft23AP-_P3xcPJ1xXIzKgWW9gEtAK8m4rk1M-Lv2VzjBBorQ1XzGJ-W2RtQFZ2jqaHuQYhhpAl3hcE64sAfNxV7WPlCbmLN2AjQSuY2yYTPzpCrMdOgD4sYuKuA&h=cnHtlQyeXYk7q0d_2Pip2HHjrCSzZaOr_xwhIbkVQmM
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 80390ADE01224873AD248C3F73684D27 Ref B: MAA201060514051 Ref C: 2025-01-07T11:18:01Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.3062775s
+ - 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:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454998789610&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=y9Uot4CHFF_4TRNcUdqDuizLXS__lMLDgEwI_Ra37R0oIwpigzvLB8EZysp7XD09wQfvIgd9T2lTZKY12NkVZImUWZKAEvfCLYwXMNBbmLVDJPf7ckvtmmYqnF2Id2Shdrd4TfaacT31i8uts3KYNOFOUuVNM_Xtw5NowY_VVpyVpl9_DzAHHXorpXy4DgQb7E-Ty90NlrNuGGxAYuD6LEfB8lZHhRKFJRz0QTli8Z5T-SnMt_niKse0hi7CAyv6I8M2vp5dQ3b3RdBxkDlGSQABpMMn6h9hw7LwIJBnQ5piUX-xPApi22f4txRWmKutX10QIwU5hhrP4iL4H8M_1g&h=m9HpvC2Fi6D521fGBRjUmetGLdTiDMHYR4SlScH7n-g
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 99C443CA047C43849EFBD257E26084C8 Ref B: MAA201060514051 Ref C: 2025-01-07T11:18:18Z'
+ status: 202 Accepted
+ code: 202
+ duration: 300.230708ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718455174993025&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Njus5ggxT3lQy3ZMyq0omhDjWxq9KajBo6T-INQti09TCcqCyQHl4oqKZpAnW_jGUvFqkfhgWdWu5l6j3rZ0izogbWxEUuGpWIputl-liFdXHZO3owPWfcy2dTgFiAmw1l-0BFDPGdzrJRYQ1CVHApnS1DbtN9lrcZrBge3cK3Lc41829UaQEzBwlp73p-BNzMAXL7w6H454rUXl0WAV_WB75-GqPERP5dWuUt4s3J_36AeolM76Oq-J38BgKVT_9bPcjfIFB4hYSADE_FzjpGJ-bMk3SDBT532NIqJ0qHBqJg3om2SG9xAUT2nAIGKlW0iB1cnGQ9DVnrdn9u1NBA&h=rUIAeihyIEfAos1IIkGQAwwxL68gQMZHMcy51X8d3gI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: AA260B0BEE904750B89AB07CC94B98D9 Ref B: MAA201060514051 Ref C: 2025-01-07T11:18:36Z'
+ status: 202 Accepted
+ code: 202
+ duration: 206.456464ms
+ - 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:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718455351891582&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Xjnrgjslu29fHW0FqLTBHbpCoXC0YALnsJJQXdG_OWqLW1183Zp-FgIEO2OxBn1qog8aphB1rxQFXhZ7J32C6O4p9EhDaEVOo_tEXTgJP81NxqPjdVkrSYZWbB226uMMwZ9_kFJc3wnmzH_Xavz8GBgR7T-BCp9KyBOF9iuuSkhpwqbOaIkgMdHytj7eAgdFdQheJy4ysM6FRKtqe8PIpbUlrMxdWKJ6wsCjuEt94mvN8wu_GiTWLjaZQQ-opB4OFd8Uy6Y-6cv5M9KbaoMqWAFYdCMoUyW1Y7lbUXJNEIiyWiLZEzyyeEtwCBiVQDZZUxfBxyO0q-ptzac4ise5Vw&h=wfmCk3H2LxaQoNLdbpxuWBfC96gAs_-AFAEa33JFQ0I
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 1CAB7E06D233450A8939D25CEA3B0DDA Ref B: MAA201060514051 Ref C: 2025-01-07T11:18:54Z'
+ status: 202 Accepted
+ code: 202
+ duration: 376.8796015ms
+ - 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:
+ - "4"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718455539020700&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=OE6zlCbnPekLuLiyZD4hAG2iYAJ-3jJQnh2g1pzMLNfG02CEwoF_bJHuNA3w5hMlHRiL959XCX7csG99tnSl5iIOWVSBZ_NhnTsSkgG-4r6shn-q-n6FMWMEXvntfFEFf23TAhZbLzQ4vgH2wqpTOwZ_y3_K-dy_fwVifdtlSs7OOhZHUrt2E4DWJ0E-miWjr1r7S-WF8gcMipGR_QDVnT4zHmzoyA2qhIBsszRdSjyB7UKVws2g04Svz358q9Dasjgxka1DfoZHkA_rEG6OtY37hdgy4iKTCETXPbOTZP-hApryl5QoBhEb4RQXuEYf_ha8L_uLmusCluxVCy4Sxg&h=cY2qYcwsA5tB9z7UsGstAbUph3EtM4EhbIbBT60X1v0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: A77AA559E87247B28F952AE1BCC05F76 Ref B: MAA201060514051 Ref C: 2025-01-07T11:19:12Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.251295625s
+ - 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:
+ - "5"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718455720780883&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=CDYNJp8daxHRgUA0ph4iIlULG5QaDrn49ePMB1QKIrDrV0gBFeRvi2zbpKZgWhENizgqUBvE8yhwZy_lR0LIoP7UxMSV0CH7VEbQ7zrAlkdtpPB8_ETmW7f4HXy0if6Rgty8dD4H3P_Q8ObfhBw63RLc6KRU9wiPiwm1YCUmtX0Tu3DbqiAj4aIgjBA0HbcUhMTG3c-KMgHQ2sfXCvZhMHw73HUTCmAtO587MuhM_TM0o8WLQK201SfHvhanOr16ULQ2vVgSu9LqmD7NiijbTNVjszBR8Nu-sHEDBauZyDCGgf8rqnVfPWSWeLMv9P8eQY9MHuXU80uss-WjwTytGQ&h=oGrWpFKpKPu0PIM3ZDaVW2ZnzP6H1-YoIqgKTLmhAwQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 6D7CF089D1404192BB5650FC238C53FE Ref B: MAA201060514051 Ref C: 2025-01-07T11:19:30Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.372264791s
+ - 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:
+ - "6"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718455899226454&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=u1zJtFq4Aci9m8GcQpFF0VptOCfQLJDW_se0a1ah9Mpc9PMcmZw5ybP6RbEQ7Li5bmxKuKwxyr1FqOqZDoDpXvF26vd1Z79MRDSy9tod9Sq8KnIiUg9ZGB5C7iufoHL2T5Hj69H5hhsA8QPKzpIuMue0sogWRnpeCJX4H9s_1PUEyVPRZN5HeLQj18hylo5-B36TKGQXnqDt0f4OWeKTKFivntGadjPg0xPMdujY1d4MlUv-aKEz6lfSsMqVjlGmjtmfxwmavWnuadnIkEjWASy2vhrqftmeJfCDivzmzTrg9aBKXacldozmzSQoORHfw_nazRNaO3gH2xBCx6aEng&h=N1SXovtJgoZFH44Q_2S2zFfkoYYDxIq-rv6kvOSAyfE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C63B7CAEC71A47B0BAF2C747D2478FB0 Ref B: MAA201060514051 Ref C: 2025-01-07T11:19:48Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.266359958s
+ - 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:
+ - "7"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718456077277587&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=BeBsgJHTJmFkW-jwMcIYYOTbJLoUtRjnGclmhJA7DUcNRQ71cmR4V9HSvaxjvpputcoMo-9XiYqHLnQb7YTQbRUNuU5WqHtqpUhWORCQ98NwdcSUPIm58dSKHEUOpqN4N4juZ1DXYmr7pbtV8TkD5TThntbAs0yylORGthALUmxbMTV_hII3l8kvQMvX9uuRQrYld3pA-oxXe9hmtwIfVCeteyFT0ZFh5oA-NqxaapS6mlnhZk9H1ySt2yfUHp4xmFufcLUTHJ-2114k1oNCttlTy7IPd4cYOKadw_YtUHDPFyKtO0mNrm6uUMGB_idCGVRFiBYQVUWr1em55wBWJg&h=cv7ToK5aNEEr1XVft5hXPjQzqZfCZ50JU9ixzxSrrsk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D5F6DC7912E7404183F58267410D6356 Ref B: MAA201060514051 Ref C: 2025-01-07T11:20:06Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.226502833s
+ - 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:
+ - "8"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718456256756082&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=O1sqvD_oTjDX3eJdstHZCiTRwe6EuW09UfsS9MhwMvI6zFUQopXL226RarebM3Zepwj8D0aUX-SbU3QVKxkenT8EgmiPDEGx5lu6N6kCCt2cUQNjhXkgs--dMRE4KRlIMt_5iawqP1oPp41upH2za9KolS5zbStclIGtuUPnA_zwZ8yRXSd5ehjBjPWhT2hetALzxWqeUGpFtwwD5dMQ7wKugVMeUEW3y4IYg-xtd5yeF2Pwdf5vy-Lwy4icAPSwOAzAGRq6dfJN2G_mhKHvBNYvebalz3CIXJTXvEa7j7tY8slR51ypdR3-oOZquAKUuQbrbDrAA84jsc6_nLeUZA&h=u2occz_0SK5enLbi4dxM3s_cuKA5wei0nYWQeddjrBY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E5E34A67160B4E50BBFD2F03AD101496 Ref B: MAA201060514051 Ref C: 2025-01-07T11:20:24Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.193095542s
+ - 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:
+ - "9"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718456433002656&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=RGbvozTxCbWA7toPLOPHpcIprl8-IXt09CScIR8wH2pJtHaekCqP-JDEPKJSqeY1yLv_zctl22zXtjSCJYCVjWLUEjFm-by1TOhAPbl10ies_6axHJg52rJuaruCLOA1bviReIz7wK_eQ-NoVsWRwFqfkG_f0h4W90TuwtaZBIvFpDOP7e76Yp8DYfXCJ0BTEtnhZs5S2TsHmvJzJ54p6VVMcIx07XtIo-VaokobObho7nCV_yqdxjoYJSXEhCG48loSUqQtARyZRwDP_Xzs6WI7yfDB1LX-nG1IwHpaOphVXlIl8flL3IN97C_K1YOznxHHws60VTVvnxXGLxnoBQ&h=nfb4G5ULcz90dhvBZ9dN_YBJ0EnT-bzjwpW9hpsoWlc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 13DC9D7E59E04CA08A5D3F71B16D2FEE Ref B: MAA201060514051 Ref C: 2025-01-07T11:20:42Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.337638917s
+ - 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:
+ - "10"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718456609713196&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=LvRJDadvsVA-72131qJUAjaEA2ruEkiFlOofAsuutSGmLDgIGPljytsK52X_Hy61EU6RtReGl19ZWBxDHH1D3vruZtDe8kc7kqs20wkMiJBSaBsikqqsUJpVcmrchMcoMWrDyrGiPgNKYFlMMeFt0lanBxCuRaoHfBUX9TSyAGuV25QhNPXRC5Hem9DAYUXW18Ci9vsXvjTNspu22lCdBjCbZ912RPitB5gYU5VQ54iKTr5StNiAYXj_2yuX7eIvGh2-fOzmmD0xom3T-V_h_tC0u7x-PlDwRjbQ5wTofaxeLd2J38hnrsnLLEVnWxoF71zC21-ba2RndahsNgTQyg&h=531s3pcika07FtyZMZlDdxQ27X2g1jaW54snLNwH6IU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 844411F8AAF14FBC80D5F3B67BFC5D89 Ref B: MAA201060514051 Ref C: 2025-01-07T11:20:59Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.271228125s
+ - 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:
+ - "11"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718456787206599&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=d1M4OMDDXLjstG-bNlweQLshNczx74TwH5I_2unnYHUzgvNTuM4te0WD6lfn7a61pI06mOaSgxXzqQvjxv85y2gGauvcOx_1ZL-E3WsF7uGcs6eKDEKJCSoUIlXqYm60V9Rdv4ASJsiBnsQcSn48MTL0mTh7n-nq2AOnXaqfjvf_lIz6vHHuJQ1StWWFr827HdzuSz6gNNZJQ7mQQ46ecCGQFeeSp8yHpKnhTRU74a-xgRyA3p1WZEt896GV98fcQzKSOoIJAXy73QM3L7GTT6fk4T6MKfW8bl-ptsSymhn7ysfZd7VG3buiELYmPR4RWYUc5YuaIwqObMV7LaE3Sw&h=MwLHOuN6VmgwX192oTVSu6_QFmHhm0ItLAIrC7XwIGU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 38FCA92CEF2241AEB937E14715173E75 Ref B: MAA201060514051 Ref C: 2025-01-07T11:21:17Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.2361395s
+ - 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:
+ - "12"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718456967569918&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Ljo9X6xI4KpoQhR-YzJAcG9fUmKAEn_1O93K4xeGkIC_hQ3tazMj66ss3vYP1tzniBy66goskMhM8XgZyZOWh1lPXZFBIwZbwvR6zz74UmExWrknhQquFhBdd63Zc2W6AbBu3IGyKT8X6kaT0FhecYCxnUe3LzSNK69redZwfu3bx-2SSrCbX5tgeEqGPiFDN7Y0QRtsMCg_yN7CKarnO1u_e4wA0ZnBvSi09C7lGHbMrN3YMJYBHvqMOuf8VtwNfFAyBNazfVnYD-iuy31epgtBANdMfhhRU4Nhk_CajS1KX0Ru5OiosQY2phesIAuHRp2IqKYY-nd7hmnMTSZLqw&h=lnrnOVRIUPkATYhihA7P2yddaUarIKukFNIX-gGCNQ4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: AB51ECAD121841758736A2537C30284F Ref B: MAA201060514051 Ref C: 2025-01-07T11:21:35Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.323586167s
+ - 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:
+ - "13"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718457147222899&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=IcRUMe6nQKMt9-ERQZ6jAc5e0B8WsnvRPLxEeZahceVK7cVpy5H3m-T2IUamkjXcxEpOd_XneSJBIWYZ8qBIGlEznLWteQrjnCKHkd-mcuRdjF7CdLKte0_oTUASMviUxPaIvH_YeuFPWBvk1ZQuZFIGLRWRbQ_qhfPd84sFp4Ll4fUev-pV2uJYsH1G8-ujHxKq6PubbPA6q22KHifGesue-jmCb1z6wmGqKLD2FzFvVLKDsc19kN90uOPLqIMV3MXsFv4VHAcbz8UF_UhZFImlk2zsWPI-kpJAKDGO3m8zaapZG6InoMyImUySI-LMSq2pSjH7ciGQr44K-81cqw&h=ibY0EJKKX4ztTD_XJPHPpXEDAZ-L2FK91Y-qekhL4pw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 05FE92D596924B16B0E5A4D9F0040814 Ref B: MAA201060514051 Ref C: 2025-01-07T11:21:53Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.234404791s
+ - 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:
+ - "14"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718457323841639&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=ypVPm8vvW49rQz2AXpgZQEEMHCd6BO4e1sPnZ-Z8NbFHU6DSJB_ol9Ztw_s6qiFcQ27N5hEV1057F-4d6OEyKNeHiXd4paqEWeAyjkYsCJap2yF__4CaEaetF-rs87rQYaLaFtXke6MGz9dLs-wl2ibSWFoO0ah3weIBnkFsWcWBZNesMJ2weI8Lb54Su9jsHbNTf8PpivR3X4kGyGHOklSN2yGKDNrWceYNVhgXpxKiBQj4FgQA7wFKCGNaqKKhJuizunnfisgBqZXzgtP7oyrXkLMh0NTotP3cP_tVGNBUiE9w0H8d5q2SgH3O9QBusevKVVfdJ1DM1R1BJTwuOQ&h=D8Da4Fs-hyq1_1N30ffPml4BDN8_i3sFoR4FeHPDVis
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: DD1294A031A84264A38CEA21A43423AC Ref B: MAA201060514051 Ref C: 2025-01-07T11:22:11Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.308060958s
+ - 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:
+ - "15"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718457500168305&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=nQ7vOWQ4XA-hx1089SO3xJt-osi-GNIIWr0cbFoIervOF83zaKsKgvZfyyW3i1Y7THC4ugAummdNPNHqE1Q3fDoiG8C1Gc_lLjvbyAnXfMWfjkfLnXZ__06AF-kCO86c2-wlT1xkaU2op4_zpP2MZ8JPNbl9gmppDkEZ3pWWXbWOSWOGXaDlO8M8x7vslXzMjVbUathOjR6hj8OLrvocBC_OxmUPeDiVc8k9qBYCS4xGdlPote05xJ0ILHLbHLrYfc2fprBtzZsNByEwGOOZ214uykpcCOGVnvTJZkmEoa09OCWiFtBDt_0JR1U6Vm0B_oBjgtqCbTQS_rP-2VffHQ&h=ddI_1bnXZHNRmeLH6Ty9wqVnBgTld11FbUcGN6rQa6g
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 672C40D087924C1CB42ED1378F13B7A0 Ref B: MAA201060514051 Ref C: 2025-01-07T11:22:28Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.274128334s
+ - 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:
+ - "16"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718457674691773&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=MIo_Celu-dA8q-sTYbCvEv1qeBIk8MZ6Qxo4qzRJwJXdmMA_EdaAF3u-A_fFpS_wbSmqQNrQ17zhz_PXOGKkZghsZ-g9P8LkiT_0U-3VwIfj4zWtcdejU0zgbdcngi0JihOuvTESZZvMnjNiTRJ6oc5MVNrq-ARy2c7V6wwefv0al2Yt0tFTNh9tvEGI-p86W6MQgjIaBAYH_KmiyvK9RvQeEs4IIghb6CzZMuSOmTpjXnymtX8KgMdlRFPrHiveteca96bFRB8AmrZOXGQlcGKZgDkSVtGJz0uHy3b5ybfNGK-qkf2ZSAO8UYDqXVcf6j-KBCmqo6fl2tj8tJcQLg&h=sQLOt94JrY-MJR_RQyuc4Iy2ZNAazUG2Ke4_5FHvz3E
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: A1D4390503C2440085E0B38D7F692488 Ref B: MAA201060514051 Ref C: 2025-01-07T11:22:46Z'
+ status: 202 Accepted
+ code: 202
+ duration: 748.931083ms
+ - 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:
+ - "17"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718457850500514&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=IrLDIuHNUamhvBf_uUGqKg6V0F3R5Yfd24VcK5BbYzRCa0upBRDkFjH2zg8qk1j9tbuqWbWATWayrNmkhfk_z3KBf_s-a9V1zuTNxg-IiHGTI4DkAI9AoCNmjlP7KK9C22NG_eWWF7i6aFGJJQwa8vGIPLyrTn8Qm699I6nFoqplQDtkyO2wCbdWpAbuy2Nu3jvhlHztCsJctjHoOsMiozmY099M7iZbdFF8_Wmas5rfqcwAZIlCqX0tSqBZuFJ9Pf4_ZjBzMZI_L-AfjQUucVM1EiCrUNlsv22ZGG72UV4Gmjk3EMhK4mViZ0gz1JfXVgYk4clT2XS9RWOQV16PAg&h=aQjzKpOWNXSVwI6hTHBMTq84VjjhY7cIy9th5xTP9VU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8FDA994685F041BD93D34D1BF476C516 Ref B: MAA201060514051 Ref C: 2025-01-07T11:23:03Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.265791625s
+ - 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:
+ - "18"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718458028783136&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=pYt8n1Bt8wlIIZ9-o5YtIc5stAdCZkpseoYlOD20dykMstRI4caxEhRjwlOy1zwTGzEcataob-cOfSuOZUmgScM66odHNN6Ouu6Gy7v802KjM_XtEyq7FfTJH66rKqvp8pxjtAtFZkD9EVou90sJkn6k8F9xR2IS9JJfh4QDzgFgAUIyfrDQc47RnGH7S8DlirN6LaOkk3wZg8F7zS4tx91PVvh3rfKOn3yIt78Mzq_GSWUOjZZVk4tMP5tYYtyJ9yPVTR_dNQC56z0h_x9pdR2YQDITIpuBSn850ufEaEP20u5L1If3UGuG5cKlGHKbaLXRonMFRCmys9fHyXBRwg&h=z8YJBsPEalG4YqonOE4MrqbMhPmlIsbN1ndGTlpaSmE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8CF422738A564D048ADB766690FC4CFA Ref B: MAA201060514051 Ref C: 2025-01-07T11:23:21Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.249099917s
+ - 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:
+ - "19"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718458198952286&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Rfo4pLKDlA5xgZMJ6ixu31s6PqA31HO_6El70neYaxD1NfrzemSJjPZDpZ2N3DtcETcyGEqCkBtq0VFOTqTrgL2ziteBfLpPr76YuszlVHKNHIlIL6bho-05sEuUIBoxPuda5Km8RmXSC0sw5Zr6BnED0AmwzRKRRjwbkFMVJwAH4BV0sGGo5euzEv7Ga01-1wJcI3BEsVftTEiqKn3pgKNYQ36mCP8QdXW2WJZLi7TONfDh0CpIIDUlm0N2m1efRukt9JnCfxbCV9iEhkfiYSTjW0JHpMa8xHDEx1KhDEaBz7ypwbTraOF5S8ihOCsqV9b1v_N03IlJxUkbNvJaXg&h=eMHhOzBe5cTLkyNNlJUsQdfgB5Vqq6rZSIjX1AgrU7U
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 51211F7E52C4413CBBD1580D87D02190 Ref B: MAA201060514051 Ref C: 2025-01-07T11:23:39Z'
+ status: 202 Accepted
+ code: 202
+ duration: 843.074791ms
+ - 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:
+ - "20"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718458370409333&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=HDb3DMEXrKBjrl9yVnmeweHXijcYnXTNlHL0EPC05WXFlUFtlBI8snidtxxclvc8pPgToXFivxOQZAO_hXpufBIYeUeAMTRqFGHm-jFW0tXfmiYpVo8KmjFTt-qZMglhKc1qQxROdrhPmoRvzDphI9gVnhcGycqJ-CVb7Fa0NU8Oeh6bOHyGIoe8aeH5NuNjMZisUL3wI9QEK0P02pDm7lr0Cl-PEQrJB3W9yEnjNdYggWtJ5N1SGVSzT1KXseBIo396ifBaYDo1Tv3at5GGLMtHFKasMlfcdGirV1OJfT1omiCTVYjeSVKOfyNu-z6FUJs3dDGDN6l3Xkh2x9slqw&h=zft2ykE_dQyoVSc4Odgh8ggNdjD3jAwgccA9PVspF_s
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 46AD6EE403464EA296D8105AD9BF8B5F Ref B: MAA201060514051 Ref C: 2025-01-07T11:23:55Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.250361875s
+ - 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:
+ - "21"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718458550449904&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=iKXE3MImc1ZyG4gj4LU82ZL23HcwQW5TziOq9_2B5qk3owcQCHqman65IEyDbyW1SqG0EWn62LMm0Q6waoSCvXk9uCCXr2GDDPNoL5A76tsvK_QKGd-ixlZlm3joJPrGPlfA0UNNa0mUvGPshzC7ZuOieYmcK4FTRlp6PugYKg0Qlqgudd1kQLkgQtuyEg6KTjtbXpga5D_GRNFdMOrlziq8u37oWFf6qrQLvHcw4zUQdKqjxCsZBPzJk97Qf1Bj24tLz0ok5Nc5Vss5JeO-vb30vAub7nVbIH6-po6QkZNedn-mdNiGMbbxZccZNLyABXFSXvqkNazH-5HrZvrCUg&h=_TVZCkTOUlFEd_gnaSV62wutw78K1XI-lhUwcfzPM0s
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F47377AA2D0E4A388765F6B16A464757 Ref B: MAA201060514051 Ref C: 2025-01-07T11:24:13Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.209113917s
+ - 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:
+ - "22"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718458724712337&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=ElGxfOf__0tAq4WMrYjrvDC-kAF8QVhqpnUAaTLT2VL5k-NgzJOSnkkhfRmWgI8zb8Y3RJnovP0qMbh8Sed68822fk9hiT4S5_ZZWyHqBNQcFXg2Joht4KR0xKlwRh0eVdZM10XrCekfvFE5j8XA-j45H6SjKhuUxqxjOFsRZRnHXfyNCMBbsxq21aoT8AzNmqVZ_4C2T6yFu1hSNtDO8ixH-soJOD5sZZmYdYDV726aKPngrXy4KwNSAne_O2yMivOfpNfc_GWaLfIA774hs5gKZbobgu5asOG33yOygJD4sf9fHuoO-m4KUelslEZjtD-W99nrvZd6jss4LRILKw&h=E67KJwb2UWdxHgUTW-kl7OhGLpjDREFypHyaVLRO97Q
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 146CA8B51DED4DACB034545055493928 Ref B: MAA201060514051 Ref C: 2025-01-07T11:24:31Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.22617175s
+ - 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:
+ - "23"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718458908384147&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=SkoDPvRn1E9BC1bRCkKx5dalLYvKIQtkAhsldZR3Ul1n1rwKGYSPMX8hTz-0OGgDT8cDaQ7_ld0p3GCKpnx1nCq4NWomrqp282qU9lDkK2wqwP6mY23s3Kiaaj3R2Pttvih5FY1UdfjMWQx63GrbSIyt3_bC4e8ckwj_Xo5OqnexONtOJRQ0HKoSv-0gGAs-AGAfgrfJDIcjB8ChCCEVjeJdiFt5rUiiX16j6miCyzZpzgcA_fsK4pmP4GRU-4fGV2OdkyhVMFC-vZ0q9oo20TODnV24f_kkH0x4T2PVuJgE65tonbHjnj4MSUU0Al_f16evpzbVO-r8JhKr2fFNZw&h=EvIIOtzMAP3XVOAYTEo7YnVRfVZvqntrVqY0nhUFMao
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 047B5CD29A134911B569DA64F298323D Ref B: MAA201060514051 Ref C: 2025-01-07T11:24:49Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.285857667s
+ - 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:
+ - "24"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718459085829078&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=fneLksYJ-Xl163os9LMMryJgn-WnMIFHNoSFO_rwGPwA8wwGMculAcoJl0BuRW1qCsFv6DphJlUwg88lOeYY8eKgW7r_X2aE2wnYFkG1Y6C1ncvt41CSY0hgadp0YJa7LG5rsfOoE1S49aGSaAdX6LXjcfkAT5GT_r2cOldBjv-gaMSD_YDsr_IfoL5-609z2p1-nTZd_Q50Qlco7VgUHcA7a507i_Qk6iW92Xqt1roVlG1UjHAatOxXh5U-BqAZA51c5W_ZEQP8kCwV-IcXqorLVTiRFU0Lfe97PT7MMF1nliYXfW2y8TQ5i9IMCAsnfCtGUUrkPoZj5CwxHqNSPA&h=fH2WTUd8H7jp3iouw0X7KO6Gx2QUzKowIN2V8aMIHcI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 77C070C2DE86497AA9CC89B13560ABC5 Ref B: MAA201060514051 Ref C: 2025-01-07T11:25:07Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.256866875s
+ - 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:
+ - "25"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718459270536150&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YzDWyZPIqMi2972dJYEsZIqcf_U8XW4n0CrxbJQnhHpfQLWDrO74OwSn_oQ4T6Ic3MZhLgO6jAwwn3W3bRZjfX35UlrKtig1HYrwLEiRCZSkp_oD-YT6-ECq9mVIrCzaDEWJLUxKm0yI-Y9jk9WVI66C0OwLarJ504VFam22i-SkKOhTNv28lWtdNHWYbF0bgqoYY1gzA8aj1SKZNbd4cexhsE4bxHv1LRYvqoo3S4pEMFv0eQW0Y7MnpevS41gmDncz3PcRDRgqTJYsei_qQa4hOdfIkwlKxVC_v38og65XEpDwml3TF3-a5xMADNaZEr4vnPwuzGBqwh5sNJnFLw&h=M6K4PGl_PhTNIJOS3rJQTWgQRtDT4-FvwUsx7I53eC4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: DDCD47A09DBB4452A52176CDB1069F28 Ref B: MAA201060514051 Ref C: 2025-01-07T11:25:25Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.221380417s
+ - 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:
+ - "26"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718459445277564&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YopKvN7if6yBQIlwfJvrzc_Pu9DhwGRCJ408GbM919exI9z4s3mRMFRcVkMUmzuF0qPOHqmkZV8aWIJPwPKL1vtdhA_epG0ziTC1xHiTdJOw5pitP2bjuC_5oqAT47HGn96zPW6vxNhpdw9PF0INYMMsVZLGl6n3LUZq6hC9ZXjWR79E-j_4-0T0ZwQSP9ArTz-RmSF3aD2zKutWpQsrm7n_cRsNE_3SMKbzz3uLeH2aIqeYrMhEqjO_gqIfjEvr7n3tL4kWcXDdIdwqND_Nz7RyMlw6rnNe69TRbAK11poM6HPngjMa4q0_aQwp2wRUCsQzK6uK9JaCtpArIROakg&h=M0SI_m9Fn6ITbgtZ8L7LZyTFQYVWBdrOeMgWl_QAY10
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FBCFFDAC45154B1AA1E06F00479F5BAB Ref B: MAA201060514051 Ref C: 2025-01-07T11:25:43Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.319719708s
+ - 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:
+ - "27"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718459626843628&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=QdOwyVI4aynvc1nCHj12gmAFf22yqNM5LwKHhDQCsO_fAjh2Hz4pkASTaVGhq6TR4U30vxY9i6D8Ee0FJZHBSjFYU4vAR3nLsX5bBJuQrc0qAta1x7PD4Kkltach75xdr7Xao0VRHKEut0At6TGJ7a1X8a4YAR5L0XhHXBGXY3tvD-xB9loFd6o8G5Wfkw2V9F-S5v4X2OyBnDR6L-8hmq-95MEtESX_3lQzP0fxmtsl6LAcXcOAhV_Vu0G56PijOV0VAEEvYHjFlOH-diy1PnsQBU3yzZC6GDXatFqPm95FQTRUchT7fR2Sh6V_qYL2IkkLe_L33CKcypx-7NWFsA&h=qZqlfjRfBMMrSx7RT4qeEPpemmZ-9cPUvSFCbvnDUC0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: AD50535D45144099B51108BE689460AC Ref B: MAA201060514051 Ref C: 2025-01-07T11:26:01Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.215970583s
+ - 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:
+ - "28"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718459801145472&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=b-z5VZFziDTBxotI8iWlbF_Bc6Pr_QX3bW3iGlAna2FcvmiimICLYgMs2_nVy4apklBmgakh2KQK5BZoCOW6MdMTN3eMf7qrLhDwZaZtdE-0D32ecw6Rjy1l7mYD4i26GX1xwd4cmikHjbN4Cr3309pf0klLrJTW7ohryllJkpTAdZ1HqXChiuHCyrnwGg8o0vJ3Ah-5XX61ih_IYQ-rLFVJBZbkwoQiNBqxhWM5OJv03qAn5r7NQsr-vcO3pbtYU0j1MeXK1dapYK0GpRdMJjrhYfjN5agVcUXEGG4KEnh381Mau2RuoiHshRAdq2Hw3lGZdq_h14dlvzqgyHtz_g&h=eqy4TiZRm6iusygM8fMUu_fJ-c660M80f3Z-kxOPeSQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E89AA321C19F46A8930A26DFD6A2B137 Ref B: MAA201060514051 Ref C: 2025-01-07T11:26:18Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.247580667s
+ - 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:
+ - "29"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718459983519709&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=ltB0kxi2bJE2cA8H0m8DZsOsnMsBpH4noBSagmwqmbQ21ux-8N2buj3bLHJ9NCV4BTlCbJJcIxGNpaI_lKGQSEQYGPZJ9Mrpl07ELGDx_daDOUkS-Fv09_xscXXDo6GqhoIxg2U_hK4eNE8CvtpJGXt5P8cuBpxYd4UREuXanlY7gojuUzbWrEhhzsgBl6kfthc9Q9zRqcp_pQhyw_8xAELep-s9ywYYPVD7Yr2IDl-oHhLoh2MHVtGNW_oK5K5njbAVLUeOGjxPbaJ-3qZSWwngvGy2Tt9zhb9zCwZaRr603TI8CsEdyv3-EYU9LZgdU3Dsb_lw_NAZKMTqCjMPyQ&h=Ig_FGUAHdzTLtbWoSX8M4J4sg07o8TdJM6uv4FkyQk8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 47F2082853AE4AC59A1E1EEDBDCBDE2C Ref B: MAA201060514051 Ref C: 2025-01-07T11:26:37Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.300704542s
+ - 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:
+ - "30"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718460164760457&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Gsq8lw06O83tGXsiKjaYTklvgBKwu2gY80fHKtRf2h3k3ceKEcZlvHXaRTkmzdTaVMG2jDz3R872GlfsCqhHrQeAfSnbfotrJZQxOtC8Q_0w2t77cbjuf49lUJ2iIfFlH16Nxbk7Azw6_LxxycN7JotDyzjokCaIQ9pn7-3mCgudEATwb3IaKfjV3Wb9uZvvGm241PAeuCJ7_lSDGs4EVvo527BnevqLHB2-7mUlKLaw_Ca3SMk9S4wrOxGvkO2B4DGnkUgF8sQ5G55AtO8lpvEg7XRhYIKE9GMTtYox9qYwxtr6jn_4BpHyNQkSie5YeThS4xehdTCZu1Qo7Yg-0A&h=igy8eSFViEHAgNRBTeO5RFbIh7kti3DuVZ9Nqex8Kos
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8273B34D7A7D44A0B3FAB45E3AE02873 Ref B: MAA201060514051 Ref C: 2025-01-07T11:26:55Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.212478042s
+ - 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:
+ - "31"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718460339644572&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=PFJ_C3ODZgZA4HLGbeYwgI7XD50nlzod0DYABVGbPuVJe2gpwf7TKOod-6yA21htn6DrZI9yZO4_oWkaywNFMmO1PX8iaKsSXIN5xwakr5vvrwzLNxkjrMotfIr0ueF3ZnibXQozPSEqMjYqrGU-6iquMiaUBoqZ3QR0gjybCwupDa8kd65OCM8YSz9KEb7UGqm7etOmbeclYE6MDxpVI7y6ed8E5QBZLcDwRgmS-AD7AK8VJsAkr6dQKtsYNSoxQ6RDEKQN7l7-wposqT-hMk6kwg5saCiC8D2Ca4pMKXxi2i_ZJvMsrFxbVfilOaESXC9MorEhPmZGGzPz_kW2HQ&h=buD2dXFmSmiWzZZAwUbD6a_KeEdkTmGn3YOCnbCIzzU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2042FD2B9D944054BACD37E9BA21B6BB Ref B: MAA201060514051 Ref C: 2025-01-07T11:27:12Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.252579291s
+ - 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:
+ - "32"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718460514399967&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=sURI06KGHOmjtBgN-mQAcKCBMK-l31uE5_S74maGMgWXW0TvhTNCBKnRTnDfOmD4bhj6AVTiCPHBeQWOWMaj6muZm6qmIBT19Wwpc9_ehEkt8XbmoRqLD4plhvfAYv2t-ToAimY7o-mft27OBU6DAY4HVnvc6GULwp3hn3NZ5V8WYZpCH4yPq_05JKRm7Wv4afzJqFjDSgPkcfp5WO7Q69auDDcb3aI7buab-PHKKJaHH8-BrBPloc6rutKcJiUX9sMaE4tO7Fgt2KHEiuOvBMlJHuhMhO2wqb4l0SUGL9JuQPbDIlMMoPIpD_gIIb9Pfg3LFXd4sOeImqTVNRc6HA&h=UcE-JVrgzqrY8PRmG-LwMVGby97sCD-W3qZzXJX2yGM
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FFA3D540A3DF4644B15134DE283A7628 Ref B: MAA201060514051 Ref C: 2025-01-07T11:27:30Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.23064575s
+ - 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:
+ - "33"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718460691803942&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=ygA0nsy2YWCpuOwX9JKTXUT2ousf24oScJcRDYF4RhvBb2MbtEJTAY2hCnv7iRSKgrS_NT8dY9m9wrSpFb5e5eL2-Rwd2s2odk2t2kdPsaCTUursRsRTh00NdaYbgceW52G1ODF6EIoUwf8pKQY1mBAsIpvUryB3Z8udZ8vWIFyYf9qwrYQbqxPJqXYE012y_b-h7JkYP2uWnOMGPBZrGBzOTTrMPfBxMpiF_W5FCMZQRfAS7ccH5Nma1naCx4a5v4Y4WQfFB-KWqG8wYkwlF0DvLgrqHbxtdZkeVr8e5G9ZC9Ph513PVISjKdUJifGD4bfJWuAD3X1UzJGtuWRxBA&h=KRTnP_cSUkT-iUTkdb5Y53sWdMtqiuSe-y1Rij9HeM0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2BB148E453DE4CA291CC17B5D269B98F Ref B: MAA201060514051 Ref C: 2025-01-07T11:27:48Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.291550166s
+ - 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:
+ - "34"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718460876625217&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=0q_PFuydTg16JvGLlIiFHm8NZTGSvA0G0CtfQYsJz_uVsn0iDm0huMsOQ3zzDpqSfEFP0DQQqqTAm7TLpq2EIjFsw5h44mG0NP7h_GA3Zcs1n-KfLptrvwP7E6-qBcu43MwlmW4JL4P3JqN1HP0OZNGqr3IPKHyxHsmahn5PlYnSGpeVmrBwX189TTaly0ImsqKOZBnSe14HKnqPblwV0kAhPn8sUg5856CvAnP-27EHBmClEKN7RI2xodyRYNPZ3WXp3ZRIG2a2h79eCDtu2IpDVj5vLKiZdP4wvR-6ZkBndDxGnu9Ni5tF4u6QaudwFdnIbjzfQLRwAHXEK00lKg&h=RDqxAWJJPxaaZLdbUnw8QxYkGq2CFDKkBFQeB2i_rtI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 548F9512EF18474ABCE479D9EE2E6C70 Ref B: MAA201060514051 Ref C: 2025-01-07T11:28:06Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.248605584s
+ - 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:
+ - "35"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718461051960283&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=RkQJTiWZksC0uxvSFzQtd2LwYpnn6maC_IKNiylHHLMAGfGT_oIGYrNl13mA0M0QjviOcdiRIhNTOu6qeoANsVVSGZjJfHk71Pqvrpq41x8kdZbGtAzZXCLhhT_IYVfKmWzwa6lZhsiKqMP2gLXL9QhgqoDVczjtiKPqLFBytWxiXb-ozku8suq_s-c6Vg9ZPaoS6OlCezgeWNu_srEKSVRgFnWZ4cc3l64NjpInz5e1sLYVOD9RBKSozcAULEzEo3x1OgqDaK1AoClOBDWhkHEeNkbBGeCL_YGLkiAShqH69ub0SyvWV3qGcn-Y1g7uIpWLHXTQ3-ZNBnQS9wEfng&h=HuqO8n6K9zSNEwy9HT95wiydgYCRyJSpRT067b-OvI0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7C5D80424D434771B3E9529D0D92423B Ref B: MAA201060514051 Ref C: 2025-01-07T11:28:24Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.201690958s
+ - 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:
+ - "36"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718461224320169&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=TpVCoCCUsBUD3Vh4-D_TkaPr94_g2Nh3wyG0yb0Qb175g-7uDDaqf4E_1D7f7-WNsKJSFqkGZrN6AHCqzkWvatKj3U1Xti_H5OtQsFzA8pfXuMRqDnO9i193QSwwwSrD2fIEhYqKIjR3dFZRebf9L1csEtiGW5hibPUvPEB_0md-_g6foYQ5X3zg1mrU4chOY2MPcWlYIgt_4sqP_p7IIKpo60bBrsoophauUMBGQcx5iOojPM7yRBtrJrHs7KT7pAR0L3L3PE1EKbP-QbgPJs2aMUsO6BtJ70_2heFyF2UTVWpxCtvuwpylGIT5PXuGQR64Jwxosc5YVHBmSS3G7w&h=s82VNNGUcc21qpYFlp-NOz9TCl50CzF0KSyXxjHABtU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 28E021D42E714FA6A863ADAA8E16A5BD Ref B: MAA201060514051 Ref C: 2025-01-07T11:28:41Z'
+ status: 202 Accepted
+ code: 202
+ duration: 764.346458ms
+ - 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:
+ - "37"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718461394334396&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Ze-8FUoBKEeTo91XV8YwJIkdJe9mhbVKQQzj0pCz7KDn9wa-sGVNR3p3rSChXNHRJ_UXyVEavVxbPhfCFDJyipAcWk-NFoo5by1r_FLTOKOlN_3fGk2RkzcRrNlX3SeX9-46uBoM4PNpyGGNq65UMLq3jwQzsXCv0buIS5z82S6EQZh6Hr1zKg6TXjzeXZ0QxQW1833asQuymj3nUW5TkvlfI2-pczF_wm-z6q9L519pUzvv1H1sitMDfM479rvwjvVh-h0Q5dLI2SWQBdz_AWgbMrY8T_FdO54_6CzHyyn79tFQwp8coSRdYCeHtMQVB5K7kV35XJtUa-wue_8wLA&h=KT9aLWs2i-bk3qeYs-QJkKLACmoMRWbu54x2aL0gBdo
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B052F673B94D46979BAC7C1ED9EF07AD Ref B: MAA201060514051 Ref C: 2025-01-07T11:28:58Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.27377425s
+ - 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:
+ - "38"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718461571163868&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=xksDnSygbFhj18h36mi6-BUynV-ymRph4fG_wRAB5457EIuXjJUAWHkuZOps3YHXSSwEx86mKD8eMD7xuxkwrQyHaXOocTKbaKvK5p_husX4BYrjVDMChHTADsg3SuGnvLL747HNy4-MOrmB0g-snStvt4uThHRfll80VJku8SGo9y0mh5hggkz8WgUpRTUBolDwdQuHESvmyxJiySKdt9adminw2qmNnOaW1OSHwi3FUQIq1dcaFZgL1FRLSyD2D-lXMnXI06fR0ZR3TyCvDAQdkhKPFYWv1GseAwH19H6qnfSVYyXbNxev5m6xu3Q4fZTJpCO4t9NvNVny13brZw&h=YquI2ejwYjj2hp8csvvlXKx4v7DfZMVD55arcPfkXUw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8337CD2B1A524C2BB0194C343C333278 Ref B: MAA201060514051 Ref C: 2025-01-07T11:29:15Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.2584215s
+ - 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:
+ - "39"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718461752554107&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=ouEEpPxm2Yh-iMVct3mHCpk5peOGh4b8VZGhuSJHInztuPJzmISOQ_mwphWZxSkD2BMI1NuLLGrt9B34HQwRRdDjZNTOVRM9IojIemT_AfsHjc-kWvI2ZV4MBQR-4EwB9rBRXVpUE5Wa6BKMu-3L68NygUEBu7O8eZGjGRtO9HRJ_muDJ7c9p5oHDNO1W-QXa6zk3Jgf_Y_Sw9-8Ln5UbsV_dy_QzoKWb5NsyvBKy4ewrw-xn9vYkyhburaI8QEcOX4sTMs7FyHoakfoJ46OcDOKNTLu-gIC3zZO2eTw6XoWRlyeQ1pVV1yXFCPK2q1skmfII_GcxNHuy72YIelB5w&h=Q3iNESVPgqqeEykJKLmjiPQTTmG5AhFYCbeWI31dhss
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2E9BC76B91EC47D6A5E814C916A52FD2 Ref B: MAA201060514051 Ref C: 2025-01-07T11:29:34Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.331647917s
+ - 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:
+ - "40"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718461928272638&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=KkuyKBvhAWKNK4L3jVpIJdvS7oBs4Cehu1HRsNHwv-fQDuET4F_NmT08FnqNimttDRGFap2_lYeLe6Nt-1I66tyjckzdiJb98rvJby-cdA8VOVYdR3UwPfm4KLYO5T3-oxfkaj8LO6for4pj4AuhIlYhzfEdg6Qk9lgeAVI79xEYIJCVrbGgV_QNgShXTsZ9gQPZAsXGed5tjBynrwZdKIy1XoUD8dAgfUOBfdKLvZ1HHCuTisnFbGQUYdgZznsrB-2SNW8SskqW5_oIcTYDUwtQkgYoMGz0EdCmHR9hUTA0f6c7C4qu_mT0p-CSPbtnuoGsGa628hjCUGEcXDZBog&h=FCxJkcMHJAGYGMw60v5bHUT55VwcLk1pGwpOuLXhEm4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FDC3892A8970468B90DAF72DE6B9353E Ref B: MAA201060514051 Ref C: 2025-01-07T11:29:51Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.193958334s
+ - 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:
+ - "41"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718462102999372&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=KH9lyra4XoH7_bGezcVOSDZoOuO-Ths30UZQ_wcn16olrHdEpSD-l0abDNhPLmqj0B8dkdQBKzbbmlay37cyfvxP8nqIKpGIS52nu3vqjvBMTOi6nzukZWlokeczeXQNohv-TgaGE2ExwfB2aBh5CSFir2T82Yo0prwYWZDgThi4_sJ36LH_cXt_VvKRjzIoYwekdoHTDoIkSN_kopLjcTFco7Jq182aCIbQjz32Pnc4kySESDW3C-Nl9cFBr96jk_jHYyCxIq1Nl2742g0X0TebJEx0ESc_fdg4RPTOXL_-xM58bZQhRISiL-g11fz6E0leHvMQ9tBg8Fs0ksyZ_Q&h=649IAzx7G6VRibDWibLd_OPN2uAdd4EzjReJyURaIXs
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D528A2489B8A41DD8C1E76C1B92C9D73 Ref B: MAA201060514051 Ref C: 2025-01-07T11:30:09Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.290906666s
+ - 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:
+ - "42"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718462284593385&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=yCNCt6AvBUDJTk0D4C6yBFQqyWcP8i5z-kWIQn8EdnI-OgIAdRSRa1D1N7DzWGFzQZF5aQe4AMnP_AXF-rUr6gdnJC7bv8W9o6jmv88riyZdQ3zV_vxq42e1q0fwuqnjVqwod23F29inLY9IS_wlC5cQPCUXmSqbxsZRh4RMnZ4HbFKO1eKE6gJYN_dIArC5EjN_ts0BMgSkNUSB_oy0-lHDieAZ0-iJJSEaBJb1ns4XdKhwtPjvZKiPW2nOC-VWf4F03KSDhKAUt9v2X7nVpeLKp2h1lEKHy7YzMEKdF25bCpDaTLppCTWiLZ8qExM1yjumVp_uN9xILtfha-UeWg&h=nKgL68PzzkXOE5bPMZ_H36YBOElAfjKYfHnS4igoNtY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D06436DC8D92498B8D59F92F80B09E7E Ref B: MAA201060514051 Ref C: 2025-01-07T11:30:27Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.210032041s
+ - 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:
+ - "43"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718462459131259&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=VkHRQZmYSyXSvqN5VRWKE9AZz2Xe4EDmi6sz9lKEZVCzaN28s8a3Jr7C2NxHPbl8lnQ1rfohNx7XINhR3wKT_KiEujXcaqmnw0NRZbUfZtmhQ0wLe6PZviBhKIL9s2RKk1rXzWPoeFOFaoYBEL3d_yBReK4rfUAKZrnq5Zc40cNokkzWIoZj_uvc9l-9AAd24pgxBjfu7vTrNQydlCTcsLpe6TiHQRxJWwMk9uNW2ZUz9uMNsn5C_uFjzELE8YFoj4dbfiiKCw-xp_fH8lI16JwoV1hl6pDjT-9NrMjore3wJFaLl0rsmiw7K2Wd2_0f8D0wKztW6p7TpzVazsucMg&h=qHYqOeHk65V5ona7hlbVqoqo06yI4oe9L-9H93Z36NA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 857C588035DD4586B648D41D4B9C9EE1 Ref B: MAA201060514051 Ref C: 2025-01-07T11:30:44Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.302829s
+ - 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:
+ - "44"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718462640018064&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=1cnCg3x4_RUBHF-o5fvB5raNG-zJiSl_NYi0x-01bIx3BrXM41VQ5PaupMMWISeYskIwqw-8xoUsep_BNIMR2t9WsaU7DyC09v70Rz-WY1GhbmCVqt4tX0uqsFexT_Vvzgkr0XfTBchRgpVEFyn5hkFhYxQFkYDmZxQpOamzlaIPBUwPYz7dEBBV-BzbQ_gaswsfbfUtA8_xI1O_aXTRgpsv8OaPb4yppPbiMThhLwX-B9TlSNNvGQFwFtp8prqT6YkHPR-e5nz2P1ut2pqrbvGVPOk3HQtEu32QD-L9CmScAYJFdv-5pgnr-nnxCxH0zZLJSSLd3LKU3u-p1p0olg&h=luCl_FAgDTgwktD2RMF6EEMB7gZquatdAf3aSTfeIZ8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9DDE3834E54249C48E08110B1D21EC1D Ref B: MAA201060514051 Ref C: 2025-01-07T11:31:02Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.207221375s
+ - 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:
+ - "45"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718462820595302&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=KmXiLMS5ailY6zxWJGj1gsohoE7s1vQdXMqLD8LrS-ck0joDOUFOYikIkABkisns5RgS6Muq__i61dLIpbM-XjTRGdOQAowdemWGO-ftikzeDKXc_Uz1yrI9Vx2AEX71669i0YkUaU01sXJ6XKuLEtzs5GoHjeh36bkHxmuQ85epkoV7qOx3ZLgWzA6840j2_mbXH0BECh6x4b1qh_B-dkilQtlwFXAtc8AJDA9cy8q2lJsyFZ8GxZhYSCzdpNz4l3bhyyiYHjYScl4yqc8LhrIZ6Ciqh29qANSBgoO2Uxia77Fx9UiT7fPbyVajmxs3MMXe9Ng_hY4aq0Cpm_-fUg&h=foVmSKotMQAsfad8Aym2p4JV6CiliswUoDWVzVzPqU4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 19AF3A1CDFCA4551B7DF07474A73FBC2 Ref B: MAA201060514051 Ref C: 2025-01-07T11:31:20Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.328610417s
+ - 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:
+ - "46"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718462998797360&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Yc1mEJ1kog9dOoCIf7wf0QA7Ujzpu3SWNh_yZ-EOdOXaFt5LAfR8tKCPfcbV7VXbPFbRrUjfoxLiJ3N68TlaqiHMi8G-1hWIaYCIDHw10ii6uzuUFyU46gjyuXg93f5yJpqDbPmUTHslQw9_O-Nye-xtuR5SPsfA9Q2nO7IYXltXvdIbODhzkdGR6i5-FRrgVVtFoWyoSMD1GDZf8gIAcJ2RJ09p22JpEKszfjqLetnqgjpWZpO8uC3YEqKhQGE6GFkGPItZcVgTbM5EV2qE_ZFeif_OS2AJ8xbf_w3ruWwlr3XGvn3xCNwjwK5GP-RlKdw88_rBpc0IkIfTfRIH7A&h=gUn0E26j2hd-NxBhn3NIh0g4GVoq121HWAG91k4fcQE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E0443849A7E14203A6AA3DF2C3487EE6 Ref B: MAA201060514051 Ref C: 2025-01-07T11:31:38Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.26159525s
+ - 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:
+ - "47"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718463173476439&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=fFbPVuMgq--i1oME-Plq3uxUAK64HfQ7VtIZxgI0P6HqFjGXuqNBYAADOG30Xlep_H2Ius6XnrmBQwmvozjfidgDI7tJelrDfkTu_bKFwwr5oVQW48sjBVE0ygafV1t9iZXfXdYkX6EBuulV8uFRuAOEpZYJgdO_GJftzM16qUF0CYJ72h1ndgkXjyHbdTzBeWVMBj52ss9DUUr6a0CVO9lK6EQ_GNtYg5cvqyPQGv6d-ILZrAahMBmhAM-UfXqJjRWLs-3_BEUUXWYsRAXVLqHzRYRTi-f1NnPQ5LzmHWf6l9GU5Alve9mvo87LKoBzVMrHm2OnYxjx8iugwxZXSg&h=8QzwdX6_QGj6vBPa5YEEwf89ETeQklAFEbuyvrAi8zM
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 63B8EA9DD2B64031B269542F720AD790 Ref B: MAA201060514051 Ref C: 2025-01-07T11:31:56Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.20971775s
+ - 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:
+ - "48"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718463347934844&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=NhOK7jqA7IjdqL9ftn986apfR3G8wCffBS6cgCMH5yhbz6Pcmkn3luNsSoVnjg-yxEVxgqEiCU2mlhh1lnmJRCLedWBFEjGnn4aHK5Pc-fIMP5TqsJiTQNpeMjVjfrgcoFuQE8nUMptM6ua15WcveMZmbRQSVyLDxiNVwiEi3jQANwdNov57yv96__-qairKeJvE4d_LC5ZhpEnxu7_x9joRikIOiNGLB7rS4MsLka5uKO_VUPY6yPJVeBgzZtO9v1RcY51t2IsOeA0fa-pql9bWNp6ZIrmFstc131NvtHhHiaqArrLvy01-RRl-2TrCVTeVWh69lcpyua6NNx4zXA&h=oGVz3mRHhIZKUQksPTdO9AE_0lMA2wKEeMgYWQ7hvrY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: EFE499D529BD4725A09BA909AD8767FD Ref B: MAA201060514051 Ref C: 2025-01-07T11:32:13Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.279077708s
+ - 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:
+ - "49"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718463523824652&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=QpUFZQnkv4r1JsLq3C35coOGOvReAKC1FbGDQh8OtQZjMQFdGAJfC2l3iV4BYLoLPv6egxSyBjwMHCRKeZEBGQ7e-rTGGzU3aqjqbUSo_RMGlC8_P4VBsnxJkLYlqzgGTZ9n_RTTJEi5W2fCMPg7_6w-waFGMAsbFSxH1fNWiSLb4rI1pScYfOdSil9Ea4d3r8cHV6oX0yarspnPTmOJJZHGTRLdyI0ohSWRIqLHVNHZV_NOL5R1bn3sBx5I5FLKoD25NxhuQD3_pdTeJhAPk3qsY_dkQESxf5F-WqZ3aD9_NX9FQNChzTKIqfAmadMIsD9WXjlgA6ne4j8VD5nKXg&h=eutOsNQJ33i5gA2cwWMjNI37E8ucnaCbrnXz6Gjnl4A
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: ED5618AF1644494989C5D728829C67DE Ref B: MAA201060514051 Ref C: 2025-01-07T11:32:31Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.305654584s
+ - 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:
+ - "50"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718463700708743&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=O4R_jHcpenrTJKAjPLsVJ-xx5QpEa-wvQzYUIwxrJVj57IfD5RN-lzE83md2V6nUcFk2FJsLb-dLMwYTCDS423h6PzVg05KuP6SuevVq1sQRKZSjSo3Gevlq7RNHmirfIWV1_84V2oyTUpg132V0fDE1OezW5kq5fMrVGYFEF-sRLvB5Q0iu7H6H9rdGAvx224xyltJYn74cUcG6fmCug0dLQdRlQVQXPMfUCOfA0gYxGb1XaY44wTRN22IMrREjysPPlQreppzup-LE6KFiGodQF1lPOAdrM71lfQZcd04HDMnl6KicoBMfrr7i1MXsG-mNW758c5fwdvDkqfZ4CA&h=26H_SGHSZVgJ5D1MRT-R43lAJTvI4LEmNfw5Wa6J_Ow
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 5BE15E12632A44F58419D2B4917076A8 Ref B: MAA201060514051 Ref C: 2025-01-07T11:32:48Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.285125584s
+ - 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:
+ - "51"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718463875895432&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=JZgFuCoZii0sqR2koMU8APqp-3U5s09LlUoTDc1axhnFQ1uwsuV0U8iuO1kyF22rJtbrjfZ5Atx0bmdZiK-26xNKB5iWjmkVyFu30pmcP_Jl59bPLAxM2mAKl5lNNVynexrNuF702Njk8ng-VdJy9gTs3C1vAGxdrfJGdSmpRd4SguVNAS4QrYIWSnfytM7qmLyvmIi4vQEWXeM1qXuUiw8VohFP3YowvDncUaI9qh8bbsLDG1p3JUe3bnstsAC2w9npoY_c_e7c1SnmYh5N11c3coosPveUgIPgPN-yuK1gUeO4a5cHdjqwGkfP1CdIilV9BiyAoWFtK360pe2nsg&h=qivfjCk_9z0j1-5Q5m9ySdRNnUsmYCKDl_W1Qhgwk4Q
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 5672D6A07CE44F03A592941DFAF035CC Ref B: MAA201060514051 Ref C: 2025-01-07T11:33:06Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.230209208s
+ - 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:
+ Test-Request-Attempt:
+ - "52"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718464059084305&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=SsMCg3V8CYa0uiRlJidTaQYHgNhWSVMrOzvRFCjlKDC89KVCvtBQUupqGkYFtzdzfWJeG_oubdPl3U6gHtkTbR-_E2TeOV1y24WkpX45l94ze2HsrfZnsIO0AZUmWHkBixkEBOzy8gKpfampxqyitDCbz0_v3wYHDVe_0fBX7fMkMFx4eYcSuVSuZ8DM7LvlvcIrG9nzaLAajdMBGH8dZtuvOoPt_uYBgglcFotvl-70BNP6aPrh1KghiAQBdjIM0gB3Kr7aFxBhuZ6zS2i0U5Ws8yK6xivQWysnKasgJB31fOBFanlOFmviXXQQm4zPgbG1orSUMK3yp1vSDO2Umw&h=TGyU-5sCfficSanTAva52r2U6JSLLh9x0PptAZPzbuk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 25F44C93B9F24C339A7775A8FDF18947 Ref B: MAA201060514051 Ref C: 2025-01-07T11:33:24Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.331423s
+ - 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:
+ Test-Request-Attempt:
+ - "53"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718464236176882&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=LEj8Lvk5V0oPnPEO3Ie8C2embHK-6uV46DzgTBmQXFD777zkozF7bqTI1Y1FSRKhk5egsB0N5Tu-129WvcsKo-tXNKkxKqsi1DMUa59tK5Do9acCZkPRoTLUi5FN6y60axjwOES66fEXLcdlYBjBOi1dOXe9sVdMGpEDde-RrHsGiWD484J3TEUPoLH-JvOJv4phBggiz6LoKLuyxodm6GSKAtudZ3RTs2NmKgInD6fRrpYu1vbYbfiojIlRgWmZj7hWNie72hUDRnNstgfz4qoPe85aWnojBaJDgXUzj5_c3Y1juz3UFFNcKMJwHXJYI44rVSWCX0DE3E37xq7-iQ&h=t_VOOVkOefjpIWouTS5dX7xK3slgsIoe0JxqTHsnD_Y
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E40BCA41BCA14F59881387D9BADCF20A Ref B: MAA201060514051 Ref C: 2025-01-07T11:33:42Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.2359855s
+ - 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:
+ - "54"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718464411103266&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=C_GYzuDOIKZHdsc8t1Bu6xRpLCD51eFMU-ackjBPn8UoSCFkEBuTKk9eWJGXSCDs-YBN5lPKszM2xujUETnA1vUb2mxGN5wwpU2y5a0ISgwOKCElkxl-pRR1hanAjMITDWI894qBlnfGY10FOzVoQKiS-z25EhjCjBV8ytLa4Bgi-q4awMnvGyz5zI1kRJZMzj8DRTXV-qI_VgPEAGE3yFRhU_HYmGaRnXnJJH414uL4OSehQjnY0OJiMbbIq4IxUt9-u0vHYHd-wVFwCpQzDFFvO4Cf6zjE-qP-agchw_0anhBVyynWEDjv9gIyLdSEaQe-T3sDvrW9criVud4dww&h=zgXF2VpkkbvjEgml7Zad2Cgi5gOfSm5h68lqIeUMpjs
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4B5230B435044BE6AA3440AD54B1A604 Ref B: MAA201060514051 Ref C: 2025-01-07T11:33:59Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.26216075s
+ - 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:
+ - "55"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718464588168533&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=yTksGMFP_Y0-EMHgtqikQlMLXDfZsjtfoMKfR1ClGskYo7LQ68-z9ZpRh2CYlzq6M1dWALGVZad6g-Qopt5ujD13lZAUcjG79zjAU01Vf4yORcRNEj_mC-vJD2nmu7RDe6yXN2OQjjvWCG2yp_oq-EfRgsEVRuGe4pjiuM4VxV42ArqhMcOfFf36BkMWcIfm62AhNYou5ZW97ZgAUfOkbv8IQUNVMrEtaQEMbeVQ8DA0o6iIxmX0Na4HtV61_hNPEX7vZiTgYLPafrqA9wQKyMkjXfcGxDatdjrIuftAAj34t7pdQPKE9hHXF4bpskedQ1iHeW59Ope0VWte-8H_1g&h=-HVAjtjUXLrkCErAlb1nswfZNghW5bZAp0mkTcrKegQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 5E4609131B8F4CCB8334D64437D52DA9 Ref B: MAA201060514051 Ref C: 2025-01-07T11:34:17Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.271749375s
+ - 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:
+ - "56"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718464764127159&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=Cef7IZxBo2tUjNNBwnopcDowdZhi9-ZsplEkeKFk6ZINtnDJB78CrCufi5rsVclBO3orLttnD036gZjORxrNQYjjlkmIZWI7Zqx-M49Y2YBKyr_mr_KZx4sEMwBtvJlu8Bi782JxI27tJ7Jsx5IxF-xXGRNTPJ9R1nSjlk2tiUXraIPgZIUHRu1jiB1rW2bxwr93TXYRQ-DgIaYcRhG96a4dD60_7PSNM48RwcHGnOFV1pAoE0CGkYYrX1PZv2W34sTqbjgrml4SPlCI3oqRTlaJRq5EQIIJbRd_6x5F2rapqUerkuuKPw-_DGdg_4-F9RywBBnk7CjZWilZe8IxXw&h=6ifXHYllY4gZISL0eRwJwmJ3GL2t-eFjsoU4L-LF1jg
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B0EDD572AEFF4033A6E2DEFB69716A97 Ref B: MAA201060514051 Ref C: 2025-01-07T11:34:35Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.275582125s
+ - 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:
+ - "57"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718464939603438&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=O9Dehy__Xm9c6DLMCnDAm8mzqz27-l3oCqu7GJLCUT3E9Cs5JDZgO6LhDB3dxSmDr5ANdVSVLobnQoWLCVnIduA4WbcbwdK30xoK78feMHngV_E-Ol1fKAKkWk2TOX9Xfmmafgoy-_atoXP9Ox89n6kC4O42R0Gk0MEQRNxDDjy06tPlmY77SwPEuABAFjbCFOeUVVQhvuJZ96-bq9R2F052TdxtRXi-83GlN9DdtAJzXULz9tWVatWlIn_sic362brN-7gl06eVPA6COndcM7vbe8eOJY111RHqwmkoxyal9FhxYCoRcdAOoqdlXrTIvnMzLOymEkE3F25lA3f6qw&h=QA5hh_ybifcbI4EpAQoWuslRqbEzdeYGWga7fNa6Z8I
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: AEF286BD78364134ABD8BA99C26D420C Ref B: MAA201060514051 Ref C: 2025-01-07T11:34:52Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.229768875s
+ - 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:
+ - "58"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718465114347990&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=nKiqj9HlTWUA4AzDroY6Ldm1NFwSQfQYxGDbnJ6g_5BsVy6tkNR1xBx-SRdl_9KEGaLlorR1yyl--Cc_NqSYkX7xZXkvGoGaWlC7O2aPaI2QVY6rKVLXts9oTCueYT5Sbq3aqTAnsIBwN_mCpqzeVaQbzwEVl03eAJhjj8iwDGtZQiqKdtE_AbIaK5ilgxyWlTSkdlMvyLMjRBGD4gS0vQBIoOJkONJ2uDbR4aWi3uDGEokx-NFud8BnBWj02g40fRz3fJni4-OCKkdqnMjHy4Fymxagc6ujXGXVdMoBZIq_riB-EFoLrwYgD9O9gDWY6BvUiP9Dh4eCjFBE5Oeohw&h=CP8SSZDk-Rl62UdOK01VFWLhhBwxsBIrifDamN439uk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D46337475381439B8AA32BD7D436E61C Ref B: MAA201060514051 Ref C: 2025-01-07T11:35:10Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.291413375s
+ - 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:
+ - "59"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718465290686669&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=1Vzcq8ALG16mgc2op0WkZxJ_4GovNLLtG1l5h7AC3YDqo4DE9Rm4X_I-6rXT81s3sgxDPuJf-O3bTm1OCZUbGDA5B_-RRtgQLiX-eSxo2gdS40ic7ShlJmgi28RsIi14_nNSpRssiZhLFQ3np9H42gWev02h9r8lLWEEd7NIFWTIZASf4oXi2hJpQuJjZhBZsI1pZBsnhzJ3HOVzpyzt4tST4GMJ8JvzO3AbmzYbQtEyJZ6XMdmgOl1JHR5v44SCzYmj_HIK_Tz2lcla7-raPzSIGm6QP-bsBdTQWe6rSDVss37fJGywmI-txOqgdlniTpdr9UhH1wCUk3cdRb33lw&h=tN1qmW-EM5jybEZAp5wNdzrxIfktwXIImJBVcsi2M8Q
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 344604CB0AF246A5A508AC93CB92D5A8 Ref B: MAA201060514051 Ref C: 2025-01-07T11:35:27Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.202524417s
+ - 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:
+ - "60"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMQVpDT1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718454600791856&c=MIIHhzCCBm-gAwIBAgITfAWZnAKDvd4xEuvOGQAABZmcAjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQxMDAzMDg1MDA1WhcNMjUwNDAxMDg1MDA1WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANbsFcaJpKQloFwUPDSK63qAV4_Gh5m2LagG0Kj62uLVJqYJm9Z2rd259DxiZexsVvaA6cy_4GMgYbx0S26ToW6M7U4XDYuGtf5iceHk_uR2l-j59K0z75ltaQTyjzZ5JFPiid5YueZZzakeQyGJ9eMw5Zj97j-8NiArPd4VdGOIj-ktMNqlLFHK7x012HOwhdBIqYh2iUt-0SEXmqFESmRBK2OUctVB-yGWRQXxZo1CKX1R4aDEKnb-yTbSD2IAiKr8AL5x5ccoeX6kca0TktS3G-ncZmhjOBSQLcXScjG9DIuLQAgwmlrw-Fqubep7UWxQxDMl8B6l7vpKE1t-MrECAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBRWQsUCIxUfskh8RoPMbk98Jz_QpjAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAHR64fSdTm75xFWU4g_L3ZBLvpQ0yzVxQgBlg_wr8UjWRYOR2rHWxwk44sfm8W1t9vQBrIOq1x6kEdbdfrMVUeAB_YZfWHQjwGx4wJae16fgSjj6_CpTwePAf5aOUXi72mYCj-qltSdfZeL254zQy3OKLSDXb5Vf12TLz4WqyU4T8Noo787zKYGPOP5TGxp_bLL-s_6j-wGU9r3KoBVrwBDsGpfql6oF44DCM6TBrmtdo0AGb8avJ38fK_DfF1FEieKF-iojTygUMza86MkBBDaDHf51xBkBgSnkqdi3Er7HExrR0TWaACPqGp6b2-YV_BRteF_hME8rYvFOZO3tuX0&s=YnhP2JHy0EAdMeq4EqSrVWXHpbXXF4G56BmmjcRULcZmz_JJkktkp7t6iLiR7fGTUkyJ3QtW8oRjAb8G_ELCRIcC9alpyuhw9jwhE2hZFjrd59ROM7cCWFnO1lgYqLu842N4bLIp94eDJZbI8VYVaIZ1y_wYcXRqo9zWPXTQHIzU0WcRe1uKtrk0Xh90zsKQgtbiP1xE0BpddNc0TABhQQSj2HXJ0u2igwh2LcfL2XF0jkYUamtv9NRgapK-wQ__CE7hUfRyLxOGbiueGK1Yw22NT_VqTqL41WKLLmtrrMge0pvR7NauWbjNQAuG0GiqnlMDYQTpWy3U-TSoiUqWXQ&h=pClfWnZBf-1GL3J-pFP4fFoBwjvbJAjayWSxT8iozuk
+ 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-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F10561E095024004A8230CAB957548E4 Ref B: MAA201060514051 Ref C: 2025-01-07T11:35:45Z'
+ status: 200 OK
+ code: 200
+ duration: 627.57525ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lazcos/providers/Microsoft.App/managedEnvironments/asotest-env-kjfevc?api-version=2024-03-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-lazcos'' 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: 6933520E71D246DF845D9EB2AC209A55 Ref B: MAA201060514051 Ref C: 2025-01-07T11:35:48Z'
+ status: 404 Not Found
+ code: 404
+ duration: 708.385209ms
diff --git a/v2/internal/controllers/recordings/Test_App_ManagedEnvironment_CRUD.yaml b/v2/internal/controllers/recordings/Test_App_ManagedEnvironment_CRUD.yaml
new file mode 100644
index 00000000000..525a349f311
--- /dev/null
+++ b/v2/internal/controllers/recordings/Test_App_ManagedEnvironment_CRUD.yaml
@@ -0,0 +1,4736 @@
+---
+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-yugmgs","tags":{"CreatedAt":"2001-02-03T04:05:06Z"}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "93"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - b69e59874dfdc6329c3ea4d396b1d0258dad75c470560e9a0decd6345b41cb82
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs?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-yugmgs","name":"asotest-rg-yugmgs","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-Ms-Ratelimit-Remaining-Subscription-Global-Writes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 5DBD29AB6D1B4E16AC87350F22FCA4F6 Ref B: MAA201060514017 Ref C: 2025-01-07T09:12:24Z'
+ status: 201 Created
+ code: 201
+ duration: 4.926945958s
+ - 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-yugmgs?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-yugmgs","name":"asotest-rg-yugmgs","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-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 30E4709E5E9948F4BB5D265C0A37C77C Ref B: MAA201060514017 Ref C: 2025-01-07T09:12:33Z'
+ status: 200 OK
+ code: 200
+ duration: 271.684083ms
+ - id: 2
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 167
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-env-lwfric","properties":{"workloadProfiles":[{"maximumCount":2,"minimumCount":1,"name":"profile1","workloadProfileType":"D4"}]}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "167"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - b19270c134a62781450bfa0ee2063510a9d6e79579363d326bc5c76ed2051a9c
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1655
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric","name":"asotest-env-lwfric","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T09:12:41.2438744","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T09:12:41.2438744"},"properties":{"provisioningState":"Waiting","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"braveisland-70670936.westus2.azurecontainerapps.io","staticIp":"172.179.21.231","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/managedEnvironments/asotest-env-lwfric/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1655"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "99"
+ X-Msedge-Ref:
+ - 'Ref A: E1D5CD9864F84EA7BE161C0E425553D1 Ref B: MAA201060514017 Ref C: 2025-01-07T09:12:38Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 4.752921792s
+ - id: 3
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199","name":"4949f82c-0fd0-4fa4-be88-b30fdb975199","status":"InProgress","startTime":"2025-01-07T09:12:42.3499064"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 10AA5B115C7E4DE681F8FEB22A385196 Ref B: MAA201060514017 Ref C: 2025-01-07T09:12:50Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 779.677291ms
+ - 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:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199","name":"4949f82c-0fd0-4fa4-be88-b30fdb975199","status":"InProgress","startTime":"2025-01-07T09:12:42.3499064"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8C7E04CD4C6D43B280A27BE0359078F6 Ref B: MAA201060514017 Ref C: 2025-01-07T09:12:56Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 782.54ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199","name":"4949f82c-0fd0-4fa4-be88-b30fdb975199","status":"InProgress","startTime":"2025-01-07T09:12:42.3499064"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 6270BDBC6AFB43509A0341FF93097A5B Ref B: MAA201060514017 Ref C: 2025-01-07T09:13:06Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 719.352125ms
+ - 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:
+ Test-Request-Attempt:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199","name":"4949f82c-0fd0-4fa4-be88-b30fdb975199","status":"InProgress","startTime":"2025-01-07T09:12:42.3499064"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 1082143A0BE5429BBC56526410EC4209 Ref B: MAA201060514017 Ref C: 2025-01-07T09:13:23Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 813.896042ms
+ - id: 7
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199","name":"4949f82c-0fd0-4fa4-be88-b30fdb975199","status":"InProgress","startTime":"2025-01-07T09:12:42.3499064"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D1BF7D1D13024BCEAE667C0D08527D2B Ref B: MAA201060514017 Ref C: 2025-01-07T09:13:57Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 729.85675ms
+ - id: 8
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199","name":"4949f82c-0fd0-4fa4-be88-b30fdb975199","status":"InProgress","startTime":"2025-01-07T09:12:42.3499064"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: DF7AF18604F94035AC019C168333587E Ref B: MAA201060514017 Ref C: 2025-01-07T09:14:58Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 731.191125ms
+ - 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:
+ - "6"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199","name":"4949f82c-0fd0-4fa4-be88-b30fdb975199","status":"InProgress","startTime":"2025-01-07T09:12:42.3499064"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B0C753F91A5641618D8188D82F1380AF Ref B: MAA201060514017 Ref C: 2025-01-07T09:16:00Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 969.51375ms
+ - id: 10
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199?api-version=2024-03-01&azureAsyncOperation=true&t=638718379628690154&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QnDmt01Ys_E_iGlC_ePrr02jy63z537Fd3kYEdTK7iini3lRfzUL8shUAWbaSy_xpFQdbJzV2v2Opx7Kh4ENyMOomfHOKJO0Obwq7R6JMMJxmKHG9ndw7pLKNowQrDyZ-9ZoaHIi6W1KZdPZz0aJd7JeNy4gF8IJ9GoIIdHtmEJaMRwoedZpG5su9GgnBujO0-5ByMrqCwGXR4USjKvYEiTMTwwHvXkNcqkh2dczCip68QNG5byK2Zu2AOaKuKWFk39szVW-r2vLusoATiWlCBQJLsR8CKcii4EAiH7tMiTd4gEwLcfBmVg_vlsr6fjSliCBfIhXdo4mlfaRamesOg&h=tm9b-6dCBwFAmsQaymgL346oQnyBnI2WMNCJgJBIU9I
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 284
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/4949f82c-0fd0-4fa4-be88-b30fdb975199","name":"4949f82c-0fd0-4fa4-be88-b30fdb975199","status":"Succeeded","startTime":"2025-01-07T09:12:42.3499064"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "284"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 6D5C8F03FAC341D3A1C33A14A6512133 Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:02Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 863.878917ms
+ - id: 11
+ 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-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1657
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric","name":"asotest-env-lwfric","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T09:12:41.2438744","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T09:12:41.2438744"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"braveisland-70670936.westus2.azurecontainerapps.io","staticIp":"172.179.21.231","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/managedEnvironments/asotest-env-lwfric/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1657"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9718149512E3404BBFCBF660B200ED68 Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:03Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 909.522209ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1657
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric","name":"asotest-env-lwfric","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T09:12:41.2438744","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T09:12:41.2438744"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"braveisland-70670936.westus2.azurecontainerapps.io","staticIp":"172.179.21.231","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/managedEnvironments/asotest-env-lwfric/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1657"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3BD5B6AB08B54A7588D9DDCE702362EB Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:05Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.000918333s
+ - id: 13
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 188
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"asotest-env-lwfric","properties":{"workloadProfiles":[{"maximumCount":2,"minimumCount":1,"name":"profile1","workloadProfileType":"D4"}]},"tags":{"foo":"bar"}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "188"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 867c914e99d8b4c61e66837e733340cff5e848c9c016c3e38634fd4f50183e85
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1677
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric","name":"asotest-env-lwfric","type":"Microsoft.App/managedEnvironments","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T09:12:41.2438744","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T09:17:15.5153948"},"properties":{"provisioningState":"Updating","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"braveisland-70670936.westus2.azurecontainerapps.io","staticIp":"172.179.21.231","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/managedEnvironments/asotest-env-lwfric/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e9da901b-8ac1-403d-87b7-f09fbb9a848f?api-version=2024-03-01&azureAsyncOperation=true&t=638718382380935512&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=PyEqjda8cp7ZN3_a3hgN2auh-xKzV_RUqYV81IKd7lqZMF62Q2tSftE5Csz4p9Ubl4snrUPv2p2cv1dOr5iDtuiIXotMEnELAdtMdC9OxvHIVOwBoTN_CtbpM9T3aOrPyqHib5DrPy52E5cSzo_yNEeF3LlfNMCTKl8B32BRxy7TZP6QhTpKTd99ildT2BLx-xkaYcpxiGbMlNCQxEQ5RpRTcj4CQPZtVOVeiw4SK9vO3tQFnm4dQFprOhrWVR8bjhyk4PAZzkhHdf9eFuUHBbLYkwWedMEppE9roGMf-bxcsqiJq7QrD-qD0otA45kBnYuNJnM2atoz8Zqg6M3tIA&h=NRmzoVMDwyo5nLtVK2FUpb8SvJ8wluuPJjEFl8aPITE
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1677"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "99"
+ X-Msedge-Ref:
+ - 'Ref A: D76B149CB74845FDACB756991F210D32 Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:13Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 4.907580958s
+ - 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:
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e9da901b-8ac1-403d-87b7-f09fbb9a848f?api-version=2024-03-01&azureAsyncOperation=true&t=638718382380935512&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=PyEqjda8cp7ZN3_a3hgN2auh-xKzV_RUqYV81IKd7lqZMF62Q2tSftE5Csz4p9Ubl4snrUPv2p2cv1dOr5iDtuiIXotMEnELAdtMdC9OxvHIVOwBoTN_CtbpM9T3aOrPyqHib5DrPy52E5cSzo_yNEeF3LlfNMCTKl8B32BRxy7TZP6QhTpKTd99ildT2BLx-xkaYcpxiGbMlNCQxEQ5RpRTcj4CQPZtVOVeiw4SK9vO3tQFnm4dQFprOhrWVR8bjhyk4PAZzkhHdf9eFuUHBbLYkwWedMEppE9roGMf-bxcsqiJq7QrD-qD0otA45kBnYuNJnM2atoz8Zqg6M3tIA&h=NRmzoVMDwyo5nLtVK2FUpb8SvJ8wluuPJjEFl8aPITE
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e9da901b-8ac1-403d-87b7-f09fbb9a848f","name":"e9da901b-8ac1-403d-87b7-f09fbb9a848f","status":"InProgress","startTime":"2025-01-07T09:17:16.0503201"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B74653AC07E14C5892622B926D5E56B6 Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 284.460334ms
+ - 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:
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e9da901b-8ac1-403d-87b7-f09fbb9a848f?api-version=2024-03-01&azureAsyncOperation=true&t=638718382380935512&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=PyEqjda8cp7ZN3_a3hgN2auh-xKzV_RUqYV81IKd7lqZMF62Q2tSftE5Csz4p9Ubl4snrUPv2p2cv1dOr5iDtuiIXotMEnELAdtMdC9OxvHIVOwBoTN_CtbpM9T3aOrPyqHib5DrPy52E5cSzo_yNEeF3LlfNMCTKl8B32BRxy7TZP6QhTpKTd99ildT2BLx-xkaYcpxiGbMlNCQxEQ5RpRTcj4CQPZtVOVeiw4SK9vO3tQFnm4dQFprOhrWVR8bjhyk4PAZzkhHdf9eFuUHBbLYkwWedMEppE9roGMf-bxcsqiJq7QrD-qD0otA45kBnYuNJnM2atoz8Zqg6M3tIA&h=NRmzoVMDwyo5nLtVK2FUpb8SvJ8wluuPJjEFl8aPITE
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 284
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e9da901b-8ac1-403d-87b7-f09fbb9a848f","name":"e9da901b-8ac1-403d-87b7-f09fbb9a848f","status":"Succeeded","startTime":"2025-01-07T09:17:16.0503201"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "284"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7B93DAE549EE4C62B43191CA9552427B Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:27Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 333.189291ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1678
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric","name":"asotest-env-lwfric","type":"Microsoft.App/managedEnvironments","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T09:12:41.2438744","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T09:17:15.5153948"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"braveisland-70670936.westus2.azurecontainerapps.io","staticIp":"172.179.21.231","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/managedEnvironments/asotest-env-lwfric/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1678"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E850ECF286934903B4194E8E9B455A5A Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:28Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 998.24875ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1678
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric","name":"asotest-env-lwfric","type":"Microsoft.App/managedEnvironments","location":"West US 2","tags":{"foo":"bar"},"systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-07T09:12:41.2438744","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-07T09:17:15.5153948"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"braveisland-70670936.westus2.azurecontainerapps.io","staticIp":"172.179.21.231","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/managedEnvironments/asotest-env-lwfric/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1678"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 45A7FECF36874F06B13D62984B488153 Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:30Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 903.784333ms
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric?api-version=2024-03-01
+ method: DELETE
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Deletes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 805030C195EF4DB88667F416DE7ED472 Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:34Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 2.837413875s
+ - id: 19
+ 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.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382756779655&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=iyI-6Hg3FHNE0p6ORjI2d-HqUES1-Bav0tMVIwLUPO3YlzGJt4iJO31iN_0b6XCFMVFfJCYAtOIXW5bTTrDNxmahwTsSBb1q6t13qWXNCpfP0yC2OL7LQ3wQdOBQVII1wAe8yEi5MhOCayryr6r4ssJRFRePJ5LK2geXRukC7G7aGDW_9meJ0Qhtnrl-L3qkzHrUMXSNNxWzhTqrZN9PEXhYjLLrRWJy-zBJEVvJEOpPa_PZCyq-L66pd3rVC3SN27ipeeXzwJ6Ha8cnVW6Ppw68iNM01ANVovJHaMNI3RWsB6gnhlesqjseODjQrhHcHIMEj9xmskd-67WBZ8BJlg&h=yxECzygbY9r0B4153Yxb5JV66IcX6__D-KVM7WElN6o
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C17E929A04B44CA5BB0AFB0253350BCA Ref B: MAA201060514017 Ref C: 2025-01-07T09:17:55Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 735.407375ms
+ - 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:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382922073450&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Wp95BOEbbhaaaSHHMa_hb6xmKzfLIWALznT-0DBUyGutGAPZ1twf0DkQ74UP8zLMLh2l3swL26eLqQQyzdsHrdt5fS9W1YWSiWWUu1puBjVs7-H8HujeTddtZNRqT0Txhus1PRijQG56Q1ou68Jdytm-lk9Lwvz0m3JJtCxfmyWhF2i2dkUO3gbqtyvEDtsr4DfcP0ckGwS3In-ZBF5xcrGc_a7X_r95zviJfTB-ywwJ6eUMxMYQYmN79t4lXYZKeMMKBK16Dj5W-xuRTjV5MrIzpYSKdHoC8L96F3UYcXjbj2ojGYugcKI72pK_PqaPXlOCaKD4_ygEURn2FfcRcA&h=F8GPQ7DSJLprXatm_WlJGnuAwA9KiU9oqhU-5H4avUM
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B2FC9CE5574245E4BB588FACA85813DA Ref B: MAA201060514017 Ref C: 2025-01-07T09:18:11Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 733.820667ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718383087381608&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=KiBIWHvTDegGzKobXgsdhHXrXOMej4_K7YzksEdhoRNw80274k4pPOhveaNUpNSjPBcxIkoQxBC3ClJORPFl1pij8vGq3ZS76i75jQRubE9Cuy19mgT6V4pCgEra47GnvjKeWgFDDkUauHVCX4kL8pey7L321F2dOpNDcskTQbOVVw9FvTXFEhiX9_eiDUnTcNGnjHn5QZ6nV7K5FEj-rsKGdNi9aHzBJ3COarJz39eFrwbKuF9BW8EKjhJiMUiKKNuTLVhG-MeuUEsNR1lSSxkr8EKin2R4GOrR2oyzV8vXDGFqNbXKnLvCNQZhhGewNyUkNiDllVQl4QDtek7n7g&h=4IyYJewwZDLpPBSKZN3ZtCKlvDyyJjhG3X2YnDr3JgY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7C184AF870254F75BD2222AE2342026E Ref B: MAA201060514017 Ref C: 2025-01-07T09:18:27Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 890.732083ms
+ - 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:
+ Test-Request-Attempt:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718383259090757&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=xIeXngWGLyJuII8_TsYr40qZ4UQqv0u8mkd1G_bLDUhS5ORjgRDuLPdakk_3ddRrvObHX__W3-omOki2bm0q9m6kQ8kEC0gXumHIuBfOI8P1HFbvPrtLYeCzcA1jxJX9Gj6O-41Nxm3noT3Xl7CvYD86CqFZNgQFnscFeQADXEgvWLYujiXeGkmO7foRQH-km08r5XoIgfPz-HG1Q1N4nOhthfALtIocHh-_IN-GUO9bJ7tD3n0D0MAeEeFzO61J6VSzvu4U0yc-IB2OZbHQ5ISMUzMKIJY1AseeLOnbsdFkq6GRmKj-O9jerpqxAyB-ISD_B9VymQLvLc0cGWdw8A&h=J7CQj_wYqfSWEwRgQ4mZcU1_ArZ-mWCkT6VIEOncvwU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 206288616BC04850865B59D9D17B7A03 Ref B: MAA201060514017 Ref C: 2025-01-07T09:18:45Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 692.359041ms
+ - id: 23
+ 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.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718383426118412&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=mg6IV_H3LSSPLu4moQ694Wvf3LyymWdFxdrIj6oDMj74GrDZF6lRiEYpn1zBPSfUz2X3LB01g5vfNcVzNMWsmr_aq9icTI0w5h7GzvFrXjMwc3aw2lkQj2bVbDb1qw9RzfNAd1eJvLqx1KHUSqJDPJSjI_GQqy6HSUN_cdncD-ed2IM7GLTCta1cakxYExJSSLlB93TmvcamfU6yXNjP9kc-CkWPp5OeJhfYBYxkdHEB1MWggJ9HrFQ-RHYuPSXVhWRgYZAYxyZ3fy6HA_pWsU9dgw4upj3DK9iv7rXXjyNWfCDjSDUvs0yRE4_6Omo71z7StxzvZPNee37VzowxIg&h=pya_WDR_ZeItWJKxPKg-ZklO9iwsKFYdEZsdnX0Ur7Y
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C708DA4E5AA74C7686D30F869664F8EE Ref B: MAA201060514017 Ref C: 2025-01-07T09:19:01Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 726.06475ms
+ - 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:
+ - "5"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718383595419557&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=FWakkhMWLzm9GTQAzd40jp9TnwK9ShHU6aC5GcMH8IkGUKYb5riVVH3I-5Vvm2KuXHiGdw4BcTloxHDsDNroqvi5sGoLwL03rncTYgAbuARUvKmsZ5TTbSK9wSZi6IvqeZnmxuCvx9XMq7tfyG0j7jGlLOsKtZzjGNtdTFktJJJ1TxbOys8ENC7Hi16JV9Y1K5rTh8j-W2IZAk1QZBUfm3sqKmegBrH18vlsH2f7NqGfhl27cvrbZrR5knpf3JQ42Katd-J2HRNqoZTOssgvFYgTmlL1LUZWlW-MdhBwrhVyvwZ0az7dw6Xiz8U2g4Qjpj7QG6CbLwsoNgIpFPKEEw&h=JE6mMum9RdUDvdsk1ciNtpM9gOZA-4lJvGO7Qkf9Cz4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: AA94746ABB0C414CA47E90A8358638B5 Ref B: MAA201060514017 Ref C: 2025-01-07T09:19:18Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 694.936083ms
+ - 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:
+ - "6"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718383764848442&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=mI1sLmPAqpJ5w8UdxFmkKwoyiECVQnDSqgo7RuAAbi4Ono1m7Whf5jQi4oMwnYMKXo1HGgn1eIbMNPkhrizaTZ_6-vchWENaj1Ibx6KCOnwmvIuauhNBWaZVkx36EIKPim0WpEFBAZI8dIoMRseY2lDIbhWte7a7NBQmHz0Lur8G1TAPQEaXxNzvNS0KKJkzzlTVYkC-cjbqwJ6X6AyA9KmkRNMBga06d8wDCx0Zx9WXV7vDNyia0tniRf36XLA0c6NDVLVpVY5msqDF2CV43Mr70oPr5YDJ5Hfx7ftTtjzfRSi862tB82G7Vg5pMs2LM_4GR_lKbNbEevmqLTE5ZA&h=8quAXAmDqsXGZtlcdRbj8cVK5hKsQ9gaV2A8X2gTwpc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3835B742735C40D1AB2AD149C6530D77 Ref B: MAA201060514017 Ref C: 2025-01-07T09:19:35Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 701.853875ms
+ - 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:
+ - "7"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718383929331180&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=pFzItWUAyzM4C1h3hGWfGLkmkmj9eHIjAc_Io0X8CdlxAhKat8rAV3Dzxusca6XcGyQfmvOYQYh97P_CZouJHqhY7FhSjgWDI-_xcOs0xPqEoTRJ8C5RGnaq7EhyOXY7mmYGvkyFztF7H4ykUktu3OQlvA-KW4Zz2jHX4L2zRJRarKsQ4nlW_e1UdYtefeXazm75bAUtE1EjT4G9egqvz9YEcUk5bH6iQwYVeGx690QwqL2hzqhr5-zfi3PRewtN4Bk5kMxI9N-QsNr6jit-P0o55PDlRsrekBG8lblKNRVA2rq4K1w-WPPJJWIkDGyDwiuAoDQuVavYH3F00vssSw&h=cxbLtduMEnbCON2Qszz1n5_C0OCG34jU9JsbiBXPBvE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B91E83CDA855444780F0BE0A63DE3BCC Ref B: MAA201060514017 Ref C: 2025-01-07T09:19:52Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 766.096375ms
+ - 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:
+ - "8"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718384094652053&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=OW8WzcwImbPaaeOG4PR4onHfTgGNxbEpZVHC673MwLmdH6I2jR-wKBld1ZtMLD9dCba4zHCjzXCDV0yL3HcP7RpGxKdKiDD8ZZ0Tbwexnk_-DjbCtygbGrozBrPfYEM4o_o0rdyOjNCBoL-UCQj99rwAdb9gFhc_UQO8c5IXADYtWYfTMdobnp8nIEsLtO2-M7uWq9JTiKdtFfVY8Ir4oMXZeP-2_33l3Ue8vkRMat3mnGrjqV3INVefhvykpFhUiYrhdD9RjQdGHYDBzh4wN7bxaSn7khn5gNo0lEwibnuVILw55v5GSvIthNY3Dvynhiet5BM-ttq_CPOBH2dGbQ&h=xyb_E7c6g2FmdO-ZOcRKOdvZthWb3Dv4n7s8Ky3kUpY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4BCAA4BB5C6E4368B1CFA466FA85C299 Ref B: MAA201060514017 Ref C: 2025-01-07T09:20:08Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 738.847708ms
+ - 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:
+ - "9"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718384265716042&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=LyIPbBi8AiQYQZVcvna31vkDnVaK0xNRmc8Q7shuB_hNKjONpgycGCIfccpPE93Ky-EXN7xtsS813y4j_uc-y1gU0RLNthbGVKEFJC1YkKILy7QLxWyvO0MYCRswc2H6ijyzCZ3xBWK8nP5d3WaRGpdKTsT19He6IR9yycaA-zYpbRiWVGscytPHTR0-ZYIF-FbAI9Ge5KggXKyFiC9CP4BuWfI373tKvjGGt7IkzROlIIvY8YjMUekX5Us8JnkV_BbA0J3B3FfSr8hxd2HS9Lj3pOFjtebHOar5FPhX00Xy5Qx1QjIvmmAZfs78_SoKNgAewVTQDiUjuSZAzc0m1g&h=7qjZlKW3yRxU78YJga0iEi8I-8v_8f_4v-yt5fQf0hs
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FD9A88F1CD5A486DBEAF53ADBCC30EA6 Ref B: MAA201060514017 Ref C: 2025-01-07T09:20:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 706.512417ms
+ - 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:
+ - "10"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718384430066194&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=tlaDc7HhZ8DJOJcSWaRtbIMSvTRoVWQwMqCqTnzjfLmV95hBSa-Q7Ksb7m2uEXgwsnYU9WLQsTOHog96_6V8WHuEA6a1dpT59kADLwr2YAXWzlVzSnaMnGvTDTKFQgYmjQBJp-2Y2oGswAeP78u083eopjzDl8oDSuUR1T9TdwPIauondOAB_zI_OQKRkHZrgY_HMIVbM3RYe7rDkNlqRuILJTePYsKqSDJUL4tbK3Xr8ZLPS-98CpOUbhpqUWsFCXYMC_fA4Ss6tN8Jg0CVfMlhnqSwjkMdlZo9eKwPvI6ewiQvZTgVWwHtdu3REi66kTLsHH7WhNMHQoFB9LnybA&h=eAcZtvC4vFVfiJyf9EZ1c4NRc_nS3HeYphEkqPk5_5w
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: EA5EA0D7CB6F455DBD3F2588932B0E03 Ref B: MAA201060514017 Ref C: 2025-01-07T09:20:42Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 764.180917ms
+ - 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:
+ - "11"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718384597930561&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=hql9DgGxiVqlZsYP6mwZ_2FoGTLMlXW7YxshMAwo951PaaKl-sBJlA_4_KmR6QJLNilTFBS8iTbt8kpI8AIjMe3W5GHJ_SBAKzdmsks0lSWraW2SkckrtAevn1pyuqegu7hikX_BugKjGqFlufSbPyTs0U6Rs29jgvwfWKKdbnqSBuFztaUWrNS90jnYi11dprBkuXMNzQo7khim5KDV0cnMO1eCEg8hP_uX3GIJxPsjk0P2EDwXKU5iwk7HDVJen25sSIiU1t7mxEZv_WlPCmbHQfEvqX9LS4GC6qRm8HeKUZJfYeE_7MHEUj_3JfbFPiJcweJJ8ueE6ebz2ytEww&h=NxT8hjijKfzuuezmepkORSyxeeFVf0E1ZE2x4kICqh4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9B721350F2AD4874B09297FEE95C7238 Ref B: MAA201060514017 Ref C: 2025-01-07T09:20:59Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 709.339ms
+ - 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:
+ - "12"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718384763854681&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Co8VNIGu8xCB2bzYPiRGVc_KfdOZK8dCsUEWZzxi8VKfFZC9Lo0I1HIOAoKrs8jenR7jp1VUUcZC6bZXVP2sn23rxHQG37fnFOKraHqHEAzNZ1PlQCRBXhC0HrC5DLDSAfwYW4E2oVhKJdWEOp4JuAicovLVYgwtWrK8kYKe2mnhFz2lZ8-TfOKpGyqeXpnzeE9oUw9rgr1_cbhIvssdfJBIlYi1ud0_IH54g5pEn4Y9NdasZnFQcS0rZblc4oZymnWK23t7tABQnld-esRTdw8Y8xLGtC-58ex4cRG7iLAkH2iEg2kEy-zrQSrlxAN8mn0u_ScVkv2A3rRFZQbzdQ&h=nREx01K5pNch1KSiPIhwFYYyzamvpj8v0X46rlljd90
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9ACE9AB98BB6456CA52EBFC0DA08D19B Ref B: MAA201060514017 Ref C: 2025-01-07T09:21:15Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 883.273875ms
+ - 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:
+ - "13"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718384935393099&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=L3QteIm_Q--9Cz084Xb403QZdyCGEpfUTGXbuxqIgf2eEb_8YtzjDHZM3L5T5-vtmfbL7XHDTcXi2uppDtpZeldv8LMd6pf3azFsJ9pNL1vfT3cRiH8zBHGcLUUWlBRuG6TGCVZj_2-jEZVFP1X8tszld1aFeg3Y0GgGJWraqpFhVoRwGPOG9xWbOB8RI1E-GEsB9Usl7VREPBdWlROY6KtzrnALq8cfqDyzTlN9K4G_WxmrXdHJWTLjktFI-VxmIlHrFtHlTsmfLGquqM3eArza6PU_ZPo4WBz7fIDD2Iz8mJLOPpur2RfEn9ZNf7I6u1RW9O5hRc9O7gRdpLrw4A&h=edbS3mtciGIv_YBSY8XcOA5Xo7EQjh0JhSWN4r7h9ek
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: EA928CC184304374B6E3A91FAE43B3A6 Ref B: MAA201060514017 Ref C: 2025-01-07T09:21:32Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 852.724542ms
+ - 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:
+ - "14"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718385103926338&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=PTWK3qpx9_NpPoHlsLNYV03yE8hzD-2xivBb2g9Vn4YIZrHhZdk4GcKTjTI4hhUxQBawBt_iXfq-sorlijaclrRIz2iP5naL7Okh3F7sdvrFu_DHETwx9zfzhc8FCA4jKfPc0-goKvcOmmAmhVKUFdSg_dfo-ss2vOP-MhOCRDu9VKA2cB6F3vP9sjT-_K5ES3Gmuzv_AwN0xF9PNs0Vv1L8_qDEvi5IktV_wiFKj9bg-Rb9_OtkduDddLgARJAUK0Tt6nC2Ql7s_FaPoU9rXJ7lxD83OZDsNFWZfN7XpIUzfpcOct3vJMwYessZPuFRxMst4a8HfXvG0NSMGu9CqA&h=o_iTzr6d56i9xwB8QO60Ow3pjkxyJWRwfF41_B5Iba8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B8BAAF5B0B744CD2A9052477C838EE07 Ref B: MAA201060514017 Ref C: 2025-01-07T09:21:49Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 708.487666ms
+ - 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:
+ - "15"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718385276446906&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=hAUuqHYm4M15D_jYvylXSmsWwE815yr7tRODP4hi3BnTUH0bMbGhyS6yj3F2EoHJuAd3dvWdMTvlp_sikkVKe5x9tx7beH18oKUwoRPla5WatFXioRLINdfdNBUZAuh7gaTZ4MIPKkidqMlJSCvB7_pZxv8nO-7_Pi1fxJsNRdRUTSXdIejlLO9GfMvSyO3Q5PGOIwm0YF4FTWydM8qdgWF_zt-3736FyBOgXfTlWQmKiBiSGDEx-mYSCCet6gVSwlPQGi8KVmGwmCpqkXSjbliEnSpGSJh3eIFc-0Ri2oGAoVKjw8gTiN3HslD9SY24aVH5cZ9o1Ax_oxzRP0rCbA&h=Rv90vY4_V0wt5iZXrqqgkyYOadRAGiyHSU8pJUphfkY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 703332BD807A4163BD282FBBE04DF4AC Ref B: MAA201060514017 Ref C: 2025-01-07T09:22:06Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 809.306208ms
+ - 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:
+ - "16"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718385442604987&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=cN7PKjsGvM-pGYJFNFA7y7V0ahlABtry5HQh4nu27Ni3cYFDUhFOAQhlX8eCmcsbGaZFfC86zKCRGy6e7Vc2WeXUXNIrugmLXm7cDpAVkB90dt6NU0URcY1RvouzmBA8k-v70p-6PQs3GD0uSpIZnoKP1SIE2PMUIoEWdb_IgqwgXt2ejUbS0DXIUDw_lie1mIO_K9yVl9w6llZ_Wxxo8TXrh9jDXyiw7eox1gqPCCq_bdhTYQ214rYIKO7-1Qp2oouWgpAT1iD_CQ4LOU8GH0iW3gQMZZQ-1r0KhUkeYdw8xZ8MfT4iD8C7mDLXQXIdXcjaPsLT-0UdPjKI52JD3A&h=Mq1XAyrOCLhP5vhsLKriGW8FXXNZv-pImITDJz5H9qQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4FCA0BF35C754910BA9B02DED498CBB7 Ref B: MAA201060514017 Ref C: 2025-01-07T09:22:23Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 708.111875ms
+ - 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:
+ - "17"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718385606576093&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=vgUNOk3twCNuw_k9tDZp2blpU24DLRZfr_2t7UDmMftemoy6MZTuHwIM-nbh6k9SSC6AOCXnpTYTDv66-jLNd2qtf1WoOakdA9A-7MbMMEx_SjahFjBF2ivoys0JD3D04kDS_JWIJpPFrVSnYMdc1DH0Lq6qYFgVqhWRDXVGwuZ3vWqnrrmgixqkZHcGsR_UdwNX2mizbnRMiZ_S43mtDVZxiu1dqqnZbglFDhF19bjrE2OwP_rbQCmFEgM61BwccqZ3M7hKVT9AAIl6D2sqnQy3AxGLcE0amBz8kS4AVd3stlFyW_eVM-TtXILkOsqFL2hCBivGQ6xPzBAqsFbxSA&h=2o33BoCVD9Btgz2Vg9OzP2Q7u9zufDAkz5C-KrRNzzk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C73A1EEBEE634217BAC8095DD0E6F9A9 Ref B: MAA201060514017 Ref C: 2025-01-07T09:22:40Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 728.215375ms
+ - 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:
+ - "18"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718385771479209&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=oKy3SUDBsHQv0gGUEkZjkasFlNLd3_VBoxy9pKWG0R685_hw9QGAhXeLQXFwSkiioZHg3eAqb8cfj57gBgl4OQ6Of6J1z-O1rSxDhaP6k9BqXADqNF_f2Wr1QZ2vqZ-tW9wqpkxb0qpbaEOIuwTGvR2UplSmELtypeIcF-3rkEAlsHA9m4hVXuT4sLhiu4UBlavAujyEVw4jwkScVA_-NZsidxdLmY499AxLWSE8vbcarRLwx6pOVtqnaeCZs14oHWAUZs8__eyN866cFeOhU36hkCgIe42pnGwluVZcOulDhC4ilyfe5J21HwNx_iT6YQPOfCXN4rxP9ep5x2ANjA&h=X_NzLokakjfItig2iUcCDQLFDX5ScmqdBql6o3gA5WQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FE6484AD6E3A466C9BE4DF3189AED1D5 Ref B: MAA201060514017 Ref C: 2025-01-07T09:22:56Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 708.854916ms
+ - 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:
+ - "19"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718385938610643&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Psj6VPv5GawHmTy8UnoNAam3saN5UsUoEmdkdLULkdk4JST-bDMpD-ePd-bMGs1QMdJao-mQ2kspm6kAdRTocF-CYfQjfR48fJ1SRKPUlzaIRnqHMNIr_MnoIZhz_UStf3fpa-IB7mPrpH7Xemkoqa7zgVBho3bPEgOt7t3NWZ5uTbF7qIVwVrZo9xiuciIHPcGz9MprAgMhsZeAENEOeeQEzM7wJwPOWWD7bBF2-7MpnOgq2HY7j5Tm045yFc5ExcZRtPsAJapDMpvJjFACCT52ZLkdq5rlB_VKuqnMn-PYWJYJNNVFXlNsl3BHEmx1lDctL1_JpY8vt3lrf0m1rg&h=ZGwZ4BX9eqJoC7g4Fl7ofq2lTmteGMFFxaA2Nkp_JmU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 25C098FA145D4AD79739D8DEBAF339DB Ref B: MAA201060514017 Ref C: 2025-01-07T09:23:13Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 716.978459ms
+ - 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:
+ - "20"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718386107397476&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=TfmV7SZd1_SbMdy7HiBxC91zsvORv099fsFPIJcoYsWLfzkxBEQIV-fi1SUKKJZBD6qC2MsKG1C5hAclGH8DkVfArfKIPvy_rxQOdpm7Zm6vXHGvcRntgxNc8GeKJI8o2Gek8gNx9chnrKGCbveMUYs3OBtJQQ8VWOFeXXKuuj2hZJkhWyFRpUIENj85ZO72GY-DoSSSH3KH01vu8LxVmsxLSe-g6qnZB2GN21MYvXSnzrbFIGG3h93R60w-Pqs2stlZqMrLn2EHopPXuXCpSSyivyWGmghfxiXCcflInnkGFgMA0BX-FZllmalxExAizMs2s73kiLLQH1eX0G2yWw&h=RA1A1WueU9yX1CHx4C6Teyrcof2td6pPc3AVWFtCoNg
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9F1618A400B44C369A7412F2979E4466 Ref B: MAA201060514017 Ref C: 2025-01-07T09:23:30Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 770.0715ms
+ - 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:
+ - "21"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718386276146558&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=L2jpKMY9PQKQDNruEw3QE6ZlsUXBvtOgWkJSQsdEFQiDLUJ39bDE_mli-kwU-7gJy62-XZSfE6N7b6i_qI8dwMWYRcC1nap8a4X71EcfF3tAzhhDL9NZGfLtiLOtLKHhf-kWojwzd-C1pEPki8Gh4xpajrPqMMdkK3rD2BLARdFskvtEwRP8ZQRAXgCGmJz_47DNBA57rbLEt6gdNxB3VegXep_QpM1L_-7iKoVEQirSjZr41jcgsmzWs32ecd_S_wlrvYIqisCjTF-qzaSqIIywQkm1NBuwRChj978gqCAV-sJguKY9UdXBzYBX3vPkukMSv4bzr8g9mhldVtKiMQ&h=v5DdhxERrEcZxMurl5toBwdDCaiRKwrYHdEOVgFxay8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CB09A7C217DA49AC95B3A30F9D95E2B8 Ref B: MAA201060514017 Ref C: 2025-01-07T09:23:46Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 692.052583ms
+ - 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:
+ - "22"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718386440215416&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=MYEXBjpPmMU2WDXTGBn1dL5eh0DU77xxqH5OvoG5CmNfap0zzu8kwplAn6SQWFWWCKQHH5Vmzc7uA-yhJ_MEiKRN4qAOqhrt7bsmxnSyrg_TS5CLoJDw7GeNUSn4hPAQXdUnieWsSFgPiOojKx7OAywxqSoKWYoAxTn7nfxkF1SLodRUkYKLnMdnmqhcySHdBagpCV3SHcVmFpAKWSBd3HUV82JnveBOnK7IOpGIQWd00Il0MjKeeUAmcpsmA4-eWMp1m9Wel6b1eQmqKDbaen4fGsp-XvS_6NFZxHFn9C7WOdP2i5Or4SilouBmvOA6Gdqi3dc6NHciKpgvcTyh-Q&h=3OM1oeoHyt8DacQsWNHKwqd2nMYV_22D9X8vOwtw4WQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2B780124546A4540BFD026AE739D291D Ref B: MAA201060514017 Ref C: 2025-01-07T09:24:03Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 771.178ms
+ - 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:
+ - "23"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718386612721051&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=gZdO-PCRsw-3DJyLE7rgR1lp93j9SNgMnYlLBGRy0Sbb5RY25FyEux6k9BMoL5OmfqPXcWFeaJH6PxWc3CzMPkLFUpC6m-JJ2sFeGeAiHyr4_Ob1Qg38uketaHtd69cd9krIKEpnqEM1FlEe-6rXicn9Lg40rSQQHcTSSTsiPExhyE9SLYH_VP0armRZzjE3yYn4GoRVyCYzvx_4xDlEtHAdABv57aqB2joI49MGSA--bcfc-wEB6KhMStk-Vzj4VK3P7dr2yupeN0ewt_zz2A5tKfzGRYeNB3ogOZM0oXJqYAeWodutU6vcOv9mYSKWaRuAYYXcYGf6mzMK_QVLeQ&h=rbcmU7QubL1N-TPcfHB9RBbmTPmIU4r5UTSY6bCVQ2A
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: AD35C441D2324DCA8F726C0D36D447E5 Ref B: MAA201060514017 Ref C: 2025-01-07T09:24:20Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 844.650208ms
+ - 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:
+ - "24"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718386779830322&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=n3GUhNVEzuKVdA-dYZmtz-Ac5yuk_SYOY6FHmKDfjVrFSpHGBzlSxbd0tDHEq9eO0f-dVImnM_OZTcDYkqnLR9bM41LkM4zFQqDn5U7dsK0SUQRqL5qikc__QDdScqBy0pdZWXkroglERZtmbXPR8xynTc1DY96AUmxCQ9HUdP0SKiKR1i4xooJ2JVr51Z1qD8sw1Q7SD-c3Wtwe0ABbdw40QvJ51FA96DnMwZalMF45vcPNXeKrnZOvAi07v22X3Bu7i3PBJexKXy0cr9dKkdr1j39ITGEXoMDhsqDw5gkedf4DT3VibbKEPfLTFOodiif0IObGQW1MigYgaEUnLQ&h=TXWxy4Dgx4E9_NFK_2sFKkoXBn1Gu2I95-D3nnnUgCU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 41DBA153F0F34C8CBC92B4C622EEBDD5 Ref B: MAA201060514017 Ref C: 2025-01-07T09:24:37Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 769.821792ms
+ - 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:
+ - "25"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718386945076656&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=RPPO7dZStMUTwdEdSIgT9E55bg5m9A1eZz4zFLRUG3ArnL4dWezKRP9XT8CX2GIfUSKPoW0-jirQiyUQqS3d8oGMHZ6Vj5ZnzOp3gObZoScH4w1qOKF_qoSULYTP2QZyTs0a6j0WZ2s8p1y4m7zSu2OIYzhfV3CRTd-e2J9UxhkdnuLZPFbuoul0tTi4eOwbxulOvomaTO9M9-t3w_VO3i6c7woNk98-4pKNzIJR56ihHWfFGPe6U6jbN1PRMvA_pQ0MY3i_LMf2RHluoir-dTVRYBYFYoXblP0kfhqk1uwQ7VQgiNacqiwAdmCfo5qo7wxI6WRENo0wYD9x8D9vaA&h=yaoaYdJ59IjWA4uOmhxHIYKPNxjlm7tN9okflzfTq8U
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CA2BDD5F5869464DBFF992B935CEBB2A Ref B: MAA201060514017 Ref C: 2025-01-07T09:24:53Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 739.923292ms
+ - 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:
+ - "26"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718387110028262&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=OZhmT59_kLrpdzXO7TshvjgaSXpqupcumIYAgI1Jwp4fzXGRMdMJGE01Byloxlnkelc1ntdYkDfRVYPvM47wwH7XmISlNfclshAmxW81WA4rUquqJg2uhtyN67iMYemHLRWQBbUF3Jw9NCRklSB3f8Wj2z3z99Wd8KLzr3kh3h0RuUuwT1NiAUdrcqoZT-EyFc1l9f0bCVaNa_HiRqiFj-U61lsTo7ga3-czKtUF7JVL8Z36aVrYC0ODxlnkj43RKF2uvmMVqPR4_npZYDNwQr7pVOv0RIzCuRiNBNDg0LlmllcaC10rEdizzFBOYDlZdDPjZiC-yuRS4fOHPKNojw&h=Qm_25Zxr8W-HdfEUFwYkpJUifYDlbOC8_CrqsBxrHiw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 84C115AEE850491E9B7314CBA1ECF31C Ref B: MAA201060514017 Ref C: 2025-01-07T09:25:10Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 765.916292ms
+ - 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:
+ - "27"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718387275020659&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=d9FtA9jSOr-fSCQaxAjp6VNdJeyOKN3o4AN4-36wil8LKlL3SMp0yDeYgnKzskfhlN9-nXnrW3j2eAWDrbTJtk0wKEstsFJaZyJnCUCBroMyzHIujJzy965RcSWV-dOcOvX_4YrcIgsfOt11MHnDJj5b7moUA0B8gUVjZpwIiaqMBaNRUn_xz3xEpHryR44T8kR9Rdpzk3sbaBH6pgeag5VyhoaPX7WSXpUgzEpBA2QinzLBGhYWZIt374WAyMiYxQHJuW_5MGtT3DthwnY1ZphEOo1NfoLGyYfyuRetzTeD3YxjksDTeMPSevGEveVSl4AQ9qKKRUOR2myPYIc4Cg&h=TpfHBNTSKRXaScFWX0X1we-5eQRU2_Q7dXIkWBU_7rE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 454326693F62414D9BFA3C6994602761 Ref B: MAA201060514017 Ref C: 2025-01-07T09:25:26Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 713.07525ms
+ - 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:
+ - "28"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718387439852311&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AZOU9OqbPFBNS_wNRDn2EVvNj2qYFdHkNGWB-lpBT-MJD_eDXezwRfpTawAs-IKMmx8JWU7KM6BAdAOAcjDIHB0sxgj0gkDjkvcsTAgqfK28vdNu5zU6NJD1SVuDQf4wV1PhOKQMW0-7A-tfSML_QsLlHQCGTnHHE3O_l9RNzM9iX0Ql2RVjIhF6xjxXcbnjtcZgoJ_MNXr8yiiIqaNKXL50At4m1GCKroICQs2_eRfqtTq7TaCyoSARL4NhKqX-EpFdBguu4YuZ6gQPtsz0xGeLARN0cH5t-IpW6Tg0QIeTztPod7ufTFwlLVQDEpJrt-rxaQ5prPpyhwHmbxjpBg&h=sR9dPI6AwX64n56C8DP7xZN_lpDA0PSeAKVpMBY1NqA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 059D3291E3E6420FBC0051F281C439A3 Ref B: MAA201060514017 Ref C: 2025-01-07T09:25:43Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 770.490375ms
+ - 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:
+ - "29"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718387605030258&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=POTyZgDIp9rSxkEn_JRirEIZ8bcXrFToA1lHeHwRHoyReyQXKlN294C4xNLvmHoss1Bnycj4k7MUhFpGzwHWpFnjUf2SYuzJO9KlDmax_fYpaPlRFcht-9v02IUd5YdEQJZIihLNpJYGEjTh8ew7Eenwu-HjkO7olFuz3X2Ktu2lT-bbn8pomEXHWayW35qRKsOaR2Fv7jjaMBJZCq3B4P3VAPP37IoMCfeeB68ElooNlhX-MI7JqBvd1VpMYRH2t_FQ5drLfy-7G-g2p6AwvTuBTuk1gyuJqzfTGX8FXAg3z_fQ-bjzw-8y8RXj2QMDiuTqJeOxFp84bqb8wfrUjA&h=DmpoHDywPXKEuhWVQfPF6D9zCl5p8L3FeLTI43bFQN0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4BE4DE0B6BE9431FBD6E1196A0337278 Ref B: MAA201060514017 Ref C: 2025-01-07T09:25:59Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 737.207542ms
+ - 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:
+ - "30"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718387769936730&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=F2Q9L1PkPgJY35xJG4kfIg0daE4Smy1139FhqWQBv_Ya6PEeruQI3myaZ_nApJkOUMwIuCQJtKwS8BZkFOvL5oSAYi4_5bar2jwMw0tBZola71gmErf5RhL3SITtoVOJW9-zT07Al4n0bLAfWVnzJkAJp9vfNkc5T09nERsJeztrkYGH1gRQj_3Xpvy0MQx-3tntZOyRMFHjwlJLribegMhZ2Rj8urbV1kkZmMp_uhvelvje5ioEc1aZ7BxBG4bKxSzWYB2MoZzSLJuFLap3Ct6qOp1x0S_QQOUTna--LA6e6gdj_1XardXpeWDtUj3Pm5OXURh_u_JUXMVvQRFH5A&h=_Z92N2gQxageD0tDr89ZUWqSPJkTRI0sCCq8HB9Ji10
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 344263D1D4334BF3A508FD6D1DE4704D Ref B: MAA201060514017 Ref C: 2025-01-07T09:26:16Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 820.990125ms
+ - 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:
+ - "31"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718387936249435&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=LzZm2-PHZCt0CwkTuGOQc78w10zwKETyxJx2EmqvoyWzxjOL2YIGIYu1l9hQqLdK0TltrOGA0UfT5jeaRXoO9MZwyS63yTKD6r1mfa591UUwGR8cdG7RKGm1yIAGDeVDw-EETq50WqC7IS51xcysdSrOFaO4wFXUxDlzx4ZdGb_d02wiorlIPnPiLhuasYqunVZCG_uBUCjfFEE6UwVR6Ra5Mbv-8yNvXbwGDibmS83nUXUVX0LG_UppyeiZEj59LY9uQz4jLPcTcqaQcXI68L9OJ0dgBZMfTQOK3zzoq2RDl4e0VFdVU0VFaQa4E279NNeuLqfDJtrpg8Sq-wTgYA&h=v80HsuILtjTZ0ekK3nmBcp5GDwXAE6PjATuif07qqig
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CAA16E7B17214729B9EB50AE2008A472 Ref B: MAA201060514017 Ref C: 2025-01-07T09:26:32Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 706.949167ms
+ - 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:
+ - "32"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718388100493371&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sDJCi0oa1Wdg1NUbyYJHwQGRWlvaRye1I8vCUZCXRRY2vRIlB5Fg4n_sbdCwYCrJvfAzH6xg36YaJnPtKZXe4prcTHPs8ig3EtqiGdK4u4-U-L4Ii27acxGlS1-fwI0BGwuRJQR7BgszUlQBKK1g2CM0S6BSPebRwpGTNebhWLA7cCzKqzPWwJDBSdWbWlBkT_SUvtOteljogdI4vqDvFcPN8HeVU0ZPY2obbCUyCPTgP7shtv9tvpzgABEg9uqxMfyX2ruYUC85DGhAoA499s7aye2v0WERxFoIg7AZ5VCt9VDUC-htYxdBFlxxhCUhcaf6Wvu_PIoCia5wBNSYaw&h=KY60t4Iy9gRqis3dcvPWvm4QufP21-w6zVPTrQ9Q7fA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 82DE576A23B64ACDBB375BD3538E7AB0 Ref B: MAA201060514017 Ref C: 2025-01-07T09:26:49Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 685.48575ms
+ - 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:
+ - "33"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718388264633885&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=c9piLGsyF01Ynj72az6wujdqkg1byMQ-ScJF22CflDuV6SoghdWzLfJVocNJ8FA6c2-iBscjgMeEDTuKWHSwpU3Z91NVfnkM-VtXNCuI_FhTa59vclGc9E2zmul-wP-DPCfyvaQjcwG7R0bewz2rOI3cAzhLhBU5tMgqpcIRhV5-3zm8VYoHtVSuVQfYBs0Xbz6ztIWrHD2Sl3tWKVEfh1-2H14GpmaAx7Z6B1hbE9hMBazmku_FQMopzwgb-NZKqz1LqSIgM7h-DaFo499aKH4i29jx2bNizkHjPnL3Scg9VoFuiaocWVzt-4VWeVYgGxAgs42RsxrNT_9iqY_b2w&h=gjWgt0NWNUKfuuacXXjEsJkyI5EcWDXdU1COs0ASVHk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3EE37146BA4F42088B0E6E7719C3DE82 Ref B: MAA201060514017 Ref C: 2025-01-07T09:27:05Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 795.628958ms
+ - 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:
+ - "34"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718388431741980&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=ikbNY30ZRRejN1CbdkU8HxvDSDEeEtZCn6eiTpLoRfviGiISzjU8vh9E_7VnUGMxPQPkZXFSvH9_CWenQscOX4cVcQzkZOk4mtjpKb-PWz_GoieAsUEUr5rPRNXrn8wv_x88-5cOBuZer4krJWB7oL5Asha8PJiGv2tpQMMAxL-mJwYWhG2akY6Oa8Jsf-PGHhwoTMqxCL8-fToljn2VOLAWqL0aOXVXRNXWe3zxRUhEX_v7T3XpXrwYBPKm1lIUq-WHask-RnNxUNwmDMivJt4rZk-QK7fVhwW4SAQ1T2elI1Qv0xSKLqL2VNuACW0C08pw5KWuuU8piflx9FkDGA&h=ewosh6e-7uoqGQo-p1gcc0ecTANrq3mHMav7pggSSts
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F74E1070E7074B8891DF0ABD75DC2B31 Ref B: MAA201060514017 Ref C: 2025-01-07T09:27:22Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 770.573958ms
+ - 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:
+ - "35"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718388597266196&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=j7KpbIZ52chckE86BSK3Bp1q7vtJtId8gwil-mU30mSGrh2o-uuAjc09AvbMo3n1_1kPqWP-zAPGId6gFrABjyIOcOIkc2aTQiOOffqXpOrHBCRvJ7S4RoSBSfMEeP3htqmGY9lWn75BdxclNwy0yiCujo4yLCKcbkQ45l5Kdndg0dEgh8Bv0WnndAq9hRpDH8roFdfnC_YdIFQ9bGy9ZnihgrNOuj62fb5rkrfh2-_sDWm21yfHB_1XEwmnbjypX2xu7vYk5ug5IRuf29h1anSmPFVP0EXiPc1I7ziYaumXvL-UdQwST0npktaEdr_72BsbzOi9uf5w3hQSM_oWDQ&h=5hqls_IjtcWMeeMJYHreIlyO1zgIYWdUIHeldE3khlU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 346D35DADE1549DDAE873AECAC3499F1 Ref B: MAA201060514017 Ref C: 2025-01-07T09:27:39Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 808.692042ms
+ - 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:
+ - "36"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718388770406278&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=OF-m5UepKMVhWZt8erUoWgcNuF6DmSSHuImh0FkcpXK9SgEyGW_WBbC710KpdlaUiJijTeKC6FHenm6VjehT7JA4-9cIOx8mzXfmtTnY0-ejtKjptgnhjPBJQgVMXnHRoT8Jn3la8FarYAozkcDpm0XEUh7DN35Hj3a_7QxnFJ8quobYF57Qc6SmkDMDpeQ-93Jj-9eFCQd1N6pDzMPTciWKQ_ISD4N3uSYGHVYJzLVw6iMoIA2m5POXT42Gu8vanKAM1Bvwvr9x-SIDLv4yd6TFNI3HZe6o1FC7OvNhevr8jiFdIe59dbxesLN210Px2yTUoNuYmQ11SkrF-Es7mQ&h=tlqekIAntDSwez1LD5pOsgjkZc5G3thBP-zKokeiD7k
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0E7508697F234D859A98E36F9961CE6A Ref B: MAA201060514017 Ref C: 2025-01-07T09:27:56Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 966.452292ms
+ - 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:
+ - "37"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718388940442595&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=IHCcUmxE4ZKUNlMHXK6OhC3jMUtVdZqcawhrz0xX4lqZQyco0dGjz3lQfp4tMs_wngXs_Bdhnpg_ffSy2gddt2sdzdGjVGgl4frfkuOGa1bs870PwIxYqGM9kbhFMzREUS78hR9lJRhVv-qelibT3lTHj5fhcpWTvGCorI8xCXMWLMIyEbUxHUD1dStcvd92Z13jXGgx47clCb4nVCSBcTfPhrDHh_2H3kNLQwrlq1i_wFfe-syq2L4pNvjaVQrZX4ljlmaqcvOU7hComBiw-aYugfc66u6eLwVxIYnsBYLktA7ZHaiwnPWt4gkFz0WD760PqVTkVL1Clylf5-LVrA&h=GEH43QT9MNvOdDbUjKKon56raAQIcxl4uwLfY-os_D4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9C61106BEBC2421CACFB870FED901DC6 Ref B: MAA201060514017 Ref C: 2025-01-07T09:28:13Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 769.344166ms
+ - 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:
+ - "38"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718389108743519&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=s1uyry05iGwhl7b7iGDpo5FPVtNsdgqPdogxsjhpTmjX53SOzh4MbQye1VLck5hDHXdylk9ups4dtWkA2GVvND3ekhRRGaz4pt1kYwDQVMW7B-r_8GctG8TwXqTbKAoFIgZBO8KOxp_f330Xe0_CSv_TFpty6aS2Nd4ZbN432IxtKWEDYEIOu60yHyW1Qldl3WAKkE5L9l2M1KLDfC63Lk140jtkaiA3MUukAY6mtpraUgXvcjAxWGYydCcXvuJRup-u1BLoa0F6jKi4mPGKq9URJVlKJUByTkh6gTrHiaK8Z4pRrvvBkiW1dTfNS0J23KOlY_BdMS7pBkjr1yZtAQ&h=z9RGWhB6BRDeXX3aRPGAATrpYBL46AnGxRRT0wq6iKA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: DDDFE83443F74217A985F06582846DC6 Ref B: MAA201060514017 Ref C: 2025-01-07T09:28:30Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 772.08075ms
+ - 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:
+ - "39"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718389278061106&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Voe9FA1E2x2LDsAY2HuLGibwo0lIMoLmtbk4BlKw72zk3qnC6vpE1e6Cdtem14J4AQdAQRXqwo8c7UHRrug8BG3jX7oXOnkeZ6hKi2OpBmHrSw1kf38zHuzFysZhatRCZcMPEK43dIiL5EzPgX3SsfeTparB7KsiukAFFrJ6OBx_0O2phaK0G6ndzpxISIcSFUVyMBaEn3pcXCOM_5HyPPxNOBrG3P9CpUgA6yUbC5rMLCHYztMR7HaDlB9T7AynVuLJkJKYLpAZ5Cc2CelTwr2s_2UClcgfH5mGH03xy7ej38UHkxlw15IYZYqRBrx52TIMG9swFw56FaRzxHSaDA&h=irX79jlV2WEqsXWQN8f7HEI4hlTtiqoy0tHB2o3mvpI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 64447AE4DC504697AE489D9CD83691B3 Ref B: MAA201060514017 Ref C: 2025-01-07T09:28:47Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 707.07625ms
+ - 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:
+ - "40"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718389442961653&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=pmhDFgvfUIruwnY9kt_QaetoI0vd5GuNgwd0S-9JGsg3GpuMYjOZGZV5vyOKHrtH75ajkEPi0C-3eQg0JYB47grmdsDKglmBEq3tqWIqW1rJ6_SUeftUGjObG2gQqiDIN1HjjqYz_wnAMArTx5MZyE-MqK8bHlUt4TKXlJ_-wuoKJ7cBT5GrGb7IU_8Gm9lIAemOwIR5Mht6PVazSUKFOlR6x_tdkBSin_eny5wIu256rn2KhdV00ZQ5SHwjgkvA7yABOH3sKUFyVTOS6B8Yz0q78E2D8TLDk1IjE6zYsWO5RUW7gJPDKchxt_kTsdbBEJfnA3XLO_6fOT6JMuuAYA&h=Dh3_Fq37I3KXe9HW_NxxGRe-MzaWBRNOf-4H4DX9qmo
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F106F89A1CF9415AB2F67C59681ECFAB Ref B: MAA201060514017 Ref C: 2025-01-07T09:29:03Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 752.825084ms
+ - 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:
+ - "41"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718389609641502&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=LeMjwPojaKUhaP7-9IdaWOKceGCUoYEK0zXaIwfp23hrFanhcJa8v7qTOIbjbrfcp5_u0eCE4SiYZWf9V0a-YogRkpxHUWPLo46IXoW-dHkkW0fx6KTSbhsAfJMZ24WaJlLOKCw-o2VdDV6Dmy8xY7iZBWm4PB8zGvvNjub16gWNL07QZrVLmKVlC4xxwla2PgyjBUUDuaGqEwmNtNlPfSQ-5GEOaICPu_yZz740n25tL-YRmvx2sPxIKSXy-GluV6YlDPPtqP1g-ihnqko4zHhR-KBrWGwyvaFLsgleLDAaM5a39rnvPf3ZNucu0E0m-yTyACvagjHxNlt31pQK6Q&h=RiSqt1RO9rNfSMmCejgFuCHU1hhq3T4a_NCmcEH7rqU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F095E711608E4A969913447B72FC622D Ref B: MAA201060514017 Ref C: 2025-01-07T09:29:20Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 714.070834ms
+ - 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:
+ - "42"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718389790560895&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=ayKq3leYrZqnFNcuK5sGZ3fVn_z8s8KBRizdCptIvnjUaD_2SuOVWcwEa17xSgcR6a_II79xkBHHwNnqAHaDc14WvE1IqhfsrF5kUSH4K2m82R_LiC0ICcRtFFwgEUrrGXYT6mLpyzbXKqxU3KzpgFBAGCy3v4cdbQFjRVxJ0-kFbA0fB31Z5t3Zli8p5pSzHZDiCXkyYfXu41_cm0NN8hHK5w744duIAi92xXmvCpjvERljyilvGoQTPXtFBYjWRzC0yNPOyX09hezv6v_yOL4QAwtFh9gjWBB5bCRUr7nimmTnXQnXIxpy4eTsWrxIAR8XaGX0d2d31CWztOrQfQ&h=iwmnKGG_WhZFlSpfvFqPgUKWaRPxddteyzcYJ0HH3Mw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 166391198E83442E84696E76B7E686F1 Ref B: MAA201060514017 Ref C: 2025-01-07T09:29:38Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 746.979625ms
+ - 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:
+ - "43"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718389957195698&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=ssOXWX1omX0CVgUjAIRBTlNrUxBVHQ3f6lLbkAeDAp0ONRWnxvbM986RzxpRCJEbLzc_D2y9S9g9GnrAHSALnn9tP_A4lcDhgpCPp2mn7eY6s1dqEMO3O7dy1hcXYWkIbLOgE1LlIP8ttqm3tqchVjK7DriW8bUcUTc8osPz7F-BBMq2VFQ1hDqqo8vj3VoYflFP-xT9l4FXvAPG1VRmuh5SEQX-oL6xTjPuqd_FlHChZvsjClD6hACUiCo5bu3ig_0IUj_dQ4Dk3iYLiBHuArdK_jovRu7BPTXjmwfKA1o73zTKYXJeH69Ifoq5Gmg2jNQhXP_9cqWbJpkBixyNxA&h=zPXzPpK3v9AGKFKCmuWKOsaTwO64nTFRx2wM8VQtpZc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 6510050637784099B9A785A2F858A07B Ref B: MAA201060514017 Ref C: 2025-01-07T09:29:55Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 804.922209ms
+ - 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:
+ - "44"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718390123587028&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Di0M5Um0VARW25VWMbhBKjjTPcJO8JUpKndsQL3IugoT9i-llKDxTZbtJw7VFJWmX_k1xVH33EJz_C_GjEaGEQ3KIGGd7PMGt2yKE2fu4WI5X7kcr_ik1J-6LXWDVsshpiGD4CFLzizjzmPxqjLUszRczGmR8-S9SEeRZwGQuyRohnlInxFyLcWJHPjO_w7X9Q0Jg8BF8iqdo-RZ7cB8qvdr7pv4vQWjQzB-WsGhJioTwfY6CeZ6caYVxZJumgfYzB2kDgy_f4J07aEiDLAScnGf9Yibu_HX0vuwURjtEdTNFov7PeaS_lZG3jr2EW19LXX8jNMkfNn_sVZ4NHDvfA&h=BsxGFQw__iyQ1FPQiAi8hRpiExiqmgZZkYE8TYikIxk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FD06B16CF6834F0EBE910AC57C4FE0D1 Ref B: MAA201060514017 Ref C: 2025-01-07T09:30:11Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 742.061167ms
+ - 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:
+ - "45"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718390294576286&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QBK8IeZMAvddHe98568vAO7H_poeui7DNI3ZpVlyLH4LZpajvm46h9v0xCRIb53WPR17IUvcrCLZFeMCN384p1wBwKDr6KicxHaPXHJ8wuqlrCHHcKQM3vq7ciz1DQikQyWx4gJx_OnpfGbT-7g4LKo7gZ9sYj5lJdOnzj440uCBN-R86WZcqETRt_JwBxnsctn1SHC5UpJdQmc4V6aZWMiN-2lTyfv8KMcOXn9mHuz9SHBGxNmIlGmMm6s7c0BVKsIQoAk1qunym5J3Sr9LDDGNQnUE8YTDoYnPG3DZ7-VeklcpQLfYamMNHnSRgB99zWmAvQ1YrDWwAjsfq-YbAA&h=c0NrkfdraSi-yHY9fSPvFrEkyoZCYpWmfty2tbBGYfI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7D7F86F86F0F4041833F9558D99A7014 Ref B: MAA201060514017 Ref C: 2025-01-07T09:30:28Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 715.592959ms
+ - 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:
+ - "46"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718390460271864&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=HXEhsf_o2Y1Coaz-ELaZodBXrOPEy_8jnLgU-0dkGfHNgo03DQpcAXsnGY7-upmucZyvYjZAQSa_shVkRxQb1gGJJmupmxYCyovfzbcT5aC2PXOooCDOtFQnNT-eZ9SiQCq4Ug7PMyI8Z-gPoOTLG_J8uyaL4yiY_paK6DUmcNuyKbSR0NnYIfQcFSAJS-S6ZPJBhprBJFiTU2dJ60fg09u1cKVIHGMmBiwvurCCqTL6W53FFb2NOxEiNizWDDSY19XbCWgDzt0mR904MJz-Z5ZY1IbCFyv9FdqqdbV2TgOjA7qs9eFcO2B_xjlvr6d8akeRXrzv5_mZ-40Xj94ZyQ&h=TMLWf_3KApz5qZH-_oRcIH7MQKpOVaUDr91yX0oEdSE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: ED5FE43D4D40403F82DA7448E035EBF5 Ref B: MAA201060514017 Ref C: 2025-01-07T09:30:45Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 882.413417ms
+ - 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:
+ - "47"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718390631974626&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=HBjWfWVzFdC4JIirCjD9neHfZ4EPed7XFNZ0ctBkdlpshCNChqeNZjZgWUBF4PtoSCY_-tfvofA83OFXfxVHFk7v8WQLpascEluScpm5IMHIQ6JnuhxIhjuB3RKbfqAT4C8gUpCXtsq9mGPF627XEuZk8i8vxjAlwmKDQwivzcVpn9-ZDKTSikEogYRcUXSNXi3zw7I76NEm17bsoqK7dIlXatvwyH7CbIwPHIyPW_3cM7cqHA-XVnyerpBtWCl9vwsd2b4lHdalNm2a6CkiAUFygPudCYgxMKbBAN2mg7OqVRNk-6GA6tf_Xn3AXpzY8D-PwGOMUO7J2vaMmkffuw&h=3Z5ZdjZT0M0DU-ZSPEn0_tkUvxK60vmvJLlT4zIJyPY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0E9B5224F5E742D28D62A55660E6FC0B Ref B: MAA201060514017 Ref C: 2025-01-07T09:31:02Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 876.937458ms
+ - 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:
+ - "48"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718390798826010&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=z0plPUThzYa9pPRKzvYTk_B8Hq83KDijPXWSdFSIqpeQYZaVRDQ2x2UlTBn1GtIjdH5v0ME4JgCBVT4qq4nUJVVti-EdPGFcU6-v3GH4_c_WsZqBxcdapm-6nuqOvThhQ18uOvlN9RpVkhSqrANG5wftmxx2kTOiluqNScUKdp4Vuyctb8RgnC_t3VJvdWhngA1QBtFnzAdNk-X_oYkLVMKDzbzQKDHv1LmFf2JWb6lzm-U2ihquA9elmacmLi8ynTBwJzudhQ5M-e3uIf2JjFBMd4kU_hB5JC9rWFHl4-3FPtjih5PXjfxe5j1VMNFYqlNgURdT66u_U8eevbfRTQ&h=lIaVPVcDK1JdxYnd3bcvZbhpUYHub4XJfxXZp4EdZfg
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: A1040BC46AB448EF901C6610FFEB5BEC Ref B: MAA201060514017 Ref C: 2025-01-07T09:31:19Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 808.323ms
+ - 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:
+ - "49"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718390968507961&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=GonjYXp2M6oN6f4pMC8Ktu28oMrbxzi8spiIpMJwCEXUx-g5SijLSYcwfGW_dXPoj58Xr4pwHy1CrJQt6q3-xvjY3ztliX4t0ru2Ej62frwrk7D--xqTTCt4kwUYVM-poJ79oYwiSzTH2uSAg5chzEEHMOkGaT8bd6h1iLnWuOTX14VGBYelJ3JMeQlDFHM6UOVaQo-wforG6d8RispNmlGQIhr0a20P-ElzPbVCuLHFX5Jqv2y4gXCnPQUAX2K0fSr5JsH5JrOxWUb5TqqDaCZedWu4bD8gxmG35SZNtLyT2pFcMzYX8CQzzxYcF3AdWpwLXEDyX8KgWOLU_5N8_A&h=RHiF0CeN4gwq55J0ecIflP1RoEak_Gw_faefbGkOvdA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E6FF79B9ECB54CD0AC7F9B0009D6FB6B Ref B: MAA201060514017 Ref C: 2025-01-07T09:31:36Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 710.052834ms
+ - 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:
+ - "50"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718391132693610&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=dIogxBZS_jY528cmT_X-EyYbBMvnxxvCQ48M-IRfOs5_9bDPqoNqRdyFDlYiRTDzpTWSvmIwQCqXz5fEWBNZhWKdt-XG5xrDlGepEECkAVmRUeopb6gVAi_1byh8eThN4ai-E0O-VCNZ8CnjfLUCxmwys23ALNQmWGEsLxXvcoFq4rYK8zDu0OPE6YSX0HfOd3YR2EMVm2GKCb_OqP3THDTRrRiFAkWpIMT590obfEPIPMhu9mmF-akBDKAqUARdE_-JAZFfKXqdfhZqMciPztIsAcww3qiEwHRlgHar3-F0NGnrfahTZ3j7sCwXbDCMD8wXw3aw3qzQDqrxQpZU1A&h=zCAeCTstwDz5ng2L1vz4xHk5g88qMn_42jxxqBMoeu0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C25B571D11044E3A8053627FB0DB7A15 Ref B: MAA201060514017 Ref C: 2025-01-07T09:31:52Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 713.56625ms
+ - 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:
+ - "51"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718391297197325&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=ECWB3In5E5DMdhvttVSx8ZjEQ2FoKKjvPRQnMKBCFa9ueCk-1TrXuaD3a5jsBoP6J0IUXCS4G4BkbaDOjBwWM5bhPYF6Jpq6wcrhUH6gzwpSItg5TZXx5uH4JtncMEzPQmtYDV06O5FGGCY_HB1h_JnV8G0Rf6YEqXQxQt5uHM6exLHQlYzxQ7XuucDtjhfgQRCA4zxPghFDLdzBhvgK8a9YK9G__6f9EKxFkTEJVUe66n34XJGfF1yA1Ou7JMFdzoY4yNBUt498wpIkk5w__GzPXedkH_UA7el35c0gDa5ykm7rvTafQ96V5LkutGFM-EQ9ABc4tnZY7QFWySRoCg&h=dFpbcl7fTr_Lh5RfYU7xPyrCDiegIN3IbwoA71Lr36c
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B2DDE60630D14EC2A29E6A6A63729910 Ref B: MAA201060514017 Ref C: 2025-01-07T09:32:09Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 728.503083ms
+ - 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:
+ - "52"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718391462701536&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=xDy3XpLq9ojxttURcXYBnhnILAdGiK8c0yOFlL44H-HZaTpsbI7GO32myzSzxFKPKjwqLzn3NI_re9IIAPN61SCx3YyERC5q0eNY7jU3ZPgVXM0lo6qyDrDBV7CIg9qfHMnnLcL3B8HV5CxyOlymwUFrtZDyowMwuRALS15JvUjTxcYUu6AnbICpZrF9nbTgs5t6pu1cah58Dt8h2hzZilGQGRXRKx_I8D9LAuKXCvgV1VkIvRFwgVzQEUjBihOaXea0GXVlMxWJZoXqBy5VmfZH2blrYO_Xuk3pqqNu1zWF3_7xRCelIyBLZbg0OVXGfxg24oLSRqK0xh_9Vy0sUQ&h=vTLEeGmjJHFj18CwovrhZ95WFnSMpOzxQZATahRJ5bo
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0B423D5430E649C0981045BDB20D449F Ref B: MAA201060514017 Ref C: 2025-01-07T09:32:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 742.034792ms
+ - 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:
+ - "53"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718391627317753&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sUT5bMsmajcHrtaLtyOwAvLW1g3Wkb38tx0K_iEBngjdSGBRIIwumiApSoV28SOTXxTOloQ_FNB_sgOw0A2M_BsVtWMA1vt4Cey7G1LWXm3k1BnuGUwSZ5EC1EMfGQ-BhLxfxcWO4FLCVZCu65vrHwMQk8W4ujaF4QfHLHQq1d7Uc7SRMuUnyyUDDVgoAnmMnZ1_ykJjqzVayZV6Z0z68y8-XGVrTXgFkrcBfNhee-IaTv1T6WbIW0WuPG7OS3DBxaM0vo8vSJWkLmoOSTiwlHgmYBWdZNrTIkm_F2pc4aWjmF3ZCkAFWA9IHLIIPMvuUCT0uLdUNV-KdvXulZjZ_A&h=EDbBRldY8fCxG9Ix91DwtcghPrJ4lOI7AlJ4B-5aYRg
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 62582DC9F70246329151CD606CB9DF9D Ref B: MAA201060514017 Ref C: 2025-01-07T09:32:42Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 809.606542ms
+ - 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:
+ - "54"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718391793723769&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=MlB6KzzV69GW7VOdozDoPWhphF8q1n7ExhMO0l6pCaJFDSAycqgT2Lc6HNFCYx_ztYTZDKeXcELH5xtWqT9KfiVPpErQS-9325_KdmTWXuhBg9eIFm2Ez_ROo59ICxBcOWc80buu7-UZpq1UektvBbV4hKgwAwUvLmcEWTqjWztOGD67RULFQzjv-HCPKuizuzp6ci31DMe_8M3ST8IQFozycZhYwZIGq5PKbuEjl0qb6DQ-a2Vss_4GUbJmsRNu2hR2fTgML4ISwJRqsf1gKQMK2Rx7axO8qmFbORkMUZw8jB_n9xfNh67BkUe7k9GZyW7l4lujIo3DgFEZWOFL0Q&h=K8bch0msXWFHUBDLqKG1myal00qCM5vzMvgSiHdVAJg
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3DCDF22804D644E38F4611DA2A7FA066 Ref B: MAA201060514017 Ref C: 2025-01-07T09:32:58Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 764.610958ms
+ - 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:
+ - "55"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718391954817239&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=tSxotMSA0866GiRFs2Runj8_Weuw-jzsCylu_V9e7xjPjevs8OnzlIJMxVGMVWTIOmDiZKVhVGUdsbQn_YUAv9HddHKg9cOWQQNkqTJKvt0LE94q3lKpelQIPj3Bmz6Jug1f60uJjalYVgk9j64tPJQufSPJq_EHbFJrJFfZzkdByrIC6YyhJkuiwexTPOhAmjd0aLxr6GvCqT7a0mhwxRNeYZBekbm2Wn2t8mOmvQkhqiRxWODqcwlxT1PTnsUTcB6TUSZVj4ncVPdK3llHYSSybRLttUO0RY5Qm0P04Zzy4BvMtC_eYaXCxrGFhpOL2PgcsTCRcLuWemecWoTeoA&h=kdQni48smq5iMtykcYa1y0RSckxfzoyVAC0zIenKvU0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CCE683BB30084137BFCC0E227F46BF56 Ref B: MAA201060514017 Ref C: 2025-01-07T09:33:15Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 414.294417ms
+ - 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:
+ - "56"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718392117511195&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=gpQ1ZmAC0EttX8M4lbTPTLAqB405ICgtbfy4byl7YtmqnBcHhlYShR0GcDz4DRseE7R3Cc4HJZZKVjdQtLG_p89mgS3aWijAZEhO0VKQoyDeFKWVPaPFuYv0UcEHQsFj18SYLpxa31Y8PO7h0I_Mjp9bFeLQFQxzP_gTdt5Ar7R57Cj-sIoPJNBfPyo4l-zqJzLzDnExPxRB0c2_1Xw0atIz1nHVagVcI41rT0SVMXLMUqKSYHRujRaByzlCu3BaFPueVYkf2TVLGsdFyjVOctKVvU6vniebHC2WgQrBnmlhgq3qVOIa_TXBlO4kGtJP0cNrsbHAG3PozCdagpBjSA&h=gun9zR1S9UFXaub5isiK0Cf9Mqrd2A8p9oxxqWL3vBM
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 117CD2B8E8744675B7AA847F5E5EB221 Ref B: MAA201060514017 Ref C: 2025-01-07T09:33:31Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 725.882ms
+ - 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:
+ - "57"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718392283205473&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=WeLbTJ001CorpJ7y1FkhTUeBHjbZm5d-6mi-75Td54zmpIImPiHPmPRSylZQ4JY1tsZyJF1UrPcIAmMWmMHCXdEmcxDxm6kpK6PIhtgktmjxd9j0UhlNOVbrM5q4t6bPPgs5PuOV2lubaV28owjJPRLhTo5USg5xUtv5tkM-VSlQd47AjypYxkSBDT8Z4x4HsHoXFD5JWwg779s5uo_7Z0hcKqCnzKeV8nVUO_OlI2YTl6avme_STvc-dJSz3a75zBc-b9pBObC_2QCW1F0GdSudQ0kKM3AIXFdK8QbprAzZlptSXKQQMx83GJvmYdiKEWpcRR4YZAYOlFdBMSpl9Q&h=UR_6L_ugGgiEi1wjnuOtxs3yIopRbkGxJr1EhmLVQmw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 5D833458E59441479B969ADD3B40B049 Ref B: MAA201060514017 Ref C: 2025-01-07T09:33:47Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 885.49075ms
+ - 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:
+ - "58"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718392455651054&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=kqBHYkvQnzn7wOlkDxMKzBjWW2cUnC1uYSw6mnXAVCAAmWhJ1fuvN5lsCAQTFmGioNu6csnQNWWmT5gT81U3dSrqbEJhZHK86WrS0Hr9t6nBNeDEkGQdj_6IynuoztoC6mASrxq0UsbCfd8pcLgsroAmp5WP1Ys9y9PWAfwTCleeI54BTLUqNGxbQ--cgNP65aiAPD3cFXsEUK6R7or0l9Q6WX365eLinPCL2G1DAiUonkDIW0Jio-WEtW1tD-cETOwnWN95LfKNzSCOV-TNngd_sz2jjGPuVVe54dzf17jz0QzL9vAuGwrcPwqrKh4IySwQ5uUrtUK-5gnHVdghjg&h=6tkts_9I6jGnZGvebNtoo4fRCcWnh8a8x_RgJRVGTfk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: ED7119177299424EBDD11FB3C54DF4E4 Ref B: MAA201060514017 Ref C: 2025-01-07T09:34:04Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 782.398417ms
+ - 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:
+ Test-Request-Attempt:
+ - "59"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 0
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "0"
+ Expires:
+ - "-1"
+ Location:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718392621012963&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=w25mcD2KwYee3sOj7n1ZIS8WlP93-lUu2SmwtBI20qv-cMh3pLfb2hWyO8Xvw4MMdTzxJceVtJCtXmzL4XIBpG8A5C8weOfIs1fx2qZUfe94NOdt7pv658-ibiv-mGLEYhybbQ74hs0VJ-bQQFOCd_AS-UJRrmNVWONbNVRnlMJgAHdeHOLcq3yzBK_VEjqQHyGLf0bEM8SOQ9_bH5TfVcMvb8U10d14_i1J0jgJsdSPGMy_1tW6KLoNO8MpubBYyXKFh6ETYLIQ8fCSulZn0g0ADxkv2hkFxyPXt4warrz0eaOabrzJlDK7bkP4Km7nSY9KLdJae15SNX0BfrMHiw&h=8iDFUTg6r6wpGLBQ4L_yIH-pr43w57xTry2qHTrRSY4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0D2A5812C5254C5F847E9B01046046FC Ref B: MAA201060514017 Ref C: 2025-01-07T09:34:21Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 202 Accepted
+ code: 202
+ duration: 814.2015ms
+ - 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:
+ Test-Request-Attempt:
+ - "60"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationResults/7a8d5e4d-bfec-4dac-aa54-6a5fa825106e?api-version=2024-03-01&t=638718382569084446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=VVlQQgxMMZyIEeSZ9UZ1XJHoUn-YjQrSQ9SG82TbmDkacIjz51wC99DvPasfDxr6TaxzA3hgYzfuhDv5n2i5UKXsNMF13_aF1XmoPwXmnCU2VAGekRw3a6DtL7-R79ltTokAN38RxxHPwzM3DY_eRcRUkaAfQTl6N-g3oeZhiUsnVOZYOcZVzmcyoFvtMoY8Ur7F84bHC1B2hcbfKHtVPr9GWW1dBbdZ7XxmA-j7eQYRLYzXD4n3mBYfsQTWtjOWfYGRoBkKZyzo_7QZUyd8DMJd_UVkxznpVLx0CyIV1XE2wGzf_d5ovd2ufsVWhOJyyhNgfcAAXtJB4yaR9mSd5w&h=4uzey1Kcd9c6P27j6LLqYYps_4RmfllEZX0alKr4NCg
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: -1
+ uncompressed: false
+ body: ""
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F1C53407D62D4BBBAABB2FF2E5CE7965 Ref B: MAA201060514017 Ref C: 2025-01-07T09:34:38Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 204 No Content
+ code: 204
+ duration: 739.886458ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "4"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs/providers/Microsoft.App/managedEnvironments/asotest-env-lwfric?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 241
+ uncompressed: false
+ body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.App/managedEnvironments/asotest-env-lwfric'' under resource group ''asotest-rg-yugmgs'' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"}}'
+ headers:
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "241"
+ 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: CEEF8DCCE64D44E088C810C17114C18F Ref B: MAA201060514017 Ref C: 2025-01-07T09:34:47Z'
+ status: 404 Not Found
+ code: 404
+ duration: 264.560583ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-yugmgs?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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRZVUdNR1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718392933397204&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=yyyDJn0LRXSwhnXtIUQobgOY16wTrZz7UhLIhNn5ga2zo1xESFFHaRzf9vd6FmuVAFeYZmNTFNIs4X7ua4fakCtg9OsjIc2jpG91Xoss4ByZBxJGejBrInH8ZIMeIQM6em0N54zX6B_q0jZFPUp8FyERksGsIQijCmoVcVsinZMN-xlqIzFa8LpIizwutrixeU0ASFmgJgObQGG9xpq2n0oXau9Xt160BmvZCP8bPmUZqfR_moyP1sqmJmlvcq774g67xo2Li49noDokxbovo8ircFoNORwUShzTRvE6xBO6s5cMXc3dQwAyUae7z_WsQiK80Z7px5pCjLYM4ogxgg&h=4kml6R3v43bvGmY_5KEwUDkLMO07zqEbyXc7fHGRy1I
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Deletes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 15DF4510039342558AF4A50B09C609BA Ref B: MAA201060514017 Ref C: 2025-01-07T09:34:48Z'
+ status: 202 Accepted
+ code: 202
+ duration: 5.185749416s
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRZVUdNR1MtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638718392933397204&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=yyyDJn0LRXSwhnXtIUQobgOY16wTrZz7UhLIhNn5ga2zo1xESFFHaRzf9vd6FmuVAFeYZmNTFNIs4X7ua4fakCtg9OsjIc2jpG91Xoss4ByZBxJGejBrInH8ZIMeIQM6em0N54zX6B_q0jZFPUp8FyERksGsIQijCmoVcVsinZMN-xlqIzFa8LpIizwutrixeU0ASFmgJgObQGG9xpq2n0oXau9Xt160BmvZCP8bPmUZqfR_moyP1sqmJmlvcq774g67xo2Li49noDokxbovo8ircFoNORwUShzTRvE6xBO6s5cMXc3dQwAyUae7z_WsQiK80Z7px5pCjLYM4ogxgg&h=4kml6R3v43bvGmY_5KEwUDkLMO07zqEbyXc7fHGRy1I
+ 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-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FA4E4A35B7964BA3A405F5F8258632C3 Ref B: MAA201060514017 Ref C: 2025-01-07T09:35:13Z'
+ status: 200 OK
+ code: 200
+ duration: 1.103186625s
diff --git a/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_App_v1api20240301_CreationAndDeletion.yaml b/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_App_v1api20240301_CreationAndDeletion.yaml
new file mode 100644
index 00000000000..b4567ca52c7
--- /dev/null
+++ b/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_App_v1api20240301_CreationAndDeletion.yaml
@@ -0,0 +1,7023 @@
+---
+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-lwgnys","tags":{"CreatedAt":"2001-02-03T04:05:06Z"}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "93"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - cda4e298c4e48532c637a0192e014996c4fb7af811b629d90892705df4e06feb
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys?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-lwgnys","name":"asotest-rg-lwgnys","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-Ms-Ratelimit-Remaining-Subscription-Global-Writes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: 489773773DBA441EA61346FFB0714F52 Ref B: MAA201060515033 Ref C: 2025-01-08T07:48:47Z'
+ status: 201 Created
+ code: 201
+ duration: 4.551801083s
+ - 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-lwgnys?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-lwgnys","name":"asotest-rg-lwgnys","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-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F05E7DD4BA7542FA9E62781DA52E3AF3 Ref B: MAA201060515033 Ref C: 2025-01-08T07:48:56Z'
+ status: 200 OK
+ code: 200
+ duration: 319.422667ms
+ - id: 2
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 163
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-env","properties":{"workloadProfiles":[{"maximumCount":2,"minimumCount":1,"name":"profile1","workloadProfileType":"D4"}]}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "163"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 5ba6059f9e684b5dd2ff3bfa766a081c4a685cbc241467e7ff93f62ba167e7ab
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1641
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","name":"aso-sample-env","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:49:02.3454776","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:49:02.3454776"},"properties":{"provisioningState":"Waiting","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"happyforest-2166123b.westus2.azurecontainerapps.io","staticIp":"52.156.145.2","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/managedEnvironments/aso-sample-env/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1641"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "99"
+ X-Msedge-Ref:
+ - 'Ref A: 47E4F834B9BD4025A12FC01CD7A668C9 Ref B: MAA201060515033 Ref C: 2025-01-08T07:48:59Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 5.017771209s
+ - id: 3
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 170
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-managedenv","properties":{"workloadProfiles":[{"maximumCount":2,"minimumCount":1,"name":"profile1","workloadProfileType":"D4"}]}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "170"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - c7d922fc0ccd7fce833f90b013d275b0afb90e1fb6afe4a8abf6207ca4bb0641
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-managedenv?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1663
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-managedenv","name":"aso-sample-managedenv","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:49:02.6786597","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:49:02.6786597"},"properties":{"provisioningState":"Waiting","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"graypebble-e2c8e539.westus2.azurecontainerapps.io","staticIp":"52.148.145.193","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/managedEnvironments/aso-sample-managedenv/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1663"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "99"
+ X-Msedge-Ref:
+ - 'Ref A: F5A869F0AC084A17AEFC25B685B72D5A Ref B: MAA201060515033 Ref C: 2025-01-08T07:48:59Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 5.340945333s
+ - id: 4
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: 680C48E047B941FCBA83AFB19D69CDA5 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:00Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.520325291s
+ - id: 5
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: 656B2BFF952849098CC60557A8BD4109 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:00Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 5.021918375s
+ - 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:
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"InProgress","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: ED2B60469057466A8C6649E69F41895C Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:11Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 788.692834ms
+ - id: 7
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"InProgress","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8D46D7C8DED14533B4C0623F906B029F Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:11Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 713.663791ms
+ - id: 8
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: D382E1BF41AE484A868134E416DFC9C4 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:11Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.1296985s
+ - id: 9
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: D21F2A130AA3476A98D05B769F768893 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:12Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.324782s
+ - id: 10
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"InProgress","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 763A2950B66F43EB85844B0241B2904B Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:16Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 784.061584ms
+ - id: 11
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"InProgress","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FDCDE57BBAC748148E49B2E0EEB3BF0E Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:17Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 864.002208ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"InProgress","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 205A254E252442D3B777C0AE5B7BF8DD Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:26Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 790.897667ms
+ - id: 13
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: 793AF137CA0A41458403314ED5246BE5 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:23Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 3.95569525s
+ - 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:
+ Test-Request-Attempt:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"InProgress","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CE20601482A54D6E8DA32ACAE9FC5BA4 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:27Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 754.525166ms
+ - id: 15
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: BA0946BFC966463BBA3EE23852F2AA83 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 3.876026125s
+ - id: 16
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: BEF5E1925F754495B053739D77323D8C Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:39Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.518860958s
+ - 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:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"InProgress","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: EF1D0C66AFDB436FAAC676E741C0A9BA Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:44Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 731.130375ms
+ - 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:
+ Test-Request-Attempt:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"InProgress","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 61A7667EE963460A851E873DCA6020C3 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:44Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 318.24175ms
+ - id: 19
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: 1F9FE1829DD54799A8DFB396AD753291 Ref B: MAA201060515033 Ref C: 2025-01-08T07:49:41Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.211626541s
+ - id: 20
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: C115FA239E464032A1DDB18F25E090A1 Ref B: MAA201060515033 Ref C: 2025-01-08T07:50:04Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.084766292s
+ - id: 21
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: 5A9E23441EDA4436914D9C4D45D848C9 Ref B: MAA201060515033 Ref C: 2025-01-08T07:50:05Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.097292666s
+ - 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:
+ Test-Request-Attempt:
+ - "4"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"InProgress","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: E24C0864684A485B9327D776552730FC Ref B: MAA201060515033 Ref C: 2025-01-08T07:50:17Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 295.745917ms
+ - id: 23
+ 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.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"InProgress","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2BA63D6814BC41A2BBD73A3A4BB74CA4 Ref B: MAA201060515033 Ref C: 2025-01-08T07:50:17Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 760.326667ms
+ - id: 24
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "698"
+ X-Msedge-Ref:
+ - 'Ref A: D4829D05486F4D82A33523565C3E4B5C Ref B: MAA201060515033 Ref C: 2025-01-08T07:50:45Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 2.975908167s
+ - id: 25
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: E819ECB03F3F496EA1D922A8D5F0CB52 Ref B: MAA201060515033 Ref C: 2025-01-08T07:50:45Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.030220958s
+ - 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:
+ - "5"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"InProgress","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4A5355DE5B254E94B082318D0BF5F094 Ref B: MAA201060515033 Ref C: 2025-01-08T07:51:17Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 703.640541ms
+ - 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:
+ - "5"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"InProgress","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 46DD08423C624CADAC7033D2BF7FDFB4 Ref B: MAA201060515033 Ref C: 2025-01-08T07:51:19Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 287.934292ms
+ - id: 28
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "698"
+ X-Msedge-Ref:
+ - 'Ref A: 16E3288D86EB4064B8B0B7540CE516F5 Ref B: MAA201060515033 Ref C: 2025-01-08T07:51:51Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 3.851170166s
+ - id: 29
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: AB315F3ECFA741D38861140D10B0A324 Ref B: MAA201060515033 Ref C: 2025-01-08T07:51:53Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 5.390086583s
+ - 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.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"InProgress","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 46F65F6334FE4EE2816D24EC9CC1C213 Ref B: MAA201060515033 Ref C: 2025-01-08T07:52:19Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 291.175792ms
+ - 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:
+ - "6"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"InProgress","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C5D8C75A85A54B8C8159F7E06BFA470B Ref B: MAA201060515033 Ref C: 2025-01-08T07:52:19Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 702.866375ms
+ - id: 32
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: 8719FC1B04D3498E87C36A52A63C4AD9 Ref B: MAA201060515033 Ref C: 2025-01-08T07:52:58Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 3.644592s
+ - id: 33
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 266
+ uncompressed: false
+ body: '{"error":{"code":"ManagedEnvironmentNotProvisioned","message":"The environment ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env'' has not been provisioned successfully."}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "266"
+ 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-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: 3166536C4F98488588043DD90FD83BCB Ref B: MAA201060515033 Ref C: 2025-01-08T07:53:04Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 400 Bad Request
+ code: 400
+ duration: 4.193425625s
+ - 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:
+ - "7"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"InProgress","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2809B1EB516C4FD59A8EEF9DC571A45D Ref B: MAA201060515033 Ref C: 2025-01-08T07:53:20Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 790.289ms
+ - 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:
+ - "7"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 285
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"InProgress","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "285"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: F111598322204690ADED8896D131D0B3 Ref B: MAA201060515033 Ref C: 2025-01-08T07:53:20Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 774.307792ms
+ - id: 36
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 670
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-app","properties":{"configuration":{"ingress":{"allowInsecure":false,"targetPort":80}},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"mountPath":"/usr/share/nginx/html","volumeName":"shared"}]}],"initContainers":[{"args":["-c","echo Hello World"],"command":["/bin/sh"],"image":"debian:latest","name":"debian","volumeMounts":[{"mountPath":"/shared","volumeName":"shared"}]}],"volumes":[{"name":"shared","storageType":"EmptyDir"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "670"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4b64ffdd4c9dedafbd224a0954bb2ae40bed6799de3f4af61025c75202f3bd13
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 3353
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerapps/aso-sample-app","name":"aso-sample-app","type":"Microsoft.App/containerApps","location":"West US 2","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":"InProgress","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","52.250.90.30"],"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":null,"ingress":{"fqdn":null,"external":false,"targetPort":80,"exposedPort":null,"transport":null,"traffic":null,"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":100,"service":null},"template":{"revisionSuffix":null,"terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":null,"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08?api-version=2024-03-01&azureAsyncOperation=true&t=638719196499428114&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sQbUuIvxwGBvPXeyV0mukzA6Br3cwLZsppPP6zxcko-hL98Z9JRUVtdkLz_9C0S_VGGAHN9MFhYXy4RdRW7-cCMuuYPwh1CeZHaBlBLJ_zl0_cikIbyqeO11Rv12xxXi6pW7CQ8nhpORcUmmKX07Zu2e6VkXGW_BPWrJrCT_muXIgG0j1p_ALINnBQ2v_LgiAYBHrsuenlFZ569KZwf_CcQ-4idfRIUtlajl1xQxjatIIolfnNukjwqxwka4rx__Zs_hgfq8erpt5KLwB7Y20vud9Kc5yV8gZm5MV4Bo8b3ZlKLcSXH8_uRLcCM5KbF2OGQCxiada-SclrWtiJLESA&h=vmZCs8O1FwispBAfmUR7zvPsgt123T01JU2BeufkKAI
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "3353"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "699"
+ X-Msedge-Ref:
+ - 'Ref A: 3347E7A555024B74A7CC5AB61D6F7F8A Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:06Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 3.786548458s
+ - id: 37
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 490
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"location":"westus2","name":"aso-sample-job","properties":{"configuration":{"manualTriggerConfig":{"parallelism":1,"replicaCompletionCount":1},"replicaRetryLimit":10,"replicaTimeout":10,"triggerType":"Manual"},"environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob"}]}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "490"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 57b3d73ad9437c3cb921d3b0d33cdb69456ba6f30c35732c12e0204fbe1c2a3a
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1380
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job","name":"aso-sample-job","type":"Microsoft.App/jobs","location":"West US 2","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":"InProgress","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":""}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/containerApps/aso-sample-job/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Azure-Asyncoperation:
+ - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/28089b86-0c70-407f-9722-2355f51fccb8?api-version=2024-03-01&azureAsyncOperation=true&t=638719196555210601&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=q4cZpizq5UL1SZJwSG0AEN1M6vG8gVZeq8sVU5pDjLPJ2i22AozAHaRH2CJZBuRwgfLNdysNHlimHVGNNyepsayy-dfi83Y2WeBtFeBDZbzumbLbdmwqDQNfYSLt9j22_SS7gUkJrXjlCcZqAueKUV8sPjLDbTweqQDtQ_eTuCebA8w903G1LobhYTJ-wCQXUh6uCzFcM5ZIUK5Uw98pAMp2hNHCe3ZM7avJJ9y-8nasxwTCqH4yKB8UzbdYRagNMprUx9CGxkoeimH4zeNN7qgnKWFryTt6HRsSMkwWH-AWPdz3UdXIUPoLAZG8DkWreqsrR7UgxBrTydxPloIH9w&h=x20BpNTVTIGC3pXpT-kp2DSVIzxrqK1Zjd7FJhXTZr4
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1380"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Async-Operation-Timeout:
+ - PT15M
+ X-Ms-Ratelimit-Remaining-Subscription-Resource-Requests:
+ - "499"
+ X-Msedge-Ref:
+ - 'Ref A: 53194DC00C034BF991DF66736BDF299A Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:13Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 201 Created
+ code: 201
+ duration: 2.401989083s
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08?api-version=2024-03-01&azureAsyncOperation=true&t=638719196499428114&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sQbUuIvxwGBvPXeyV0mukzA6Br3cwLZsppPP6zxcko-hL98Z9JRUVtdkLz_9C0S_VGGAHN9MFhYXy4RdRW7-cCMuuYPwh1CeZHaBlBLJ_zl0_cikIbyqeO11Rv12xxXi6pW7CQ8nhpORcUmmKX07Zu2e6VkXGW_BPWrJrCT_muXIgG0j1p_ALINnBQ2v_LgiAYBHrsuenlFZ569KZwf_CcQ-4idfRIUtlajl1xQxjatIIolfnNukjwqxwka4rx__Zs_hgfq8erpt5KLwB7Y20vud9Kc5yV8gZm5MV4Bo8b3ZlKLcSXH8_uRLcCM5KbF2OGQCxiada-SclrWtiJLESA&h=vmZCs8O1FwispBAfmUR7zvPsgt123T01JU2BeufkKAI
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 279
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08","name":"c0614124-919d-45d0-b396-e027ad2a9b08","status":"InProgress","startTime":"2025-01-08T07:54:09.4319416"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "279"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2664AA38986E46F09BCC84057BF4E511 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:15Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 704.478833ms
+ - 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:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08?api-version=2024-03-01&azureAsyncOperation=true&t=638719196499428114&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sQbUuIvxwGBvPXeyV0mukzA6Br3cwLZsppPP6zxcko-hL98Z9JRUVtdkLz_9C0S_VGGAHN9MFhYXy4RdRW7-cCMuuYPwh1CeZHaBlBLJ_zl0_cikIbyqeO11Rv12xxXi6pW7CQ8nhpORcUmmKX07Zu2e6VkXGW_BPWrJrCT_muXIgG0j1p_ALINnBQ2v_LgiAYBHrsuenlFZ569KZwf_CcQ-4idfRIUtlajl1xQxjatIIolfnNukjwqxwka4rx__Zs_hgfq8erpt5KLwB7Y20vud9Kc5yV8gZm5MV4Bo8b3ZlKLcSXH8_uRLcCM5KbF2OGQCxiada-SclrWtiJLESA&h=vmZCs8O1FwispBAfmUR7zvPsgt123T01JU2BeufkKAI
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 279
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08","name":"c0614124-919d-45d0-b396-e027ad2a9b08","status":"InProgress","startTime":"2025-01-08T07:54:09.4319416"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "279"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 46711DC3E5D84D0ABD6E1A63210B157E Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:18Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 795.218ms
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/28089b86-0c70-407f-9722-2355f51fccb8?api-version=2024-03-01&azureAsyncOperation=true&t=638719196555210601&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=q4cZpizq5UL1SZJwSG0AEN1M6vG8gVZeq8sVU5pDjLPJ2i22AozAHaRH2CJZBuRwgfLNdysNHlimHVGNNyepsayy-dfi83Y2WeBtFeBDZbzumbLbdmwqDQNfYSLt9j22_SS7gUkJrXjlCcZqAueKUV8sPjLDbTweqQDtQ_eTuCebA8w903G1LobhYTJ-wCQXUh6uCzFcM5ZIUK5Uw98pAMp2hNHCe3ZM7avJJ9y-8nasxwTCqH4yKB8UzbdYRagNMprUx9CGxkoeimH4zeNN7qgnKWFryTt6HRsSMkwWH-AWPdz3UdXIUPoLAZG8DkWreqsrR7UgxBrTydxPloIH9w&h=x20BpNTVTIGC3pXpT-kp2DSVIzxrqK1Zjd7FJhXTZr4
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 283
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/28089b86-0c70-407f-9722-2355f51fccb8","name":"28089b86-0c70-407f-9722-2355f51fccb8","status":"InProgress","startTime":"2025-01-08T07:54:14.7044402"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "283"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 91795AF482784871AE227558A1050A80 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:19Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 693.986625ms
+ - 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:
+ - "8"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8?api-version=2024-03-01&azureAsyncOperation=true&t=638719193441423861&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=btmH3WGKlQsiRYGUEQwopNRdma_NCDMHAsfJkpqweH6hrW-d9fw3gdwMgy2BRePVAsc_6W1wiOx4fglr9n1N-XQqEvBDDTWwftKrmjoGXZ8tHuPYRXKSpd7Gt8fcHVY1k8thjAfKHb4WQ_wqYMv4jW3ixaBWLbmLLVEe8lxb-ZClxOscCRLwzydxVCdADkjsXNgU15ePVJFSTCZdf7xcAqsanQIQZsnTbmUMMsHd5U2HGkyagM8czBwHMVRPsXBOcQg3_EAdAHnRkFQyEb_RpyYtw0sJz0mV8S8HafEg4q-XNkXNi_iFutUIHHjhQsN4k6k4us9cSZ162JDDKkBX0w&h=hnPa70KT4C0MTtXpgE8coRA6HO-PnJlQz3jMopb3DYc
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 284
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/e899c191-60cd-4f0b-907b-457aeac9cff8","name":"e899c191-60cd-4f0b-907b-457aeac9cff8","status":"Succeeded","startTime":"2025-01-08T07:49:03.6227783"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "284"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: BA07C9FFF7EA402CB825F802A305F932 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:21Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 755.956917ms
+ - 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:
+ - "8"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b?api-version=2024-03-01&azureAsyncOperation=true&t=638719193444443077&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=J2X-zbpJxzHNYtndbwzlI8DQJKmyAy_H7zqeH8xyCs7Z3EEqC5qH_s9GjtrLsVH9-5MS_APQTmPgej9BBopHFVwBtMWAdiBuWBun9oLbslEi9RKNG2a8xuepug0PKfpJsXXL2IMi4wVCm9R8tIwWTto8KJV8SYEnqWWZk4kkUyt9_CYcdTclzH0A4PrZ9jOiPTyJ5NlkrKbKfQjqCj1RXEV2PMENSNaoaM8miS5T3TP4Z8haWQDVZLFeuvsgYYvwJuEV4ESp9ZwSUAdo4RizV0p6vVBGEpXcVgSnlAVgn99zf6wbY-_5rE5y2P2Gs-6z4PUwF9Xmbp7jeca-WJc57g&h=zYgp2T1dvOo9ldSwM24L9Xgtx5CDerqyJp2oaoIhJOY
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 284
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/managedEnvironmentOperationStatuses/938668fe-fe0c-4da9-8d3d-a532561cd07b","name":"938668fe-fe0c-4da9-8d3d-a532561cd07b","status":"Succeeded","startTime":"2025-01-08T07:49:03.9258668"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "284"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16498"
+ X-Msedge-Ref:
+ - 'Ref A: D97A2FB1019542C2A2AE42D7F2F956F9 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:22Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 316.307917ms
+ - 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:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/28089b86-0c70-407f-9722-2355f51fccb8?api-version=2024-03-01&azureAsyncOperation=true&t=638719196555210601&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=q4cZpizq5UL1SZJwSG0AEN1M6vG8gVZeq8sVU5pDjLPJ2i22AozAHaRH2CJZBuRwgfLNdysNHlimHVGNNyepsayy-dfi83Y2WeBtFeBDZbzumbLbdmwqDQNfYSLt9j22_SS7gUkJrXjlCcZqAueKUV8sPjLDbTweqQDtQ_eTuCebA8w903G1LobhYTJ-wCQXUh6uCzFcM5ZIUK5Uw98pAMp2hNHCe3ZM7avJJ9y-8nasxwTCqH4yKB8UzbdYRagNMprUx9CGxkoeimH4zeNN7qgnKWFryTt6HRsSMkwWH-AWPdz3UdXIUPoLAZG8DkWreqsrR7UgxBrTydxPloIH9w&h=x20BpNTVTIGC3pXpT-kp2DSVIzxrqK1Zjd7FJhXTZr4
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 282
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappsjobOperationStatuses/28089b86-0c70-407f-9722-2355f51fccb8","name":"28089b86-0c70-407f-9722-2355f51fccb8","status":"Succeeded","startTime":"2025-01-08T07:54:14.7044402"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "282"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8364A59D4296419D89B3A413063A0E71 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:22Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 731.9875ms
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-managedenv?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1665
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-managedenv","name":"aso-sample-managedenv","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:49:02.6786597","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:49:02.6786597"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"graypebble-e2c8e539.westus2.azurecontainerapps.io","staticIp":"52.148.145.193","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/managedEnvironments/aso-sample-managedenv/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1665"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16497"
+ X-Msedge-Ref:
+ - 'Ref A: 1B84B12BE1D34E7F824DAA6677A59AD4 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:23Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 473.969916ms
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1643
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","name":"aso-sample-env","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:49:02.3454776","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:49:02.3454776"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"happyforest-2166123b.westus2.azurecontainerapps.io","staticIp":"52.156.145.2","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/managedEnvironments/aso-sample-env/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1643"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D474B47F67324773B1FF6B98333B6BFA Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:23Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 892.612417ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-managedenv?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1665
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-managedenv","name":"aso-sample-managedenv","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:49:02.6786597","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:49:02.6786597"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"graypebble-e2c8e539.westus2.azurecontainerapps.io","staticIp":"52.148.145.193","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/managedEnvironments/aso-sample-managedenv/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1665"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16496"
+ X-Msedge-Ref:
+ - 'Ref A: 013C16E38E1840B89FBFC8C06F2EEBC8 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:23Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 479.178041ms
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08?api-version=2024-03-01&azureAsyncOperation=true&t=638719196499428114&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sQbUuIvxwGBvPXeyV0mukzA6Br3cwLZsppPP6zxcko-hL98Z9JRUVtdkLz_9C0S_VGGAHN9MFhYXy4RdRW7-cCMuuYPwh1CeZHaBlBLJ_zl0_cikIbyqeO11Rv12xxXi6pW7CQ8nhpORcUmmKX07Zu2e6VkXGW_BPWrJrCT_muXIgG0j1p_ALINnBQ2v_LgiAYBHrsuenlFZ569KZwf_CcQ-4idfRIUtlajl1xQxjatIIolfnNukjwqxwka4rx__Zs_hgfq8erpt5KLwB7Y20vud9Kc5yV8gZm5MV4Bo8b3ZlKLcSXH8_uRLcCM5KbF2OGQCxiada-SclrWtiJLESA&h=vmZCs8O1FwispBAfmUR7zvPsgt123T01JU2BeufkKAI
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 279
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08","name":"c0614124-919d-45d0-b396-e027ad2a9b08","status":"InProgress","startTime":"2025-01-08T07:54:09.4319416"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "279"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7A5DBDC5C86D49949D67D6170688ED8E Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:24Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 704.65525ms
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1377
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job","name":"aso-sample-job","type":"Microsoft.App/jobs","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:54:14.5054126","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:54:14.5054126"},"properties":{"provisioningState":"Succeeded","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":""}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/containerApps/aso-sample-job/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1377"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 979D716CC35844599C3FFAF6D5041B5F Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:23Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 911.675125ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1643
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","name":"aso-sample-env","type":"Microsoft.App/managedEnvironments","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:49:02.3454776","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:49:02.3454776"},"properties":{"provisioningState":"Succeeded","daprAIInstrumentationKey":null,"daprAIConnectionString":null,"vnetConfiguration":null,"defaultDomain":"happyforest-2166123b.westus2.azurecontainerapps.io","staticIp":"52.156.145.2","appLogsConfiguration":{"destination":null,"logAnalyticsConfiguration":null},"zoneRedundant":false,"kedaConfiguration":{"version":"2.15.1"},"daprConfiguration":{"version":"1.12.5"},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/managedEnvironments/aso-sample-env/eventstream","customDomainConfiguration":{"customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","dnsSuffix":null,"certificateValue":null,"certificatePassword":null,"thumbprint":null,"subjectName":null,"expirationDate":null},"workloadProfiles":[{"workloadProfileType":"D4","name":"profile1","minimumCount":1,"maximumCount":2},{"workloadProfileType":"Consumption","name":"Consumption"}],"infrastructureResourceGroup":null,"peerAuthentication":{"mtls":{"enabled":false}},"peerTrafficConfiguration":{"encryption":{"enabled":false}}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1643"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 96A4780E7C624563BCCC92704FFDA9CF Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 909.040125ms
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 1377
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/jobs/aso-sample-job","name":"aso-sample-job","type":"Microsoft.App/jobs","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:54:14.5054126","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:54:14.5054126"},"properties":{"provisioningState":"Succeeded","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","workloadProfileName":"Consumption","configuration":{"secrets":null,"triggerType":"Manual","replicaTimeout":10,"replicaRetryLimit":10,"manualTriggerConfig":{"replicaCompletionCount":1,"parallelism":1},"scheduleTriggerConfig":null,"eventTriggerConfig":null,"registries":null,"dapr":null},"template":{"containers":[{"image":"mcr.microsoft.com/k8se/quickstart-jobs:latest","name":"testcontainerappsjob","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":""}}],"initContainers":null,"volumes":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/containerApps/aso-sample-job/eventstream"},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "1377"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 169D4C011DA44B9A91993213DB94D015 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:25Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 908.873292ms
+ - 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:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08?api-version=2024-03-01&azureAsyncOperation=true&t=638719196499428114&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sQbUuIvxwGBvPXeyV0mukzA6Br3cwLZsppPP6zxcko-hL98Z9JRUVtdkLz_9C0S_VGGAHN9MFhYXy4RdRW7-cCMuuYPwh1CeZHaBlBLJ_zl0_cikIbyqeO11Rv12xxXi6pW7CQ8nhpORcUmmKX07Zu2e6VkXGW_BPWrJrCT_muXIgG0j1p_ALINnBQ2v_LgiAYBHrsuenlFZ569KZwf_CcQ-4idfRIUtlajl1xQxjatIIolfnNukjwqxwka4rx__Zs_hgfq8erpt5KLwB7Y20vud9Kc5yV8gZm5MV4Bo8b3ZlKLcSXH8_uRLcCM5KbF2OGQCxiada-SclrWtiJLESA&h=vmZCs8O1FwispBAfmUR7zvPsgt123T01JU2BeufkKAI
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 279
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08","name":"c0614124-919d-45d0-b396-e027ad2a9b08","status":"InProgress","startTime":"2025-01-08T07:54:09.4319416"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "279"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CE697EE94C82461F838D2C1B5803CED8 Ref B: MAA201060515033 Ref C: 2025-01-08T07:54:41Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 8.859425959s
+ - 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:
+ - "4"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08?api-version=2024-03-01&azureAsyncOperation=true&t=638719196499428114&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sQbUuIvxwGBvPXeyV0mukzA6Br3cwLZsppPP6zxcko-hL98Z9JRUVtdkLz_9C0S_VGGAHN9MFhYXy4RdRW7-cCMuuYPwh1CeZHaBlBLJ_zl0_cikIbyqeO11Rv12xxXi6pW7CQ8nhpORcUmmKX07Zu2e6VkXGW_BPWrJrCT_muXIgG0j1p_ALINnBQ2v_LgiAYBHrsuenlFZ569KZwf_CcQ-4idfRIUtlajl1xQxjatIIolfnNukjwqxwka4rx__Zs_hgfq8erpt5KLwB7Y20vud9Kc5yV8gZm5MV4Bo8b3ZlKLcSXH8_uRLcCM5KbF2OGQCxiada-SclrWtiJLESA&h=vmZCs8O1FwispBAfmUR7zvPsgt123T01JU2BeufkKAI
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 278
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.App/locations/westus2/containerappOperationStatuses/c0614124-919d-45d0-b396-e027ad2a9b08","name":"c0614124-919d-45d0-b396-e027ad2a9b08","status":"Succeeded","startTime":"2025-01-08T07:54:09.4319416"}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "278"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CC079AC4B2C3414491C055D95DC45DE0 Ref B: MAA201060515033 Ref C: 2025-01-08T07:55:07Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 795.988084ms
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 4051
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerapps/aso-sample-app","name":"aso-sample-app","type":"Microsoft.App/containerApps","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:54:09.2553042","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:54:09.2553042"},"properties":{"provisioningState":"Succeeded","runningStatus":"Running","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","52.250.90.30"],"latestRevisionName":"aso-sample-app--c6tqfq6","latestReadyRevisionName":"aso-sample-app--c6tqfq6","latestRevisionFqdn":"aso-sample-app--c6tqfq6.internal.happyforest-2166123b.westus2.azurecontainerapps.io","customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":"Single","ingress":{"fqdn":"aso-sample-app.internal.happyforest-2166123b.westus2.azurecontainerapps.io","external":false,"targetPort":80,"exposedPort":0,"transport":"Auto","traffic":[{"weight":100,"latestRevision":true}],"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":100,"service":null},"template":{"revisionSuffix":"","terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":{"minReplicas":null,"maxReplicas":10,"rules":null},"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/containerApps/aso-sample-app/eventstream","delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "4051"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B650D58AEE994AF0942778B85B36494B Ref B: MAA201060515033 Ref C: 2025-01-08T07:55:08Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.062113833s
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 4051
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerapps/aso-sample-app","name":"aso-sample-app","type":"Microsoft.App/containerApps","location":"West US 2","systemData":{"createdBy":"harshdsingh@microsoft.com","createdByType":"User","createdAt":"2025-01-08T07:54:09.2553042","lastModifiedBy":"harshdsingh@microsoft.com","lastModifiedByType":"User","lastModifiedAt":"2025-01-08T07:54:09.2553042"},"properties":{"provisioningState":"Succeeded","runningStatus":"Running","managedEnvironmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","environmentId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env","workloadProfileName":"Consumption","outboundIpAddresses":["20.115.194.124","20.115.194.128","20.115.194.137","20.115.194.126","20.29.134.80","20.29.134.79","20.29.134.41","20.29.134.75","20.29.132.146","20.29.134.12","20.69.82.220","20.69.83.13","20.69.83.5","20.69.83.46","20.115.200.188","20.115.201.160","20.115.201.51","20.115.201.152","20.115.201.28","20.115.201.167","20.99.170.216","20.99.171.18","20.99.170.250","20.99.170.223","20.99.170.208","20.99.170.164","20.99.170.240","20.99.170.49","20.99.171.11","20.99.170.181","4.242.118.131","4.242.118.106","4.242.117.231","4.242.116.225","4.242.119.215","4.242.117.24","4.242.119.156","4.242.119.166","4.242.119.228","4.242.116.236","4.242.119.154","4.242.119.227","4.242.119.160","4.242.119.232","4.242.119.185","4.242.119.193","4.242.119.163","4.242.119.234","4.242.119.230","4.242.119.144","20.3.32.209","20.3.32.145","4.246.2.62","4.246.1.175","4.246.2.107","4.246.2.36","4.246.2.116","4.246.2.84","4.246.1.167","4.246.2.56","4.246.1.215","4.246.1.207","20.3.32.202","52.183.117.50","52.175.252.145","52.175.253.104","52.183.112.167","52.175.253.95","52.183.118.4","52.183.118.72","52.183.119.158","52.183.117.201","20.36.3.170","20.3.32.170","52.183.116.61","52.175.252.245","52.183.113.79","52.183.117.198","52.175.249.101","52.183.116.121","52.175.252.238","52.183.118.188","52.175.253.196","52.151.37.186","20.3.32.226","20.3.32.217","20.3.32.210","20.3.32.116","20.3.32.129","20.3.32.235","52.250.90.30"],"latestRevisionName":"aso-sample-app--c6tqfq6","latestReadyRevisionName":"aso-sample-app--c6tqfq6","latestRevisionFqdn":"aso-sample-app--c6tqfq6.internal.happyforest-2166123b.westus2.azurecontainerapps.io","customDomainVerificationId":"EFF02641736216A6CF4A85BE2625D8D075D5E5C45BBE094AB95EC8CC9DC473BF","configuration":{"secrets":null,"activeRevisionsMode":"Single","ingress":{"fqdn":"aso-sample-app.internal.happyforest-2166123b.westus2.azurecontainerapps.io","external":false,"targetPort":80,"exposedPort":0,"transport":"Auto","traffic":[{"weight":100,"latestRevision":true}],"customDomains":null,"allowInsecure":false,"ipSecurityRestrictions":null,"corsPolicy":null,"clientCertificateMode":null,"stickySessions":null,"additionalPortMappings":null},"registries":null,"dapr":null,"maxInactiveRevisions":100,"service":null},"template":{"revisionSuffix":"","terminationGracePeriodSeconds":null,"containers":[{"image":"nginx:latest","name":"nginx","resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/usr/share/nginx/html"}]}],"initContainers":[{"image":"debian:latest","name":"debian","command":["/bin/sh"],"args":["-c","echo Hello World"],"resources":{"cpu":0.5,"memory":"1Gi","ephemeralStorage":"2Gi"},"volumeMounts":[{"volumeName":"shared","mountPath":"/shared"}]}],"scale":{"minReplicas":null,"maxReplicas":10,"rules":null},"volumes":[{"name":"shared","storageType":"EmptyDir"}],"serviceBinds":null},"eventStreamEndpoint":"https://westus2.azurecontainerapps.dev/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/containerApps/aso-sample-app/eventstream","delegatedIdentities":[]},"identity":{"type":"None"}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "4051"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: BD74A6EB09BE4C1F9FD9AFC066FEF3F2 Ref B: MAA201060515033 Ref C: 2025-01-08T07:55:10Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 941.748333ms
+ - id: 55
+ request:
+ proto: HTTP/1.1
+ proto_major: 1
+ proto_minor: 1
+ content_length: 70
+ transfer_encoding: []
+ trailer: {}
+ host: management.azure.com
+ remote_addr: ""
+ request_uri: ""
+ body: '{"name":"current","properties":{"httpSettings":{"requireHttps":true}}}'
+ form: {}
+ headers:
+ Accept:
+ - application/json
+ Content-Length:
+ - "70"
+ Content-Type:
+ - application/json
+ Test-Request-Hash:
+ - 4e5136ae09790cc249f6f2d7562c94985d5b0205bcbf6a47ad13aa79dfd82739
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app/authConfigs/current?api-version=2024-03-01
+ method: PUT
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 284
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app/authConfigs/current","name":"current","type":"Microsoft.App/containerapps/authconfigs","properties":{"httpSettings":{"requireHttps":true}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "284"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Writes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: FC594D1E86EF4BCDA4BE0A730C333219 Ref B: MAA201060515033 Ref C: 2025-01-08T07:56:02Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 2.5637495s
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app/authConfigs/current?api-version=2024-03-01
+ method: GET
+ response:
+ proto: HTTP/2.0
+ proto_major: 2
+ proto_minor: 0
+ transfer_encoding: []
+ trailer: {}
+ content_length: 308
+ uncompressed: false
+ body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app/authConfigs/current","name":"current","type":"Microsoft.App/containerapps/authconfigs","properties":{"httpSettings":{"requireHttps":true},"encryptionSettings":{}}}'
+ headers:
+ Api-Supported-Versions:
+ - 2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview
+ Cache-Control:
+ - no-cache
+ Content-Length:
+ - "308"
+ Content-Type:
+ - application/json; charset=utf-8
+ Expires:
+ - "-1"
+ Pragma:
+ - no-cache
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ Vary:
+ - Accept-Encoding
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 89EF67D0748844E89F2797DCB2E522E0 Ref B: MAA201060515033 Ref C: 2025-01-08T07:56:08Z'
+ X-Powered-By:
+ - ASP.NET
+ status: 200 OK
+ code: 200
+ duration: 1.01438s
+ - 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:
+ Accept:
+ - application/json
+ Test-Request-Attempt:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-lwgnys?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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Deletes:
+ - "11999"
+ X-Msedge-Ref:
+ - 'Ref A: F834997E3E3749D9AB079186FB435C16 Ref B: MAA201060515033 Ref C: 2025-01-08T07:56:10Z'
+ status: 202 Accepted
+ code: 202
+ duration: 5.081067167s
+ - 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:
+ - "0"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197971969738&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=lcMswZNzQY8kqMhQINXcLAVcVUNCnVpdRQEHF1UU_KrQXB0b9673tcG8bbcX-6BQWQaaynyHfEYdLnvNIvysKTsSPFM2jrDyCg55Ui_o88O8CKVSixmA7mM3eZo14axRvQydxVxBJTDF7d6bdbCiHnmiMO37RxDbzQvfcfJfDpMi1dzDo9uSk0PV-cbGhxZVWdhQctmguJQeUweB-kWu5tjRRu-p549oxK8YFhS-at0GFjUlp6YuHLu5338HUDGq145AgCyl6LUYhF85qRSNUrN28yIW1E3w0egyzedU4DUnW4lsKeH3E8K3bBjprWVlFz6RQOkSLwtUO298xLnH2Q&h=snJY6aPWIKsrBfJisbbBP3VHlVMrMZ0uBMam80f-dFQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8C27AB70CDD34B549E34FD573A9228AC Ref B: MAA201060515033 Ref C: 2025-01-08T07:56:36Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.094003333s
+ - 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:
+ - "1"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719198145044657&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=vRZuX03OP7R8G2abz3yGBSnZj9ZkmwKMSVBhgLNbM5ijFRkkBmbXafgQ4sOEiE4IVhFVbG9xW2HluiGqsQ4CS5yizMoJo0-8rmr9-tchbC5oU7NaOKUn_Zhy569nOt3pVwDnDchEM4mQYMd6Ume__LRnhMvG1k2gm_PQz7bO8D3rXvLzTQIz_rGspJJxH6WAvceIzRLIgcBUHraUvLLWlYHdhXSTKwjQwquS0kL2SDeiJiCElNrvLCk8ys5gL4eaFnYM1sQ87Fbp7bO2Jn4JMlXwdwDZw9w_7H2Ir6oMaBXUh_OygoJcX4GthZrQ-jzqchTP3vT5IdznqCTyVbI3NA&h=9Crd2hxe8jkQd5TDKYTI-ZjPIZzxnNCvXg18rdScGqc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C98B6B3BA5C6459FA1F76E53858A8BD5 Ref B: MAA201060515033 Ref C: 2025-01-08T07:56:53Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.190924792s
+ - 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:
+ - "2"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719198318866703&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=qYb0EOVLXlRfKQeOoOlOgAWy2Uun7xDmJfT32x-GmfFHUCjHDb_Rx0F3pBD6BzpYPheb269bBBd8gK-q3josH0yjoB5Hs2v7eJHfAG9oZHc4BsvIErKBdxD6VeRCgDXwgxWI4akXYmWPv-khRGXxWLauZYsRsQAL_KHtX7k11RIp2GWl9KYctIuHokTA7OBIJU0lhIJ4kRwcSsw7MT4jsrayNlmW82XJpvXLMxe2e1saBtt4xtEdVpwYoU6lRtaWNrgDxR48un79wWRQ439I1qkHFbl__8m_sqyHEtGRQCWkh1bJkJMWhshVKVt_YNROBHImJjj5kQ5HK6K9j_eNjQ&h=KTDQd4yVKY-bj-NnqO7czMXgQm8qS4sGZQgHRASsvpk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B3EE09F36F9B487FA04BC1656630A943 Ref B: MAA201060515033 Ref C: 2025-01-08T07:57:10Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.140838875s
+ - 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:
+ - "3"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719198491585303&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=zyZMyLon5IEt2eJmpyFj_Mp_prKD0tBjm-ZjXQdEHxj5FDJzFlRjpESxWp4yCF7N8ERBYgNcBJbNu4JG3c_emuRKBWtazNn-g8xAZrNSumaSZg5fb2C9S7YtDTBSRqYQKPOyDY13cLYurfd32ZAxbRnR8bzprBbhzbajxAu-5PJLXV8hL-7MdVNg84EjEajEFoKRNw6YGgqdfeaZjRqtwVS8AoBPH1RuNfJyfTA2Xe5DNTYtEu1YuT-TBAyTEet1d2G4RN5HiTDEvCHBiyoMP6-maMqwdvn70LRSjWTwwDfQu_kJ_ihmopjKuEeV93CN395_R7aT25uzudOrtq2YUw&h=_ammAcIZmKQAPn_Td3nx4IY38J1Zn1UnhfqT5I1MV6k
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2F46357A2770410BAA642A066F8142C9 Ref B: MAA201060515033 Ref C: 2025-01-08T07:57:28Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.132559292s
+ - 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:
+ - "4"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719198664344724&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=gNoLlE32a0PFVJR3ShSuvJYEyIijBiChrDC48AtR9gF-GGXdp_c5P6w8iDGpzDE8n9eMUm7MkQnJfcXr6PaFuZqinZEVmElAAuXUrr-YU5WG8ecLb_F2-QWF5plhFQ6dN7TG8TbGGVw5x0bWnn4NfW66JwX4jyyfz6hWpioep9y7wxkQ_C0JJvKADvhWOvMMxusIUFrUXuL6ytY3JIRs_Ig0vc_mwTi9MfBJeDKK0yhkbXkRpL9ie9AyhnAHSX_a64DWtp_VzsIHWFgAxLGlP9uUoMppoSZ4xciro3W6n02gm_cU8YgT3oZzNcPIRORV7Ss-a-AhSkdQDLZnelqW8A&h=dAXXh9JJRx7J5aXZ6cIk3zBVeIoVXTl-2qiazJS6H2g
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0F5C868DC4D74DCCBFB3698DDF3637EB Ref B: MAA201060515033 Ref C: 2025-01-08T07:57:45Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.123543334s
+ - 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:
+ - "5"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719198836751892&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=P3Y_pVEr3t9mNmNgvj0JFVeD0DDTJoE-EBkJZLYEib0IkUsdunI2zF9-nbmAfWGK52Pw6zxG4uJ4q3re3P1-Y-b_5JDmtwnaGRnkuOI_8R7Y3DYzL79vXFMkR6CjW0HoxBLW8aSzXWeuSxuIBv0Kuc4BEbx0HxKZwvv0DbyqEADsdXNwBPXZeiezLAG5o6QDbrL3Nfx4Miswp2VHMmdYS7HogYE4K8-S1t2ZXK1FxHn6jNm0Bn-SySBnjMN2l1LT6lkAOH_0vBa0QXPIWEQ3AiyTHod-dpDvC9pCNSjdm3Un-is__rwUvZx3miuIAV4dZa5Ym5dw59VoPkHImFApHg&h=O0qCCTT7_tqm0hMMMJ8SCpqMyR-0TqNHhV4PyE6dvcU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 54103732CE584966972581080141D91D Ref B: MAA201060515033 Ref C: 2025-01-08T07:58:02Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.107648792s
+ - 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:
+ - "6"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719199009612046&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=brLUb8UVX1jBvaxgoWOUl69g5Paot0U7IucOBIw3pp7wOfQ-o_0rctKQdLagCj8hGMmrN5uIvzu1DIzNgQyEt278JcI0iegpItYmFn0zhAsip0Hl9mt-tS8HGsBgPFmUY4fce-uD-va1LExRavn3MHZzaFdEAugJlIhxHC_hPlXjjtsEze_7Wux1HtXfnJ3R4S3ZevE-gEeGPphqyYbwvf0xEfdjAPjQCVes9dod_zn0QPhE4KZhf3SqPiqleWxb95wQkh78uAPyXPNAcGfLRj4vaqM5rduFs1jQHUCdOpa0jdT8Kbg5xv4d_xhRubNHGHldj8zJ1hLkQQMH4A_LYg&h=aRnKb6vtqbQKDvJxJ_kKmuuGhbz1fR2aiJHK92aQaCw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3172A536BEE341B4998EB58572163805 Ref B: MAA201060515033 Ref C: 2025-01-08T07:58:19Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.164568458s
+ - 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:
+ - "7"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719199182413056&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=wZaGP3Af3ms5h4llUBcJ_IjQrrRz6s_qHm19-a-KwpfQHRIFo_-usyJqUP4KTBVIgOXecFiedYAYBPR7DDQb_I3kVw7GBvfclSV3gMGWkALwtWK7lmivY5thsKz0TvEVZR4Wwmu3k-iL-pNCI_zbtQe0HQ3M9asP23p6szfP-IUQVPI357wvn_NdmB4Pk2TqeepSxLhFQDGdVPiluUqUBk34KaT_Jd7mrNIU1I5zHsXdlFXjspRWiNn37jtsRx9jamkdDlH17LwPuinGZ3Ti_wLSmqMtVwDdy_-xk_wSBiV9xwnHo9jsV4Zg7dz476meKlqcyeAP9ihgHzN8syhEHQ&h=pBrn-lDWRYF9EvGgXXX4kzmQbBq3-eU_X9q6OwXpV0s
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 50AA4D38E2BA4C40A63CDBCA24719247 Ref B: MAA201060515033 Ref C: 2025-01-08T07:58:37Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.099171292s
+ - 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:
+ - "8"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719199354630549&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=T_THZPqz5Rd498QDJjPLq9c9juRrovR5vk3yjANEbC6AnrI5wpMkirn_xYZxDhKADLwp1iUYdUhlCGbpStHQ_-DfKlWpAY23OQWwiDWQg_oj2wpIbrkFEiQz-zZJgljdB1LMog2QNvWnWpBEicfWAVCqDRr4CXxM1-jFPy0DFws70NNh1fiKE5ydYXqJokIZPrPOgWztSWsbE98hK83IOzOfBYV47Hx2aokpk-ErfyAnIa8bHxzh1lTtz_eJeDvxhMaO1oV-sM1aseMok0b1p1Sv3imXn3_bWcDPSdOy5E43gF5UPUkj7Xyb-mu1_5hjeAfTSBwx9Gd3JpFxVZF0ig&h=MRH1qB9XDHGsnNeVOPSfKRRAXP0-r1nGyMi5H2EYV2U
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7C8A225D780445FEA85922C8FF54CA31 Ref B: MAA201060515033 Ref C: 2025-01-08T07:58:54Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.104857125s
+ - 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:
+ - "9"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719199527372212&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=l_DXPz52BYe4xHGx11T2HlopEOx_nhzJbnPSyEmlIz8G2ikxA70P8RmmO0lrz1dO42QP2hAoK6pPY29dtqX4r75tRMQeCJy4Zz2G5jpmX7Y3V7AQmQmKOwZ6dU0-KlI__S4TMwFGkAc-xeB2IsWD0zJGoA5mXooeVy359ZWVCqMB6sfIjpELr8Lz3F3o99_KoWLLFAcUtOV8HHU8jh8GNdtUp8-ubkL5OphweTjQ9v7iUnRfoRrbLy7PGYc5KC4TIJUqoF2LiGpffLUcByP5usSHgc6CKvxVI7im4HrpdcGWoolcO9D_qSBB5_lPbt6zjGViS4Le6gW7rwFTr9s-Xg&h=vkJEV7WK2ZbvfGaAUGqcHdL62HVVT_y5hQn5a6sn97s
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CE94AFCC351F459A9A897F04EF1258DA Ref B: MAA201060515033 Ref C: 2025-01-08T07:59:11Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.166892792s
+ - 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:
+ - "10"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719199694563938&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=IKiEwu3FiR6nzNGmCYFA1yp9Eu14aYQK8SyYX7OWjJEN6qYA_xgpfYZoaPTnAGBrxyKhlFjQoRjZS8G8MKnIQNr3BZSQVr1ub46vFI3cS_4g72iXOEhd0-WW8TLa0XnuIYpMy4GblMH5URWexAFLv3mnC9phqaxAiGNDhV4PXuoQWjCHMgWQVaC3ur4vd3iQskTDqHHeSSYUBccQATrkyYzsacQfgIA2b3zzljHj6_gZs_sPLpgx0f-2iIZVxIWk1NK0Q1J5sf9dTllq0DF7uZSMrDZII-h6yIc3_rp-IiCcNHr-S1az3taoNVtrHzVb7xBvECEPAupP_g5iTdkV9g&h=NmRFbTqZ3mGYq544LEXLe4sB0aATbAFY8MCnvaYE7hc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 962E59A6508448C892703F106D18CC82 Ref B: MAA201060515033 Ref C: 2025-01-08T07:59:29Z'
+ status: 202 Accepted
+ code: 202
+ duration: 516.427584ms
+ - 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:
+ - "11"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719199861327148&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=L6YRoet0eGoka79VFV8rUowWglfpEKKr14dU8F7hrgg0XMqq7PZafHXlAyqKKArWusN4rnIVqZeubkqtf1MqGGabLhY-71fCWjzsrqVlIJw4C3nU1RAXoJLQxg3pvav2Aj-hJK6PXapsFb3aEK4Hkbo4XJE4qyLZCDAiflxzBfr1ughzObpFTrFdnZ8BOEZ4Pw4ZA28hiL0zv3b4lakVebbca_FIHnUSjWhCGq0eaoO43VzOqJL28FBRULa0mXwUV6_NZPo5O2sfaJwpgdIXo9rHcu9cNlQmnVNIY0YQNghqZxt78w6dAOiTTNOD2M7-V_sAe5LARmDTbiOwt0oW7g&h=kUceJfRramTYEpnQFLeIQpHVd8emSsgEsCl_erkowjI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CE6E552097174A6186FBB5D9742474A5 Ref B: MAA201060515033 Ref C: 2025-01-08T07:59:45Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.133772584s
+ - 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:
+ - "12"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719200033709946&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Exg9-AWybiQ09E3AZ0SyuGApEL5uYWKH8VTxdT7Q_2O-9BX8FWqn1SL2PL2qF1kgVUsmY5cxnXe5Zp4-LGQvpZhRuA53LokQSvjJjKoYjNM0_1aC4f61q6rHW8sBrYZ0dX7wawuISiZx40C_rYsiPG1PApW724feTa5zGYUZx7zdvKrky1fK91H9t5xJsfKNCrYDwZb04dNPACzGLZKbH-dwEqWeLGSS1LJMsYimpyFjAMvuEPJEahOol_AB_ew1Fife59amvQ1K3xImOPMYREVsA68blePOi7Tlq-DQIJswrnX-OTXJvt23NjmbNtys7_xbmE4_C5hXYRF6lHVAUQ&h=QrDLIQVXbMNYYHmjezis1Twy-dbPKGbYqLlKI8hlc58
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 843B68810649412D8263079A9CE0B529 Ref B: MAA201060515033 Ref C: 2025-01-08T08:00:02Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.123067042s
+ - 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:
+ - "13"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719200206475434&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=P7Ch7hGGd0ck7gNHyH0riJpejLfxjg4UXAKBRBiBdrmUKayMokpVB1WWr9luZwK1-i0RU8LJc1eiN38L-rSPSo-_9Tc9KTQsb0aITVekXsOHe2VVYr-2BuoAaZFNWc6ul9T23TWUwm-Df4-PqhYYlgr5ZmpRSJedmV1no5-Jq2hpj0FZvsL4itvg57ZBbkx7F3n5R80_r1CR3QdFY9KefJrIdf44gp7E9S2jN2S-pGMq4vrwuHggcjz42VCEFyYNWtxBvNGthoKuH4wkV6EwTzA2kYE3Z1NSHb52CSjLvJHK71wOZGfHyRwP6UtaqF9MSzR540P-fLNIcJcNtOTKsA&h=jmVcgj91-rgsRlaOTaD6zyHYua87TdpBYroauSHdpcU
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7FE2363E079641739E978B191042D6C2 Ref B: MAA201060515033 Ref C: 2025-01-08T08:00:19Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.146951125s
+ - 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:
+ - "14"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719200380499850&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=LNRnGbjhbm0Ujigs_743h7zEnTnHIKGrIzGqQ6vIbPsGA6-C_NyBmzISwsvv9rPU9mqxNSpGeCdY00j3-tl-DeKIy1hrSzwGtkesuQsDUUzR-EvBp3POu-CvYFrbtDcIH41qop-JMh5fK_PsloXvts3r8Lr43-QpIcMMEy-UtoSWikn-Q_qgQ9MaY2BgQuhS0Xx6hpN8VcYE9bi0-bGAzsi8dab9dWFPJB8WawTdV7RnvdYJLsW8LUJx45wUFZpHBqBUQIsF5eNd_aXxVnfY1pwZEKBe_a7m-X1-XWJA7jULZrEIEu-0f7cuvcfEmqIeHwOOzoM-PRjEvIxwuC2WGA&h=0LDAK1zaK688BmQ9vSKnn-njB5P7y_vFGp3CXB7R_h8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 123F7A87E86F4420A96D9D7212277EB4 Ref B: MAA201060515033 Ref C: 2025-01-08T08:00:37Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.1634325s
+ - 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:
+ - "15"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719200553835218&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=iXf3987rbqqNxc-WYdcaTxYJtEfVHubTSx3ucO8ZibxKIW3vZE6e1Y3HCI42emIBJ3nVLjtNhDY333ft6m9mUiO18r8Xd6l4owBzPdmaeTDZO_PslZclJlR0DELK67J1_-TbbmAQYl6qA0LbyNpcuQotWKYs1JikFcl_38CEUSt5lTzRL_VJA42PS2DQLN4r7kVTOtebbj5Erlox2a50yHTA5zlr7PxN2-r8p3OEgEoq1PzEJ-eW3IR--4ChSjh7TemaJdfA7qJBv-2XgKjFr5dMm15nQ6LeUgWSLlpcuQlUr4rW2-x3d_Y0kyF0GKOZegRwRM36afPc8m-qg8YfYw&h=FByFLdhAIW3EXWe8ZNmiEZTqT6ss7BOpcY9ICc4H4Y8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 214437D393724BC2B115C2D937D65C57 Ref B: MAA201060515033 Ref C: 2025-01-08T08:00:54Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.131622375s
+ - 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:
+ - "16"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719200726853065&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=mrdpH6uG5bwVvxaYcQ2EAQjyVMYziAAGkxBSR9Tp2Nxe1PCQbmHdDYiaTCXMMB95YaF70wyB6KSlJP6SdoGO2tRAkNkQRjGA6qOc3iKO_UpQO9yWhrOWA-dx4qxd-80fxj10gvYQpStuFzsK5kMPpXUgww2vY31vgNENlxvE7BroNQidBp9ifD2NRpcfv2O_ZeihHJmTGDJtwp9Zg-lZQdtio-64zBdcxrI5c-XWHQvsZAlxMLYhABRu84Z57GK_CEL2WFhF71LqDwagEroMytULakTY2aSCfqlIkK6vHwjpaQBKM-MHqmQdfySnMIxIyeZP4-uWYaCEx6XIKRq0PA&h=ZZxahHWr-ybQxWPCxnpuSyUoQQ54h0xdl4suyeSr970
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3B077A1D28C74B5DA62D366D315259EA Ref B: MAA201060515033 Ref C: 2025-01-08T08:01:11Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.149394791s
+ - 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:
+ - "17"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719200900093944&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=JoiG6oSIihocuWjQzTuYA12ruvKL9RgSzCBbyqYXXYqcf9_9k4qHFqbYXPzmuOvxQF2R-WM9ta44P5Io7oyOJAzvePRQKQ1ptd7hrmrApvJspKXYtT1OlT3W6PUk_S8AaAA3HABj5PQayUAhnzgI2uHSGJUd-Gkt9X_MnoOCh89Ow-efpu1Gbg2ceYcD_caDwCma8CahLqGy1A-8EDhYXeV0jtDUqzNVl-AxSVwXvu5F5F9Cejb-GyRL2TkGii-tLEac_aMbwBT-mhPpmKuqXjE10FykUCM4xSq9CfBlbsv3eMcoBPUKQkkzttPTpukDfuanERjYV18Ob6ICazZuDQ&h=StX58ybZrksQ2q89lN7LEMM6NE3zE_slTqsB0hmN8Q8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B9D6887F95E948D2B89827D3DDA86210 Ref B: MAA201060515033 Ref C: 2025-01-08T08:01:28Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.160276375s
+ - 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:
+ - "18"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719201073680363&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=PN8Np2x-pC0eJJ0kkWl6OTV8HuMMJ-goMds0xS5OgVe2vuCFNX9E801WmY_37dSWvZ5mPiKzB9D-ak0uYQ7ArQS9h-LrKR634Q8WLAFi9Akfq-9PzP9e8Sa83I9GIGxoC4z4wkck0_G8k-bTUAR6rMOcSjGiHNJXzEztQI1G_MUqUYFcjfqDn6WnKcFHuX6lKImgcqqf2CL65XIgDMImGN9yGkTtRO84N27yqqn0kypW7kgeORE6n50zdiLhBbm80vsve1KS-3_cu-8nvm8ZziwS4T4y7Kg5kLqXuX9SFuyQzy-sdFVTO1M8BPuvD9CCMni6OI3TLfJBWbS6vtk-ew&h=ToxfJjbyarJ2ANtROhaDcAAz0FjhS55J_uhoimAF5Vw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B733C357AFA4459C83BD43C33F75C3C0 Ref B: MAA201060515033 Ref C: 2025-01-08T08:01:46Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.2074655s
+ - 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:
+ - "19"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719201248428446&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=L13_RC8RtLLq4MSssGY2ls_70G-G1lZdD-Izr4MfiqL_HPqkwJiixrJGIIxeXT5yunk1G7NTiViBhZH67V1G0Wo81XX5qOjKA0Yvn59U8_PM_1L8WONHtCA-s6hc48gu-bLGehHAxskMY7Y0gnoiJ5v1q0P_Ezfmx4KNN0MA9esxg1WTXqJ26GlYJLy4Z5wLERWyHtPEsyNH6jHZTitx1eO3kH8IyzV3c3KiRvs-oMSpa4IUqVh5GB32rvk_qxzz-IOFYF0CCQsFGziNFySRaNcZ5z2sqpyHhsPfb0fkqhFZ7SV2d5GBpcjoZc5aXK3SndbOpFz1AApG-yc_dkfVyQ&h=5OAO0ZsT4eRabl25FjEVUrO04NNkWpjfkhz1hCvGRNI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: BE467AABCC4B4A958DCA96014C896D98 Ref B: MAA201060515033 Ref C: 2025-01-08T08:02:03Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.183708291s
+ - 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:
+ Test-Request-Attempt:
+ - "20"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719201421748590&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=thqLCpl-CpiT5sJtBj8ABAI7QkXGq3InST_GBeWCJGXSyG7sD0q-3Ks4iM9567DRZTBDVb47a6OPTw2MYmycuBYEYtbIAjvcUmjzvZEH08BmlHrXWDwZDrZ0ACOCzOP3fAD-ItDvn21-0TmkyW8fJeRnMdPt_mZrBboPvFmT1WaRGvicsJkBZWARtVMB5zvCc65aHaQecp0t1LoeT8YEKR371sLbDlkWLI-KJ-kWz1zJamg8U68cAOb_lDIXqtSeGQLopPwQAzkvvBoCBTZybQfffSmgXRyn6mnHc0Ceg8F4WOHox5iRFEHTHwSvxj7FhyS1tMtmyBIfWciW3xcfJA&h=oRGNLth0wp2-OEE6UrdTyS5HNgQW3FUyLFxZVLyfm10
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 680AEFFFA1D74434A3DD7DC9F092D181 Ref B: MAA201060515033 Ref C: 2025-01-08T08:02:21Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.139202125s
+ - 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:
+ Test-Request-Attempt:
+ - "21"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719201594822047&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=e9i8Yql03P6JJmkGGpifIfQ_uEtFthqrtAk2Z1rF50x_SCasR1ltpBYQEr27cVzDTkNcqPfc9Rc5dJAEa0KjPdf51g65e6Ry5aaGnMIrYPEUu2YxASmCxYTzoDjZtkCgXyXK4PYyXSrRepGoGBKEdSZFvBVRlMBXuauiX8NDNi6ufSRGxIZxyhUE8nI11P-97xIngma1WauLrXOEnhqcNuQ3CTH1IWZIgJIWG--R40XqG_NxwNY0uNi3ua5M5M_JtC0SS9ya_BZAa-6fYCub4K4BIxKLJl-CEI6b6patiqbqgtvBRMeZDoqIitKWITITBqtxFrAx8vdwoqD24F1-xA&h=21_YuLDq4tkUeVgRMxbXDf0NIIOYKT5qYs98o85BzgY
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9EAD5E697C5247E19BC5157430A9C6DA Ref B: MAA201060515033 Ref C: 2025-01-08T08:02:38Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.149005375s
+ - 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:
+ - "22"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719201768302702&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=JahTO8abuI_DgtKWDbwj6c5ZX4FfKNiA5vUropaSwDKSeVQIbwD2yXlOENUBqT3iyuoXWfI0-OLDwNzSRvfVXmClmer18pf-1q8hTOPAU_PXWP1RZyUX2gtgniMQ6bN7b58Zz3ihKgK2lWaA1QY4mT0Fv7QF4GqreViDDBu9P1K2r5R9CNpFJq-TTEjgaA7KdbsnzUsZNqI7a7A9qeacPobKZM6v0x9L-G59cVikMUyGhqQHOhjGo_thl3a_Oa4lWUDjFZdlg6Zpuh1RBv2gz3qLBKMvMJEXUSAF8YCk7DTd14TUYrc2DF_hjdVqIQEL7drXieSwbLcMRhnJE7Yutg&h=EJS9-ptFPFMdBN4Z6Dq9-dMtf148iwNfM6lCzmeDl0s
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 85C53EC891DC44AD9A88628CAF7FCF04 Ref B: MAA201060515033 Ref C: 2025-01-08T08:02:55Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.235924709s
+ - 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:
+ - "23"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719201943430943&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=It4cYXmFECA2ohFe4duRPv_qWVw6VRL_ufSKERbtL1Z36uSyCm2-x8LBkcXHlY9Hy5e41SS5s0ThiggIkrj9LRfTivQbrC776nONxtgGRXEOzpLtnbcfN1Ko6N9rWHxetlF1PdAI_KGB1myhBYgB2bwail0xzzneg7W9eKWfmzqlWrCXdb_MOQuYd-wE2tSpKJNtQGLdOvnDiqNSkHlerR6iHTO3cDmL8vYRQsb6q676tOOogaGk8xfrQFOOQT4eHgOgH0-RbGfKN-uCVs5BcpK4D9hwUeyhcd0Ff7IuO-rWy86VVeW75sIhhwy1hYS-kIErqNCQKaC0tTFb5fe4_w&h=raRm-wBAJf-NCEtugcJztURQiPzu7I2ubsJBO6jMxY8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0F645440D9DE49A98A41B20665F95F21 Ref B: MAA201060515033 Ref C: 2025-01-08T08:03:13Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.253634584s
+ - 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:
+ - "24"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719202118036730&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Z0ZGKA1gRFPAqkN67xDDskBdcM2E94HNHFD0ZL2IA0A1QARyaoryn9s4z9JXyo6Z_LsFbloY-3rnex8WYjPzuTVqGMSZAk7soTeymNzBPLUk68RLOc9ioKh2-AGSoTvoSPkS2YP4IjpSA3bBJ8Ct9Cy_KvL5t_GEXTvag_XQGCz9xYjlY9Hc8USs9tP6oi-DkEMI5Gkyf8Sl_LNxPwzqPCF2I_TH8QhpMVbviXnBgk5sgXTXd_eoUHt174GPDBPLHf1M5zTdlqSVkI2HVulGOwLqPx6-suMtHb-VyzMWYAy-k7jairvvlCK0mc7OGhnq-b97M5Gsm38csMwjMGIjyQ&h=oSbLdOh8nnjxaYAFEQhbJ1n-LVWHnhMSZjXZFT2G0z4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 2D086A90073644EB82CF62E18A9BBD52 Ref B: MAA201060515033 Ref C: 2025-01-08T08:03:30Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.122618166s
+ - 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:
+ - "25"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719202291366249&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=WfD-i9eplzTvESQDKvJSRCWel99OfbIIDbOwLtyWX2UOfg0wGAe2mY70xCf5uPLJXIfj93UxQ6sc7l70cv2WRwsDokWdWmuj8F-Fojt0ffS0RFL3DvmCKua__kc3DHGU1yZH7fxEeDiTctAe3bEAIPmhyaFmOXwYxnfZEfX_wqJtWlx_4AiOBYlgQQAwx8yu2C7UfZuxG8vOEheX4fj4TP9iIbN_UBt0HY62UidcieuZKuTva78SY8e8mRbkxxnCvLQ-8B4JBp43BjbcoT6yflKpL3i8vLbvesPhR2TLfRWaCQubjOx2WHegCjSXY4REqImDgd8TSGnX9lzPaSDHcA&h=m9Do0GLwAQ9XfgO6zu3FWIT_rtUXBgcj-_5VYk-E83U
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: D263DBB15D5C46A0ADB54742834E5574 Ref B: MAA201060515033 Ref C: 2025-01-08T08:03:48Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.167419417s
+ - 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:
+ - "26"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719202465067523&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sDTPP9Pma70l__2J5DEuDceGk0g-qfwavmUQetSNSUtG76yup2ZHgO-cyoGeNWYYugUX3EyIesY4fXdU2Y2ZjIhGi9yAo2gyy7YJtsBHFr8gxJmoWiR0RGkr1LXbsMLHLkFdo238RS7CKECCxnNkdRzk3H7LGwJtc2KilYgqc6Pl_BtS2DqTt-0-EtxoKE3523cWrpWxTYSsGBXDb4a9ZSQoMSK24JDJu_evArJxSH_Y2FPYIm9pjVF73yBt9Z5MOJl-3_7c9Mw1urtf1kxpNTkMvktKfxiT6oXWo_uJa5u4VPjdHKrc25VXVuR0xKmIUMBPrnquEZgu0QTodU60SA&h=VvfP1p2KWHJdxvG6kAUTRSm2M6X0V06UWwodibCI4uo
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 199A4A48B1F6415D80F3AD45DF0E92B6 Ref B: MAA201060515033 Ref C: 2025-01-08T08:04:05Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.160781542s
+ - 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:
+ - "27"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719202640746879&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=foxibzr9W1yM-akryKvbQuPr4caICZ54R2SUSgybJ2M97SfYOZsO8U-UUkY-V7Rq7W0T8F909sZjgZMCqzK8-WJaQEdRhPv4ejFkhJPeHOjH56qvaxp2o7O4Y3mS_362iXymgq0GCmVqPWzP7zmllwkWIxLe7vWQt5NNN4B1AmeZtU6gs6tJ8o5M516p8vJhL7F3v6dSlSpqUX26AsN_d13R373OgUlGOgyjdlq1cll6xEPldQha353GffIehzDgzrIo9wclSQ7izVw7LoLyXXN9nKx2M5_KKA4Ak20oDqFoPgRN9noBl-Kgbj57jNSQxqcw3YJnRvUwZNW1nxaLxg&h=We649W6zGoFY617MNjb_Vur9xm5AhpD0MX2zQ9n923A
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: DE5031EC363245ACBC36EF582E056DE7 Ref B: MAA201060515033 Ref C: 2025-01-08T08:04:23Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.151348375s
+ - 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:
+ - "28"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719202814251512&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=fVSiwWRqr8EeXq5yTMU3LN7IDDHMJpNAaeDMWicT-BRkPqEqqCaPMC2D4QjAFTOlBYmYDjeaneXrqqAOrNMUDyA-GYwfpkOYRU_Why85ZX9AigzrwSjyWqUDg8YMAu9Iqy-yQk12soBMNZKINe2-bUM7zSF0semibftzeOMKU6rx4pq9qowqwWwovgDpOe6DvE8G64GjkP2Lc-kQSUDGLLKscMMY-UBsydpfhyIee_AuiGHiahdZ1A4FofIvF0aq0KvrdoRSKPQlUKnvgGa3xsK4HEU63635vf9fkRrOQuziOhqK2so4l0nhe_0JXBEJoP2hlu4NW9hebl_V_T4xIA&h=aEszBIsb-pGt7okShrHSWlCzz26c78rHGnBVk09G7UM
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 3643F69BBEDC458DBC6EA5E7107035CC Ref B: MAA201060515033 Ref C: 2025-01-08T08:04:40Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.219409667s
+ - 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:
+ - "29"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719202988881371&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=xKWtsexmhM71lWdhoHTv0RX1MkxY3Qdso0nT1OnzwPxk3Thx6dPt3ipjdt1EMCdUv9ei4DopsswN1IHFvyows7xw2fWGiNFGG_MkMNdnX1wgrReuUJtuOzSh6D85Vti7CsFeT7mNsgrLlwJ9Ble87cP3DvriBTAyTnXjHpCCQV0JjlhfGhTPY_LHP16gKWKpeVcfvdBkrH0tY5XWl66NlG5m-x9cUvwLxhIgoVIrfGqz7UCz_-EOPfR1St39giVvQPcR-h98CzJXteBpf1migIMJeRakoPxn0PncCUK9jCNCjuqX_d0HBYjRcU82qMbJyATJ-15yLgNSzH-Wp4P7og&h=RjMplPrTKlInjRB9xqmYTRCMywuWabXAXfLQ0AAib8E
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: A3CC981E39984BEAB823A63E1F963C9A Ref B: MAA201060515033 Ref C: 2025-01-08T08:04:57Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.192636333s
+ - 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:
+ - "30"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719203162905602&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=kI-BeZ0U8pMn4riQw2U-3PwtteUr8RO83ynuLET6SfxnWCNMeac9SWaq-fgdhdXja7XXADxAStNbBmfTNHhUZNHNOAl1eWvMNH2jw5hd71AEu93jFyGccMJPqgaxoRQb-RYsB-W_6nfRdVB0OdGtBUjJzI6-JTkf_5eIztBT5jStJOtkcn1sUx61pJZwiAZQ1X-DaJQ2MoYzkRGgvzeT9ZAy9SxlQRTGikLW7GmFsyHQoQYzOwGASx-5blmE525fX2fV237RPAtw--aDMB5rpS1meahLgY2pVBvoePKfWIm5TQRv-IneqHKlinBWKWZ31pEwlUH0DR5pFUfRS2L80A&h=FrpyftK7as2svKfP3RP6TRcxpbO9rfBIcaB2qxjlUmI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 79DC92DF03844B0BA165A7B689C46B51 Ref B: MAA201060515033 Ref C: 2025-01-08T08:05:15Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.169041208s
+ - 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:
+ - "31"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719203336319945&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=dDMcOmr-NdCEpREWD_hvR83ya-rdcJlj9Y8geQ3ApJk-kvdPorCGYXG9wUji_O9SnCNXF7vIrrAOwM9dniNLegLE83GPwlgzjXGmSKec67N6R4GIeuaXbHxzLa2wldkA_pT4i_HFCNjiXZdf9ucpJcWYUaNtCYvDn2s1C2a_CMGaW1iDsEKZOtHy7tvWdIR4vYU0gDGmWxZ7I3x0xY2wtxfTosLEFWxm4f0X4Zo1LiXJh_sINls1oMM3IznVNmgZEWCvqCha9iYxRrXZ3EcmnljxYBzzXc8zKe-AmLAkVYm-6X79-R2P3uq8Zcawbxm2KohUGCia5D2XapsM1wGtjg&h=c43Ef3PEl1pQkVbZYCGxUikdBhMu5W-cL67wSHYmwR0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 07CE6B0612CD499191ADC0A0AEAFAD13 Ref B: MAA201060515033 Ref C: 2025-01-08T08:05:32Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.161401666s
+ - 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:
+ - "32"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719203509504628&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=MbS9B2imKem8SF2PXQcRG65NRq0etcfJ_eNvj04Gx12kQNIIM-EsguRImdEBzi8XuxbHB0c1dViM1x2KSShFcjhdPJ5Qb1JAfIfb4fV1I2pmHY09Ms0IbsvsiCjfhSbqily0hMtUT7eUPGM5dnyP2vpQTCW_xgsMty3GOylVnBVtKpQkOU6qd19JcPNNFaVB5X8mhiKTraZvRKSUC7BoS-hT1DIvS877pBbnDLDCjAiH9D0_HFMDfL3s5xAcm4MhMwLvFgInFUL6FUOmgW0wvZQ4AT0wqTfLHWlMGLbJ5bU1yY23PqtxQhF1Z_PFbK_RbF_hnjqNUDXqWoXfwqixRw&h=2eRSa6qGqrwP3VTxXNdeehV6dM-nIPBKAGFAXPpGC-4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 7502FEC5E08E49599EDB456514E15869 Ref B: MAA201060515033 Ref C: 2025-01-08T08:05:49Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.116404333s
+ - 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:
+ - "33"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719203682344121&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Ymq_rUdV2Q100iD6MXHToayucn9ZppXy2tje9hReE9fM0K72iqpWkumKke-UO-pXm0WtOlBubBD6LwsfTB4TN83KsUWJPSdYxRGHI42HSAyv63_BqtKFFkZwCTDL_cK0P_or0h0qxnhh018i1We6tvy3orRGVm4EuFwa2bV-Y-yviifSKWBIDX9Lk-fBH-XFzVIchnJ-sGjwAsaC8uYUdxjr2ceAJ8vcG2tL1QhE3Es5ITZiJhqVUolkrSz5KOpjsmHvxFPxveSCp3nqyb-ki-z1XAasGFFUixeLgMV5YPUx-3xaAqX-HR4KruNHHhArkhl5fB8X0RTWbgVI9TtiAw&h=CzPtObe44NMJyCLnuodb6HVt74iH64iSA75toKaMHkc
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C95D2CCC3A0A45B2961D046D3A097F41 Ref B: MAA201060515033 Ref C: 2025-01-08T08:06:07Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.2067835s
+ - 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:
+ - "34"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719203856555530&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=y6fbOWcAUGVcvMWE5IpjeoMFC7_rkwf4bhMD3bOa3BIe3QGmzBdUx6urjWyZuLgJYATzfLHy2FIiHYy0_h2WuJSacybqazCy1_IPtjD_G7BNlfEj3h12DCWkHa_q8kh8pSfo7x73MeNZ4tW2XGVX9XbBcuBhiiWX4Oyrm-BgglvdRn7JZEZf4pahhVyX4HQ5w9Fhl1uqBbR82njOch7BOfR28XoUfO9XWEvW_EjVFeA2oFmPO-TSO_KRMlFHsRfVC2bdywFxaWyU8nsPuQfBg4SPDOUz2VzItc2T6wUaumF1YKsu5yY5wVHVQFTDg6GBwIwctwpBDKkwLQCqn30XAA&h=PO2-mRGa6GLTPTBpFi8OKNGyr06r59smShThosD-tEI
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 02F4FFF8A5BA49BDA3CD57A9CC46B096 Ref B: MAA201060515033 Ref C: 2025-01-08T08:06:24Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.127372167s
+ - 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:
+ - "35"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719204029169343&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=bvv6GtoFA81FMKc-8_AXUtbMpj8cRTbfxtWDI2R_ItUvEpxoosd3rVV80erOtsJUi9y-G6EFt9mRKV_aOK_Qt3NtB4DvoaI1qFNc4BDUDERTCOS5j1vspQld6_2RhqDFqmc334IUzc94HeBu3tJq2ZZpHQ-lvi3OrSmUakq4zlf64qZllctbC7aYhJIk4mSP1KgY-fPFDc9lVn2OIHE8d6znZ0PyCudHn9SS8yXwtoFYS67H4bIC19trV5nVBs1nWegsWLeLnfjV7J_EVJsNOocy8xjZcs9rSuGGxmh5hFuWQWfRNKBvTXzOkDBizFb3MNomhLytai8EA5z03-hfew&h=Qa0e_qLZpEXVVCKO1wEAZikidvR4avjwkZPrsWUzs8o
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 1F5B7AFB0EFC48829B3450C56A1D50DD Ref B: MAA201060515033 Ref C: 2025-01-08T08:06:41Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.11989925s
+ - 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:
+ - "36"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719204217947455&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=PC4tcDIMH526p1AH4tqqMWyOU4bgz-De3zs9QtuMfPLf9tZ6MdLMkxcVPzWw2ruP5x0a19lSfqZEJvKKgRcPTXQAp7vUkFqhVnmsoJx39A3Ffi5inHKeZVa4-yOdQA1DNXgOAK4YeJIDJaRVZxjRd-EnwHGYX6X6n2LbS5WaXoZHF9ecCyrghPsGZTPYX8pB9yxv4SGSKwQVkpi6xsQZkCuqkRndliGEvY2-4boIwXAKBYisNcYMQhzhZPudoXVI5BTTFw6fErxnyMlij_jKcrlnWzaL5b7tD1egYpy4OVbEtEwrr-vH-ddmQc6MEqbQisSOf_VD-vm1yRc7-EelCw&h=AX10hgMy3Mlj9QBHA1-VX-qEEpUX-ksa7SauoCgX_cQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 8D46F7F6C9914E16A7865F1060E549D4 Ref B: MAA201060515033 Ref C: 2025-01-08T08:07:00Z'
+ status: 202 Accepted
+ code: 202
+ duration: 2.742995459s
+ - 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:
+ - "37"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719204405975340&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=p9V8CdeI6uaD_kSGpQ5hqzrcXJOcLkxazjRmc0bgLtfaQJ0Jk9Yaj8HRpxbnjSoWPXTfY6vHUuaTlorGgquHIQwFDbMAAJxWG5lVAoI19ROLkZepqyiX0_Z83f0dKKerDOJhfcAFmev0D4Dap5u7qeIDaQOuTqoalALVfEVTe3ZmlW6Rsy9NnBmLtolNAbRu3xeRK2eMXZYYOp2YM97fVPVDdrBVky6TLpGlN77JMmcRdcqAvHDMMEdNFrFiEN0FjNfSgUOgopkWimpgzE_xApDzbwe-SFVrzCJDF9H_MLPdcPPf5C1njExxUkxFyHU-zA1pd2dBdZHIo1StZN6Jug&h=VO-ce665ngJPAaXn1w-2g0lxphVWrUs43y5WKU_wVV0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: A9C0A82638614FA5A01C7DC31F0FD34D Ref B: MAA201060515033 Ref C: 2025-01-08T08:07:19Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.062517125s
+ - 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:
+ - "38"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719204578535188&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=w7y3kAJrwhzmeTp9gCrcN_vzgj4iTHA_pk53Z4oINx0ZC9UWrMOPN-yNpU2di04u9XON2TZM3BMAhCfZMddiP3inCRFRJWLCK-dv6RyIvlft89ujqufKj6IVMa0DwbdpZv0c2Wx1lP0lv2Ed5Wr3Bk1BMAELpnfrIFkReWnwKs1UM9j2eOQaRKGZViBNzjTNWV8Aw_NcQFagbSTsI_RgwrxPabgw3eQcMx-0GYY4XKbx20ZUq2JL0eoZVS_BHwO_G_ca5L4w8v2f8J46kk23G3dJ2qXE5rlWNtUfzDUGXX2zmOZ8JmxQCCCQdshsNCxEqKURFhnrBOzgCqYhNLw9lA&h=_cw5QpxmVT8GQQCZhmb3xWBs7Z7m4yl58afFxVv8QBk
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: AB5A07CB1D534565AAC41C6E03E520E4 Ref B: MAA201060515033 Ref C: 2025-01-08T08:07:36Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.157777834s
+ - 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:
+ Test-Request-Attempt:
+ - "39"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719204751336244&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=f8_n2IIJGgn0SU5ep7xujzCM388pvRmUACONpwOiMB-Npmd7_MqyprGFRGN5gVR3-1sglffDdiTQCQbbqOk9IGC1-b7K-eAMoWqcWQJNHLwT0t_FrLqsLYps8qvyJ0N7S6NrRa6alfA8OiWMDCcnW_19WSY0auJCleOeZG0cey6KB84_OBKMzdxZWZzTQgdh68P6wwk7U3gvVHx_bM6oyzCcQ8DoPdCMbKqVQIbRCctoASpaQHD2l--0XB4PfMzrXfxtF-oiC9LIv_a4hIV3B6ZrNdmzCHqGvtOLwWuI9cZ1m33Fo9-0L2JtH1wueIJyqvVFRTfUwJo_gXpH1Ja0jw&h=zYOMy4IIUuV8oxOj6LiYHac4gilCPZydFFK4AprJASw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 40A5653912634E26AA4B80AC5F87DD54 Ref B: MAA201060515033 Ref C: 2025-01-08T08:07:54Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.117284125s
+ - 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:
+ Test-Request-Attempt:
+ - "40"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719204924248607&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=evxwhIWessb5RpQ_o9POrP9b2CtdZKwPojo_g8TiNpYCxCBpGAf0Vxpw8qEHZ2mfz0HHGArBHyN-8JI4YGAV94NlUNTWIKn_5wHgCh0kv1ePYnQEvW1bwVdRhSpjpuoHB_L9-O-uKeV_60TTK33J8QcDivhOB9sUxEXuW4iTpex9wZDCJXTVSqEgKm2UJ7M_4noYpZQ_vFdQDGg_rj56fXzL9lkxWqExdKXXPZSHsMGp7RhK-PzJLgXEt7sqWOqV9n_cRnECPYw8sPQSVGFByVbBfkbWOMVNs3a8gnl7AwNM8GRrK7S1hWGfBbF2D60xOIZyYKMFw52ybwuUY5mbKA&h=ya1eue8F2KjfKZKbHbvkz49hDFP7uvKhwjc-j9zaAo0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 4ADF2567562A4BB1B4D4C295471D9B7A Ref B: MAA201060515033 Ref C: 2025-01-08T08:08:11Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.255378917s
+ - 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:
+ - "41"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719205098938358&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Hp4HmMD4I_NtJNFTCeZg3aWoAIOe9QnGhNp4fFT7QgbKpawQrBrYaClw7uI-gXsR3jU2hVNbeNg6ORyBerclPYilCU-DFDhNyGRrC2j0JM4hUVBe3zi2qzrJ_jbdksyl6TZNG0B0adsOGWCTlZDI1XKWQ7vc30dff3eZ99zkrPkENR_tTCBJ7gsnFb6Z88DQBLNw_RIk4wlraTeEqEi3WLsHt9sUzDBtQ1aefiXChwsi-YVuWEpDc2xS2VFqaPfFDHCXtuW5L3imuImVijA2tDLWT1S6KQ-_ESeJ89Rdt6wOe45AGW2gTkRHcAzrdIbZ0kdSYX7iJcckHibqbo8JOA&h=cOzG-bd1622CtFTBgdXHP7iHJtmou3zGqGQKB8Y_dY4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B7636BBBBBF445658CC705AC6BC48DA1 Ref B: MAA201060515033 Ref C: 2025-01-08T08:08:28Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.093060833s
+ - 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:
+ - "42"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719205270675477&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=GXwJ9GTd2XT6VHUlsl15lvGLF20rsnbZCVB2qAbV6i6z-NI-CgUgFry3VXzFO-6wrOPVH05RagurcqEb2YGVhhLVBcNiSKOs6F1taCrOy9wUWoBvmhh1zrSCSTapQCui1gV9A-OzCxScqC79OKHHZsqBaXWizdzE-gJy0uCSElVN9rnV7KKcJf8t6-72ZcAxCCfHiKAZzoX_j1kw8Ax_JoXd_C6ICoOdO2yqAHJXAPXk-3iPYj1iAmMax4qPmyhwRO4yClO5Ex0OVjwZaGSvdL4N5DsU_qSJCLydpy3vnPPOAHzD9IilbJ2FfzsmTpxvXPl871y2dWZE0rehNVsQoA&h=Noj8D3easXritK0cu0gO2ughMKYvFTnPkjtAgLAm_bE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 511B46A76DC040BBB05D5431A8F0AB13 Ref B: MAA201060515033 Ref C: 2025-01-08T08:08:46Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.135321375s
+ - 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:
+ - "43"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719205443967405&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=QfQuBuLkSKQYJ07GI-7IjYutnx5qNLuaYr-rNbSeKr2IE5lkviB59K7N0BU-lRfeF36d0MWLiDxWObA_HUXRqeuhHjYkFhya14rNMQ-44gNZcdkzQBGP3O5unB-pHvDhjYv8fu70xCwOCpcd3gjfPwtsGgrUVPg655U2FU4XjNTA3e2B6cdlmbexbLov0t-cZXNDpZbL4WxhbjODwU2pu0Ay6RNyw4mqViV9fZWqTO76-15K_HzUpGl_92XPGPd3bDgfKqCG-BK-NPHDhsQpX_8AMnsxfdM3mm1_bLWOGxosIFIY3BdQzD2Ow473vmmAlIoYA4gw69Pauksium3APA&h=F_tsIfG1_i4JaP_a2SFqVcQd6yR8Ns28i_d39mX20k0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 1A24600C38554D34BB58A0DED7FC584E Ref B: MAA201060515033 Ref C: 2025-01-08T08:09:03Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.102933583s
+ - 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:
+ - "44"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719205616270203&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=KFfUkTC1FNhsqMhH4qC81p0zXaej6G_cHY0J0AJ6vD1YtxAksG2enNGCLQDMhB8_ZLGRbiAlKjRW0SwZSpSk77uc27facUJS808A0xOtT_AjbURDcp95gcAVugCc2Vc7bPKmc5xvYFEygMRQAPE4HYVtvS9dPrS2EdjowGa8Pp1-cPfrZG8S6x6jJxL9_JXYKC4B2jiAomXMx4eW_VT_4OdosuWB0X2Nz01VxDtDJev4VXMT0BADr_dpHwlq2S4T8SXgqMD7USHxxQ8pLIe9fndoTbCR7GIIumfrviMSsLpgC2vc-2iKSzBQYJaNkReUzssqwjFoYmpRIEbGQbGC3g&h=UP7k1JG5qJN4XncRqJ-0K4jCMBqbpuYQOSd0RL39KiE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 141586DF508E4964A4EE6D27CE8D415B Ref B: MAA201060515033 Ref C: 2025-01-08T08:09:20Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.136843333s
+ - 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:
+ - "45"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719205782677562&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=iunXc4R52rJClDMdeCBZhifv8H6NIjeniaRHknwfieyyRQ36r1kgdawVd1fNswJQluYdzX3FAfR0cmwaS7rdtk9Yg5UV8lVrDwkYq97Z64SdJoGSV6YsGPxZtcQFXhgn_RB4MvCBkouPfXFKMZz08fgJMEZDQIHj4_szKF_KyhaWG3vi6RF5XTPva_jooRcx8pNRjVQpyNl-3z4GxI9wE_qLV903o9YC6d_bSvgcY1f8jVsZXYI_bmzTXKyIOQCLBIUzliNII28BKaMZlXCpkpASs9Y_LwR5ZdqKa-WBoxeURsvp5SS1wqmjSuJ6O2PfvSmvhbQIU_yhsRrKZVG1UQ&h=HDqWP-K694doVOmT2W7ejPVIzaVthUh8efVyVI1R5PA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: FBEBC1901CCA41BDAC99E1FADA937BDE Ref B: MAA201060515033 Ref C: 2025-01-08T08:09:37Z'
+ status: 202 Accepted
+ code: 202
+ duration: 463.040667ms
+ - 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:
+ - "46"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719205948754615&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Ww5obxwnuIIENMj77MJvyrnRUPmIepjrCT-TTMS8tS9h0EKXkfbFtkGhNHlpVhdggOZf5ILL3213huUlyKrOvbF4rC8WFG6i2wCRzLRird4UczoL71NIWXP5M8VpGkzQmFkkjKlJYHrwgNcy0j_V4nhKcwSEwOCVQr44gcgtdUsm4h2t5ZO3W5GZoMeshLtCEKHVe9mvrHa5t44jHWQFhYTLJ3S6Synqv5rbeJXl4M0w-H7wQXYbzea4ymvXnVt1r4f4Y_FKLEawnfLfvlx6lG1tcQ3Ek4Yww6pGXwnLNMI-WxcQn3a7igjKHrmNS3HZAqntIKwmeyymgH9UUOZfsQ&h=m5nKh6z64YQu-8Q1iYfSA3ISMddNKKnTuqxQzYbdcoE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9E9AF3EAE6CD42F29D4DB34E28112065 Ref B: MAA201060515033 Ref C: 2025-01-08T08:09:53Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.130527708s
+ - 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:
+ - "47"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719206121099571&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=w1dk-RkCE_IXgeWS_CZjUWleATL2mBcTzxHtsRr0cZdipyELMGzWCewAeAO-KIHQSgYTm6Hq1akOmCA4GiZQvNwaqJxSH3VFfNTe2Ue_-k9bgcptYCdjoDfT6pidwMB_qW3Xa713vsUlZrjJF2-WhYTRLFQVH40eLsdL1Cqlvp3oUGg-Kk8l7x3W6d2XNzgNQz8qfGqNpndD-ju5PbK7I5jjHIutVFHGN74KztQnkLZmh4f5DqxTehmUysrl2T1SWh3AB5aA8FpGBMQhAJMdxsRwm6QQ740B8sZ6HXiNxcg3dobz-2YK-6cQhFw3LGxEsD3EUzTEiYbUfHz_kbNnGQ&h=DVa_VT7Kia8i1HtlVQhe-aYqWL54QKoGIFktTPkksC4
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 701689F7D79A4686AEACEE086DDD86F2 Ref B: MAA201060515033 Ref C: 2025-01-08T08:10:11Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.106474792s
+ - 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:
+ - "48"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719206293438812&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=oKEKrMnCkDMj9m2MbUbmt70cS2CW_idnW3A_-tY01o4dZBEfKVrZTQIHJc5Mr9_E6IsnDlhvK0s0lhBaChqUsMIUpRIdGTgFe-aMkwwFioUP3e1enjORj36MZlkl9C4zx5hLuoyTAZlYLYoxR8ymEHRKeksfEE_ZDjW1vk45bPCjcorCjop0JpnMkhUEAiQU3l2a_Q_4x5NXinHZSEfMwWk_zsJxrOgY5NT5zHFTnyIVVsc0Ptetv4XcQ0jvvEBACkMQ6j-g3lKYqngm12-DzthRigfw7syHZbmXDtMqXlg0V6dhbzowTbqnpfP02sMY6Vv8klmN_T2_MsCKd1m7kQ&h=2YOZGeLFPDne-s6rkXdLMOWonVP3OGddycE3ji0Sjh0
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 645DCDC9C5774454AC36A2C24F60B3BB Ref B: MAA201060515033 Ref C: 2025-01-08T08:10:28Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.098741334s
+ - 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:
+ Test-Request-Attempt:
+ - "49"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719206466411206&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Pvau3U6N2s06tY_d23wediZnuVF8zpSoYtxT0GJOVuNnZ_-_lLri3JArhjXLVZVEOW2Y6RcnTjOeaG0PvSZOWTUL_m3v-YaUKNyma8TzKrR_X3_6eUZs04MjboFsnhSIFGKyOcV4S1Zo4z1Gn3Na2oqyz6GLhZJye_bldcD280cBqDw33Vlpt04BxJAjqKMgnDfzIZA1KqpZuLNzduQVC9_gaBtHa2Q49Fag1DeYFsLfAArkwjDLZL-NnIc_kishwMe4Olcm4rJDOlf7Zj6J9gfg28M4CFsZS88eQEanNw-3VVEYgUc32sDUXwxvxiLgurP3quVxCmiiZEOHU_r_tg&h=hnAfHXq8Xl_V8rLSKLZZKJJGKOkPb0ANwmO1AtcvTSA
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: C0AEF1DB457444B59751D2D855C78C89 Ref B: MAA201060515033 Ref C: 2025-01-08T08:10:45Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.14161525s
+ - 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:
+ Test-Request-Attempt:
+ - "50"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719206639975391&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Am5TVTkjkMmnSdS5RyzyPAdQ7_JAQZcJKoB1jIAZ5op4tXRLPc2knnagY43dhf1QWWiBw8kDeCNT2rkQIzKO1dOBQsSnPoYqVqQGeUuoWR76m9kaNl0-5GX1qn8RavJ9Rovrfgu2YOzQpjfSKX_yGr4N4uXvfxf0uaSb-Cxwzm3xVPfLAw6wS2AqCn3fK640K7X7D90L2FeIog7f1UZ2tpamwbI8sTNmq_xihzGEqWLL5dMsP4yIpvVDNLzgrcgVNecApbJdKwdwX16_Pc7VM6BVzsmR_zdGm_M4Ks1b3AYKLCVg41jFQpUsLpFrOIPnhzyFNrbxQBwezqmmy6eTig&h=vTzq0F5or68pLDX21Rd23FNsUsNQpu6EKO0uAKJMJac
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 91671189D94E412E9AD565690BD8D6AB Ref B: MAA201060515033 Ref C: 2025-01-08T08:11:02Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.203707833s
+ - 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:
+ Test-Request-Attempt:
+ - "51"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719206813663240&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=CltctCNNYuPFxNMhexfEh2RvQTl56qniEllWd2w_lvrcCnYaqZTNsNb__2pXdxwn4Z3QtM6cZns9HEki4nYWVsqi4QtoxfHJLP87txlPghvXaXvA2JhpYmioKcJfHgY8BQXLr-kVh5Z90wJhCLCHM0RjT5LtVpkZDfVS2XGPGGjKYZSphafC6ufFn_VNqfwl5l-vH_vQe4cyuigPmK2MnNj-csrDO_gDxgwtcwgA2sG1lj7LrkYYpgS8JQEt4w5ZlvYMp7NFOp0IDSuAamA4yhx-O0uhy5PWS5EwpKmxGn5SHjCTkdlbRbQ7e4XxpHLtklciLEX8pU0PYdvXIrvlEg&h=AvEOrwKJ9Ee6pzTXFK0_yD51_UVuRQ7oUtg74osCN14
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: B7753112F29B40B4A16BAD664D638237 Ref B: MAA201060515033 Ref C: 2025-01-08T08:11:20Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.184359875s
+ - 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:
+ Test-Request-Attempt:
+ - "52"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719206987516385&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=Unx3-I1x3eeWj58Iz3LtxC4fPd1K7OT1hOCuSJgDCf92v2KaX8EtOjivZ9LKnHA4F_CVCjKCXoTCv-a1MQzwiAHlO9hZnKTPBbDK0HomgfX7llmCE_oHD9wlNsTwYYCKki7sRO6GdQa-jgE_6892yj0C-CtUF22_9httcv-SEjcJX9It7FLbPlyK-9OxW0wvhdSPaBiY5P6URVrPnPYRV058YL_PFV8fTr18lHw8kUS_B3i3xHSOSKnw7vOze0ddS_4F3VI5QPo6hIHZlp6Nm_kMsLOtTlEpc6xV6N-JIXy_25_EdVRGFl0xh0bG4izCIxL_lDfGUlXKaILALfp9nw&h=OwzJzPMRQVJKPcfIRvoJXeYrrLRMjNbRu7Ui0WtQF7w
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 0D453D87F5BD4EC5A7E73314035A8D1F Ref B: MAA201060515033 Ref C: 2025-01-08T08:11:37Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.090041458s
+ - 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:
+ Test-Request-Attempt:
+ - "53"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719207153192823&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=LSzux0sUgzql1Sck3IXUgyKgyZHB-hgRJomdaUcMoVOXmranCCxZk5clk2ZhyRwkyNb7k0JWNHA53_kpKxX_ZYP3EoIyCj6VJyU3BO-aXg6GbZm4Exw0qVoX3s-fMrQTw331ySdJfk9ZQ9NENcGoawaFQ7V-ZtTJnrstSjOZGxPUXTmdvLtv6tvSb6Xg9j7RMTnIY37ixhflOKh3kkkZuKchzQ9ogYw9nsC7iz-XKBz3uDCVyI3X3ZPUrJm776EKYRNSF782py-yx489KiKjSYEgkfjRONBkI6IVvxtILxeza7VYSJ3enp0e0LnjzhNCXYgCAdeSC_PbhFPZWxdTzg&h=AjX6pTEWeZJrgfxvEjE7TS_zGmk4k-17hBzc3kTIUro
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 66516486D53A477BA37CCEB762A49DC8 Ref B: MAA201060515033 Ref C: 2025-01-08T08:11:54Z'
+ status: 202 Accepted
+ code: 202
+ duration: 481.846417ms
+ - id: 112
+ 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:
+ - "54"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719207313611085&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=FysRsnZQwNBF2n1ortfjn9TpjKIbhZVOtgLd8NhlMx4AW0FguNFR56V0z1JOXdUUpnSOiT0wsoJou36k8yr3rfGH1nK0V4KoNaEo9kSOtA3nWUJGsFAADjZmPQnnOahS3-fqqchFZOnO3sFOJ9P_RwwXB8ZizM-mZxrJx49w1hj6kH8XQUp_v_Z53fk3AJusbzbeOnsks5IIRb0QHBeJE-V-ifgDOpMW_hl2UnVzQjfrvupETtNGQxlfTspRri7MrryOq8Oi1c8AA2roF69NrZ2aXds1xFJ-QTRU8PeDmnpfYW1wWaoySGaSKSCEFJKm-J1WhhYjdnmTCsueeOqQjw&h=bXna8QdSdEMgx52DneOLisz5efRfCU-b3oH0n7Y8nuw
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: DDC430849C0C4FCD882946F4B6B83DA3 Ref B: MAA201060515033 Ref C: 2025-01-08T08:12:10Z'
+ status: 202 Accepted
+ code: 202
+ duration: 623.173167ms
+ - id: 113
+ 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:
+ - "55"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719207475993087&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=pXwG3xDiKtnMAtpRcLtoJerMXw9sR9rTIfnAcpWV6BqZ77HPbC_kGaaLNlfY-ilK7Iok6yXJNklt0gzt4_6P-_4Qz7QtEEMX1aUUZFOGFEaWBk3x_E1sF2yKAt1VyqMUbygjK5Nc-3UDWdTIWHoY7tUiHkhGXv_WC2kctelZXupuILc_G8lZxo223Z12SqkMhUaeMe8V-DrW670kqM-EruyHAqv5aMkvYE3Ksiz2E08B30LoGxPFu0x3ZIDZsCdbTCY6eTIxC_34egVkfdgGmmDGLqgAViRUw5dNvhS_chwB0k4vTFWKymjwYHpVuFwgQ-xZ2H7TtJr8hz6PTNnR8A&h=oQjbIb01BVItniyXMfCRvlGtBuAQQVZg5xY-irnDmvM
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: DC1A5582291C4E42B355BEBB24A870E4 Ref B: MAA201060515033 Ref C: 2025-01-08T08:12:27Z'
+ status: 202 Accepted
+ code: 202
+ duration: 485.014958ms
+ - id: 114
+ 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:
+ - "56"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719207635954907&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=fxMaN4u9T1wJQtbc_3IjMfQBtgkCRc84nt5ttZTpWoECzckgfIudeLoLYsn4aDTCQ1f6tylrnXVDLg3RsOf0Kba8myQTUYFw5TyURX4WIRCz1KuOykpRKgklSsbyezs2WBa9gWlSjRsCj1QEAE5zuzOn7ge0PWkFQlNxm_2WgqUUF97ur3UsVfI-EK3k8m3krTaGLGyUp4edh2YpFokuxC-6ZTvSyE86bkeX2ntvYOigU3FjWgahm8hsrJ4P-rOGd3TBuKAvDHoTbUIhVYNoRfw3_Yg5NGdG0byLKH4OqJZkutsA_kQvblioHPWupJkJDRBZ4pb6C3mw3ydROl5AHg&h=vK2jBZZMIncN4YQ2ms3cHdDgjQW24Pl5f0A_5NvKZDQ
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 6A91577F81854BAC99A0C0922666FB8E Ref B: MAA201060515033 Ref C: 2025-01-08T08:12:43Z'
+ status: 202 Accepted
+ code: 202
+ duration: 574.57325ms
+ - id: 115
+ 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:
+ - "57"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719207803605178&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=k0IhN8RsEwNbY7I5GsMFKpSYfKJa_9I7mBpvkBYGsVdjcyOMqZYwRRC0q9bZR9FKfFZaG7RyjsDD8hs_na8gsXfcg02oYnd5PPzBFfWEI9CaM9R1luPxs21t4pjQAqxLoyCFso-4XO5lipoaeMnKzCSa5wgFPjret3-JyHMDGSRnt3x5QB4C4tNczAIugoi48pyJAdj4PnaJ4cm53sxFv0JT-qA_qdi-9P1L0ODtzLIPr7QL-OVQcgoiG9L5xxwZlFVRpDmI0Suwugoh86BOOsp9ewWiVctCK1oisbxdIRaeGpNXQpJNbJnd-74ohxwyKX594kndGVXJhhVVhq3xXA&h=VeTmQKTEu7B-rYpv62cpYgxF7nBvD6HniGmnwh46Q34
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: CEBE0904C0E64ACA8665C882EB948187 Ref B: MAA201060515033 Ref C: 2025-01-08T08:12:59Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.126391709s
+ - id: 116
+ 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:
+ - "58"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719207976730207&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sXwtdCz5Y8p6a7bEIwvGH2fl4AW9FSsox_Le8HTf6R5aQQ1Srbe7cLwob5HldHURWc8NZ9MWNOhNR6Y6MpTkzJenz-69J5HTPjHpBqnxPNrDUpvPyCyG8irNVPq74k-DGLTRcbEfqCYDUl9XSOau_Kj2kpEoEcVhazyneEP2qulFCceMkYHv-5ijnZHvijrrVMrOTamHLc-bBSu_0dz3nxJXkwnjMAbTsLU4_yAoDfcaDqu-Zt0MduWJc3-v67cLl2qHF_pEZqojsZNransKUeWk1Eqls-ChWKakrgWx_zc1Ng_GtkDAD81P2oEX0rvWO0tBsRYV9kjo-730we0jnQ&h=68eTp9yfaDJY2tZc1SDOojfyUi94eKWu62-gLRvl69Y
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 1554630116074FBAA0FBEC5F246E034A Ref B: MAA201060515033 Ref C: 2025-01-08T08:13:16Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.10615025s
+ - id: 117
+ 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:
+ - "59"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719208142836739&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=YgsUXYsdFHtqED7ufLahOZyH4OINTur85sWrqpAtEkAkde6Gj2de1khOVtElEYJkzW_5YScsxnAoGE8fLqDXNtFVfpm46rEJkQlwSlwmK1c0WiyjWiDp7mvov9ZvIhdXwgKxUJF7dYeDetN7m35Ko_hxFu71eC2CvCcByiG1XmCcNRRblXMQxKhWrMrtBGYUtmQ7hCaH3xueL_OX9yPQ8O7tJvuqHt6uP0A5I3QY-ghv0VCMSPms-PhAhebVa64vq8tEfMai_tOdzkT-PDh0upSrPR3Nre9r9moE82a8PpvTl3Mrl0O0OzbI-_uTk-iNorfRCt48U22Wuga2-nPtQA&h=ssSsyGYArZelNdHae8Cs61pKlqxvsNADP9uSQVyWsSE
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: A224FDA2BAA746B1879D8D9717256EB4 Ref B: MAA201060515033 Ref C: 2025-01-08T08:13:33Z'
+ status: 202 Accepted
+ code: 202
+ duration: 461.030666ms
+ - id: 118
+ 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:
+ - "60"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719208309435403&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=sAstfgOPhtCEVpf9BBcZPZqA0cEdYAMnuioRPSNidMlvuH_o3M27RkMWGrFenxeR7VvLzFaazORdYNio5SJ_XRvMMlkkDhShHeLS-c06aV3LTBKsZ-dDPAXnT5F1STG4oJ11Pq2PY7j4bmexNW2U-lX0UsMkEJ2TRxGR_6sLiqZrzPK6qwr2AW9zWjgzyQwnWZW5yBNQn5NoS7lNJqQ2RYy6e03HjjLWLusfpXAnpEgd8y5woUAbXTPIz7Mj0J_WMN_ayYOq_FotwrKvuhfBDofYTQ75LaEIRYuc_PjcfMqDVcDsIjUk9kPFIb2LoWWABAXz8YzQe85la6jcJbbBtA&h=BUblBN1xGIr6v23rHmquajD0kVpI8SDDM60I1tRt6wo
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 363C67EDC44D44609B82EBE96E98F048 Ref B: MAA201060515033 Ref C: 2025-01-08T08:13:49Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.185555333s
+ - id: 119
+ 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:
+ - "61"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719208482310998&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=ZL-revctMrGFW5IUqBK40kP6B_Q-lzARKTI0nfBk0of_ctt0kBx2pHaRvgA_Mx6yY7YkmpgheXSaP3cQTAdv1cv_TOejYNyAJrXcKgRw41oDm7mbEJfIU5zVWyYjEfRYq_a7PF7w9G96G3wIQo3cIOJ2k7DAGxsjeQaVPXaSxxedeOuXIO7kegE2naWlJvInYJmpvLN875TMG3NVjX-da8kogl2LTrMJQPc7inqRrPoXwI7TJZNKk6wuxPTEPYb2iFoGEdaoS_qlaDJEX5NqBSL2rDPZVEtEp-HNmqxtUdUFeXP3fTID7pWXPWn4KNDGoPOb7VoAV5gCAAhco9hNdA&h=W0YodQ90IL26JUtDda2SkVPbqisACqKzKdTeB28xut8
+ Pragma:
+ - no-cache
+ Retry-After:
+ - "15"
+ Strict-Transport-Security:
+ - max-age=31536000; includeSubDomains
+ X-Cache:
+ - CONFIG_NOCACHE
+ X-Content-Type-Options:
+ - nosniff
+ X-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: 9CC7CE98EC314D998DEFBB9376083F49 Ref B: MAA201060515033 Ref C: 2025-01-08T08:14:07Z'
+ status: 202 Accepted
+ code: 202
+ duration: 1.07629775s
+ - id: 120
+ 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:
+ - "62"
+ url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMV0dOWVMtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638719197758990857&c=MIIHhzCCBm-gAwIBAgITfAWKQyvXag-zjrQDfwAABYpDKzANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjQwOTI0MDE0MzE0WhcNMjUwMzIzMDE0MzE0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANDwk3_kcyceqIl7dgtMLkPtJd0Dkb9mue4uwDFpqUeJaLV0ILbYclblqNCzMKtUostgBu5GVS8MBzN_L23IehFdX5s2G8MFBRyoCv31VkR6xTNcprlL3ApSlAkYLNKWQvNzETl23UISuvkG7qeDh6Bx2DFiOd37MurICLjYCCvXbYPN5hdGA_IniW-OEEwq2bSF3s80KjkyMJcA0SyUADASZFM9vhy05mEs6DRa8avMylzn8ybLp7xnm21jaUxNBKPMilAwIeUIvOpmwW_VU86n3T5Yj-2dJ2D2naHhWtci5pE7z8BGdasl5V1hoQdHsniY-G90XE0Qm6AYpDp7IU0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBTnD50c9EnBJkrJcBrQ8YxbiYx5ADAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwEwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAUCr0q5wDvmcQmw5la8KMFO7bmmYkEp0jdFoaVgTEKWWk_VmL05UBKDAZNZ1Tect9BahkSSPDLo4PiHocbvdJN0bZ91V_GN9LHUKdy8-oXa6ai_B8HLcUhvpHXnmW8opONEs6mzT0wc1DFAglsuujyzZSFqif-9ARhhAlepT0oH4PAr96rZ0fPR6vkMTKAmprNFJQZbSgiz44FcxGBEctsuaEUxAp_AwQYTICmJQAQPbuoB3tZdUFJXogQBY47e7ZeTDWJ5GiWHKp2xbyASebOD4XFr6SpdmHmwddtWFB3zlcnLZnA32HeK6NpHRe6nMRkzBs1vxE6CdzR8HAcLEOE&s=AMk_WLlebcKAFzXz9LHvXO1TGj24-jZ4CfrD1IG0XXJwgGW5HEB7b_crF37fFhuVo9aYLX9bW3l8i95BGFWCKUUaSi66CwkEjZ2N_0ufubkHzHCTwv666i4FgdIfiP-mYQI4hN3VRDf49Y4Ju94oikadHNfb2otLGw3quvOL3Dmz3JUJlh37RXpuASfExQNJbPiT7_aF__BiWGBgI3Rq173WbfJRgV5Yac0wvIjF3xaNYSwrLkCcRPWF8zj6yp_29DfSqYGOH7PjkKTyPAnUNhKa0K3b1GVd-saRwNp2Xgqsv1vRuMJHVoTDwQ5lPUIYW4uWT2vPA-IccPW4XurF_g&h=PRAJziV_5RrFvpg9rWLPFkJ4fgwgP_V6Z5CPpIBJXeY
+ 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-Ms-Ratelimit-Remaining-Subscription-Global-Reads:
+ - "16499"
+ X-Msedge-Ref:
+ - 'Ref A: EB76805CEA33469EBD57C4C00FDAC771 Ref B: MAA201060515033 Ref C: 2025-01-08T08:14:24Z'
+ status: 200 OK
+ code: 200
+ duration: 1.346726416s
+ - id: 121
+ 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-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-managedenv?api-version=2024-03-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-lwgnys'' 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: 243C8A205B824F36B40C51039A255691 Ref B: MAA201060515033 Ref C: 2025-01-08T08:14:30Z'
+ status: 404 Not Found
+ code: 404
+ duration: 600.89525ms
+ - id: 122
+ 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-lwgnys/providers/Microsoft.App/managedEnvironments/aso-sample-env?api-version=2024-03-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-lwgnys'' 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: 77E161B2BE134579A7025AB08B389215 Ref B: MAA201060515033 Ref C: 2025-01-08T08:14:30Z'
+ status: 404 Not Found
+ code: 404
+ duration: 882.632209ms
+ - id: 123
+ 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-lwgnys/providers/Microsoft.App/jobs/aso-sample-job?api-version=2024-03-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-lwgnys'' 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: B3271B0F159C4B35ACAC8FB21D62DBD3 Ref B: MAA201060515033 Ref C: 2025-01-08T08:14:30Z'
+ status: 404 Not Found
+ code: 404
+ duration: 888.7205ms
+ - id: 124
+ 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-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app?api-version=2024-03-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-lwgnys'' 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: DD48BF5B0F1C412F9024696687F1F16D Ref B: MAA201060515033 Ref C: 2025-01-08T08:14:30Z'
+ status: 404 Not Found
+ code: 404
+ duration: 897.037666ms
+ - id: 125
+ 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-lwgnys/providers/Microsoft.App/containerApps/aso-sample-app/authConfigs/current?api-version=2024-03-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-lwgnys'' 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: 7F009D8633AB44A3AFA202D0C90E19A0 Ref B: MAA201060515033 Ref C: 2025-01-08T08:14:36Z'
+ status: 404 Not Found
+ code: 404
+ duration: 105.658458ms
diff --git a/v2/internal/controllers/samples_test.go b/v2/internal/controllers/samples_test.go
index 7033921819b..fc7b616dcac 100644
--- a/v2/internal/controllers/samples_test.go
+++ b/v2/internal/controllers/samples_test.go
@@ -48,6 +48,7 @@ var randomNameExclusions = []string{
"/insights/",
"/network/",
"/web/",
+ "/app/",
}
func Test_Samples_CreationAndDeletion(t *testing.T) {
diff --git a/v2/samples/app/v1api20240301/refs/v1api20240301_managedenvironment.yaml b/v2/samples/app/v1api20240301/refs/v1api20240301_managedenvironment.yaml
new file mode 100644
index 00000000000..e745f5490c3
--- /dev/null
+++ b/v2/samples/app/v1api20240301/refs/v1api20240301_managedenvironment.yaml
@@ -0,0 +1,14 @@
+apiVersion: app.azure.com/v1api20240301
+kind: ManagedEnvironment
+metadata:
+ name: aso-sample-managedenv
+ namespace: default
+spec:
+ location: westus2
+ owner:
+ name: aso-sample-rg
+ workloadProfiles:
+ - maximumCount: 2
+ minimumCount: 1
+ name: profile1
+ workloadProfileType: D4
\ No newline at end of file
diff --git a/v2/samples/app/v1api20240301/v1api20240301_authconfig.yaml b/v2/samples/app/v1api20240301/v1api20240301_authconfig.yaml
new file mode 100644
index 00000000000..b39e3721493
--- /dev/null
+++ b/v2/samples/app/v1api20240301/v1api20240301_authconfig.yaml
@@ -0,0 +1,10 @@
+apiVersion: app.azure.com/v1api20240301
+kind: AuthConfig
+metadata:
+ name: current
+ namespace: default
+spec:
+ httpSettings:
+ requireHttps: true
+ owner:
+ name: aso-sample-app
diff --git a/v2/samples/app/v1api20240301/v1api20240301_containerapp.yaml b/v2/samples/app/v1api20240301/v1api20240301_containerapp.yaml
new file mode 100644
index 00000000000..a7fa7b46270
--- /dev/null
+++ b/v2/samples/app/v1api20240301/v1api20240301_containerapp.yaml
@@ -0,0 +1,38 @@
+apiVersion: app.azure.com/v1api20240301
+kind: ContainerApp
+metadata:
+ name: aso-sample-app
+ namespace: default
+spec:
+ configuration:
+ ingress:
+ allowInsecure: false
+ targetPort: 80
+ environmentReference:
+ group: app.azure.com
+ kind: ManagedEnvironment
+ name: aso-sample-env
+ location: westus2
+ owner:
+ name: aso-sample-rg
+ template:
+ containers:
+ - image: nginx:latest
+ name: nginx
+ volumeMounts:
+ - mountPath: /usr/share/nginx/html
+ volumeName: shared
+ initContainers:
+ - args:
+ - -c
+ - echo Hello World
+ command:
+ - /bin/sh
+ image: debian:latest
+ name: debian
+ volumeMounts:
+ - mountPath: /shared
+ volumeName: shared
+ volumes:
+ - name: shared
+ storageType: EmptyDir
diff --git a/v2/samples/app/v1api20240301/v1api20240301_job.yaml b/v2/samples/app/v1api20240301/v1api20240301_job.yaml
new file mode 100644
index 00000000000..34ed533a1e0
--- /dev/null
+++ b/v2/samples/app/v1api20240301/v1api20240301_job.yaml
@@ -0,0 +1,24 @@
+apiVersion: app.azure.com/v1api20240301
+kind: Job
+metadata:
+ name: aso-sample-job
+ namespace: default
+spec:
+ configuration:
+ manualTriggerConfig:
+ parallelism: 1
+ replicaCompletionCount: 1
+ replicaRetryLimit: 10
+ replicaTimeout: 10
+ triggerType: Manual
+ environmentReference:
+ group: app.azure.com
+ kind: ManagedEnvironment
+ name: aso-sample-env
+ location: westus2
+ owner:
+ name: aso-sample-rg
+ template:
+ containers:
+ - image: mcr.microsoft.com/k8se/quickstart-jobs:latest
+ name: testcontainerappsjob
diff --git a/v2/samples/app/v1api20240301/v1api20240301_managedenvironment.yaml b/v2/samples/app/v1api20240301/v1api20240301_managedenvironment.yaml
new file mode 100644
index 00000000000..1e51e167462
--- /dev/null
+++ b/v2/samples/app/v1api20240301/v1api20240301_managedenvironment.yaml
@@ -0,0 +1,14 @@
+apiVersion: app.azure.com/v1api20240301
+kind: ManagedEnvironment
+metadata:
+ name: aso-sample-env
+ namespace: default
+spec:
+ location: westus2
+ owner:
+ name: aso-sample-rg
+ workloadProfiles:
+ - maximumCount: 2
+ minimumCount: 1
+ name: profile1
+ workloadProfileType: D4